ハッピーメモメモ

私的備忘録

【Web】XSS

脆弱性

・発生個所

Webアプリケーション上でHTML、Javascriptを生成している箇所

・影響を受けるページ

Webアプリケーション全体

 

攻撃手法

クッキー値の盗み出し

・外部からJavascriptを注入することで、クッキーにセットされたセッションIDが読み出せる

・脆弱な検索ページの利用者が罠を閲覧すると、XSSの仕掛けにより、セッションIDが攻撃者にメールされる

 

その他Javascriptによる攻撃

XSSを悪用したワーム

・最近はAjaxの流行により、JavascriptからWebアプリケーションの様々な機能を呼び出すためのプログラム(API)が用意されているWebサイトが増加している。APIは攻撃に悪用することも可能なので、XSSJavascriptの組み合わせによる攻撃がしやすくなっている。

 

画面の書き換え

・form要素のaction属性を罠サイトのURLに変更

XSS攻撃は常にJavascriptを使うとは限らない

 

対策

必須対策(個別対策)

・HTMLの要素内容…htmlspecialchars関数によりエスケープ

・属性値…htmlspecialchars関数によりエスケープしてダブルクォートで囲む

必須対策(共通対策)

・HTTPレスポンスに文字エンコーディングを明示する

保険的対策

・X-XSS-Protection レスポンスヘッダの使用

・入力値検証

・クッキーにHttpOnly属性を付与

・TRACEメソッドの無効化

 

役立つ情報源

masatokinugawa.l0.cm

atmarkit.itmedia.co.jp

 

 

参考:

www.eg-secure.co.jp