タグ

securityとxssに関するluccafortのブックマーク (2)

  • VueをSSRに乗せると容易にXSSを生み出す場合がある件について - Qiita

    はじめに 最近Vue.jsを頻繁に使用するのですが、他のSSR(サーバーサイドレンダリング)の仕組みと組み合わせる場合、容易にXSSを生み出してしまうケースが存在するので、注意喚起も兼ねて事例を紹介させていただきます。 9月7日 追記を追記しました 前提 サーバーサイドで動的に要素をレンダリングするシステムとVue.jsを組み合わせた場合 この記事はrailsのSSRとの組み合わせで解説しますが、プレーンなPHP等、動的にHTMLをレンダリングシステムとの組み合わせでも発生します。 サンプルコード まず、こちらのコードをご覧ください。 user.erb <div id="app"> <div class="user"> <%= @user.name %> </div> <button v-on:click="registerFavorite" data-user-id="<%= @user

    VueをSSRに乗せると容易にXSSを生み出す場合がある件について - Qiita
    luccafort
    luccafort 2017/09/05
    うまくいえないけど問題の本質がズレているような…。でもこういう危険もあるぞ!という主張は積極的に上げていくのは大賛成だ。
  • バリデーション、エスケープ、フィルタリング、サニタイズのイメージ

    バリデーション、エスケープ、フィルタリング、サニタイズの用語は分かりにくいので、イメージで説明します。 “><script>alert(‘xss’);</script> という入力文字列が、それぞれどうなるかを示します。 ※1 厳密な定義ではありません(要件や文脈により変化します) ※2 バリデーションという用語は非常に幅があります(ここの「名称補足」参照)。 ※3 サニタイズという用語は非常に幅があるで、使う場合は事前に語義を定義しましょう(参照)。

    バリデーション、エスケープ、フィルタリング、サニタイズのイメージ
    luccafort
    luccafort 2013/12/16
    開発者には不要だろうけどもそれ以外の人に説明するときにわかりやすい…のではないかという気がする。
  • 1