格納型XSS
攻撃者の文字列がサーバー側に保存され、以後そのページを開いた全員のHTMLに出力されて実行されるクロスサイトスクリプティング。脆弱な出力箇所(シンク)はサーバー側の出力処理にある。
- 概念URI
https://comcomponent.com/knowledge/stored-xss/
- 別名・表記
- Stored XSS / 蓄積型XSS
- 最終確認日
- 2026-08-01
- 機械可読データ
- JSON-LD
この概念が関わる関係
- 出力時エスケープは格納型XSSを防ぎます。レビュータイトルを出力する前にエスケープ処理を施せば、投稿された文字列はHTMLとして解釈されなくなり、そもそもスクリプトが実行されない。IPAが示す本問の解答例であり根本的解決 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- 入力時エスケープを格納型XSSに用いることは推奨されません。入力を受け取った時点では出力先(HTML・CSV・JSON・メール・ログ)が決まっていないため、入力時のエスケープは二重エスケープとデータ破壊を招き、XSS対策としては不適切 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- 入力文字数制限を格納型XSSに用いることは推奨されません。50字の入力文字数制限は投稿回数までは制限しなかったため、攻撃者は15回に分割投稿してHTMLをJavaScriptのコメントで読み飛ばさせ、1本のスクリプトをつないだ / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- 入力値の検証(バリデーション)を格納型XSSに用いることは推奨されません。IPAは、幅広い文字種の入力を許す仕様では入力値検証の有効性は限定的であり、この方法に頼ることは推奨されないと明記している / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- 格納型XSSはセッションクッキー窃取の原因になることがあります。cookieにHttpOnly属性が付いていなかったため、攻撃スクリプトはdocument.cookieでセッションIDを読み取れた / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- 格納型XSSはアカウント乗っ取りの原因になることがあります。取得したセッションIDを使えば、ページVにアクセスした会員になりすましてWebアプリQの機能(クレジットカード情報の登録ページを含む)を使える / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- CSRFトークンを格納型XSSに用いることは推奨されません。攻撃スクリプトは被害者と同じオリジンで動くため、正規の画面と同じ手順でアップロード用トークンを取得できる。CSRF対策のトークンはXSSを防がない / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- CSPのscript-srcディレクティブは格納型XSSを防ぎます。script-src 'self'を指定し'unsafe-inline'を許可しない構成であれば、レビューに埋め込まれたインラインの<script>はそもそも実行されない / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- CSPのconnect-srcディレクティブを格納型XSSに用いることは推奨されません。'self'など同一オリジンを許可する一般的なconnect-src指定では、2回の通信がどちらも同一オリジン宛てのためポリシーの許可範囲に収まり、この情報持ち出しは止まらない / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- アップロードファイルの形式確認は格納型XSSを軽減します。画像ファイルの形式を中身で確認していれば、生のテキストをそのままPNGとしてアップロードする経路は止められるが、正当な画像のメタデータに文字列を忍ばせる手口は通ってしまう / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
- アップロード画像の再エンコードは格納型XSSを軽減します。アップロードされた画像を再エンコードして配信すれば、生のバイト列やメタデータ領域に隠された文字列は消えるが、ピクセルとして符号化された情報までは消せない / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
この概念を扱う記事
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。