2011年 6月 26日 はてなブックマーク -

jQueryのマイナーバージョンアップがリリースされて取り敢えずバージョンアップしましょう、みたいになる状況を想定してたんだけど1ヶ月以上経ってしまったのでブログに書きます。twitterなどでちょくちょく書いていたので知っている人は知っていると思いますが、jQueryXSSを誘発しやすい問題があります。

これは簡潔に書くと、$() 関数CSSセレクタとして動作することを意図して書かれたコードが、タグ生成として機能する問題です。前提知識としてjQueryの$()関数には複数の機能があり、$(“#id”)はCSSセレクタとして機能し、$(“<p>”)はHTMLを生成します、また$(function(){…})はDOMReadyです。$()関数がタグを生成した際に、表示中のDOMツリーに挿入されていなくても、img src=dummy onerror=… といった形式で任意のJavaScriptコードを実行することが出来ます。

そのため

  • jQueryを使っていて
  • ユーザー入力値をバリデーションせずに $()関数に渡している

全てのWebサイトjQueryを使ったライブラリにはXSS脆弱性があります。

jQueryにおけるXSSを引き起こしやすい問題について - 金利0無利息キャッシング – キャッシングできます - subtech (via atm09td)

11ヶ月前 | | 2011年 6月 26日 | このエントリーを含むはてなブックマーク