HOME»情報処理安全確保支援士掲示板»令和6年春 午後第3問 設問1のXSSについて
投稿する
»[1958] 令和5年度 春 午後Ⅰ 問3 設問3 (2) 投稿数:7
»[1957] 令和7年秋 午後問題予想 投稿数:8
令和6年春 午後第3問 設問1のXSSについて [1960]
R7秋リベンジ!さん(No.1)
令和6年春 午後問題 第3問 設問1のXSS(クロスサイトスクリプティング)についてお聞きしたいです。
設問(1)では、図3中のリクエスト内のスクリプトが出力されるのは、表1の項番9(問合せ管理機能)であることは理解できました。
一方で設問(2)では「このXSSを悪用して」とありますが、このXSSは格納型、反射型、DOM型のどれに該当するのでしょうか?
有識者の方がいましたら、ご教示いただけると幸いです。
よろしくお願いします。
設問(1)では、図3中のリクエスト内のスクリプトが出力されるのは、表1の項番9(問合せ管理機能)であることは理解できました。
一方で設問(2)では「このXSSを悪用して」とありますが、このXSSは格納型、反射型、DOM型のどれに該当するのでしょうか?
有識者の方がいましたら、ご教示いただけると幸いです。
よろしくお願いします。
2025.09.26 09:22
むぐむぐさん(No.2)
★SC ブロンズマイスター
格納型XSS(Stored XSS)の問題になっています。
お問い合わせ機能では、入力されたお問い合わせ内容がデータベースに保存され、管理画面から後で確認できる仕組みになっています。
このとき、攻撃者がスクリプトを含む入力を行った場合、そのスクリプトもデータベースに保存されます。
管理画面で保存された内容を表示する際、適切なエスケープ処理がされていなければ、ブラウザ上でスクリプトが実行され、XSSが発生します。
これが格納型XSSです。
・反射型XSS(Reflected XSS)の説明
反射型XSSは、攻撃者がスクリプトを含むリクエストを送信し、その内容がレスポンスとしてそのまま返却された際に発生します。
お問い合わせを送る前に確認画面が存在するとします。
攻撃者はスクリプトを含む入力を行い確認ボタンを押下し、サーバーへ入力内容を送信します。
サーバーは入力値をそのまま使ってレスポンスを生成し、ブラウザに返します。
※この時点ではサーバー側に保存されていません。「送ったものがそのまま返ってきた」ため「反射型」と呼ばれます。
ブラウザはレスポンスを表示する際、埋め込まれたスクリプトを実行してしまい、XSSが発火します。
お問い合わせフォームに確認画面がある場合、確認画面で入力内容を表示する際にこの脆弱性が存在すると、反射型XSSが発生します。
・DOM Based XSS(DOMベースXSS)の説明
DOMベースXSSは、サーバーではなくブラウザ上で実行されるJavaScriptによるDOM操作が原因で発生するXSSです。
サーバーから返却されたレスポンスではなく、クライアント側のスクリプトが動的にHTMLを書き換える処理に脆弱性がある場合に起こります。
例として、掲示板の投稿画面にある「プレビュー機能」を考えます。
ネットワーク接続を切った状態でプレビューボタンを押しても、入力した本文がそのまま画面に表示されます。
これはブラウザ上のJavaScriptがDOM操作で画面を書き換えているためです。
もしこの処理で入力値を適切にサニタイズしていないと、本文に含まれたスクリプトがそのまま実行され、DOMベースXSSが発生します。
お問い合わせ機能では、入力されたお問い合わせ内容がデータベースに保存され、管理画面から後で確認できる仕組みになっています。
このとき、攻撃者がスクリプトを含む入力を行った場合、そのスクリプトもデータベースに保存されます。
管理画面で保存された内容を表示する際、適切なエスケープ処理がされていなければ、ブラウザ上でスクリプトが実行され、XSSが発生します。
これが格納型XSSです。
・反射型XSS(Reflected XSS)の説明
反射型XSSは、攻撃者がスクリプトを含むリクエストを送信し、その内容がレスポンスとしてそのまま返却された際に発生します。
お問い合わせを送る前に確認画面が存在するとします。
攻撃者はスクリプトを含む入力を行い確認ボタンを押下し、サーバーへ入力内容を送信します。
サーバーは入力値をそのまま使ってレスポンスを生成し、ブラウザに返します。
※この時点ではサーバー側に保存されていません。「送ったものがそのまま返ってきた」ため「反射型」と呼ばれます。
ブラウザはレスポンスを表示する際、埋め込まれたスクリプトを実行してしまい、XSSが発火します。
お問い合わせフォームに確認画面がある場合、確認画面で入力内容を表示する際にこの脆弱性が存在すると、反射型XSSが発生します。
・DOM Based XSS(DOMベースXSS)の説明
DOMベースXSSは、サーバーではなくブラウザ上で実行されるJavaScriptによるDOM操作が原因で発生するXSSです。
サーバーから返却されたレスポンスではなく、クライアント側のスクリプトが動的にHTMLを書き換える処理に脆弱性がある場合に起こります。
例として、掲示板の投稿画面にある「プレビュー機能」を考えます。
ネットワーク接続を切った状態でプレビューボタンを押しても、入力した本文がそのまま画面に表示されます。
これはブラウザ上のJavaScriptがDOM操作で画面を書き換えているためです。
もしこの処理で入力値を適切にサニタイズしていないと、本文に含まれたスクリプトがそのまま実行され、DOMベースXSSが発生します。
2025.09.26 14:42
R7秋リベンジ!さん(No.3)
むぐむぐさん
ご回答ありがとうございます!
格納型のXSSだったのですね!
格納型、反射型、DOMベース型の説明はとても分かりやすい説明で腑に落ちました。
ありがとうございました!
ご回答ありがとうございます!
格納型のXSSだったのですね!
格納型、反射型、DOMベース型の説明はとても分かりやすい説明で腑に落ちました。
ありがとうございました!
2025.09.26 17:03
むぐむぐさん(No.4)
★SC ブロンズマイスター
読み直したら、脆弱性診断時の視点で書いてしまっていましたので補足です。
実際に反射型XSSを悪用する際は、悪意のあるスクリプトを含むリクエストを被害者のブラウザからにサーバーへ送らせる必要があります。(罠サイトやURL等を利用)
悪意のあるスクリプトを被害者がサーバーへ送ってしまった結果、サーバーから悪意のあるスクリプトを含むリクエストがブラウザに返され、結果被害者のブラウザ上で攻撃者の用意したスクリプトが発火する形になります。
この時にCookie等の情報や、アクセスしたページの情報などを攻撃者に送信するスクリプトが組まれていると実際の被害に繋がります。
実際に反射型XSSを悪用する際は、悪意のあるスクリプトを含むリクエストを被害者のブラウザからにサーバーへ送らせる必要があります。(罠サイトやURL等を利用)
悪意のあるスクリプトを被害者がサーバーへ送ってしまった結果、サーバーから悪意のあるスクリプトを含むリクエストがブラウザに返され、結果被害者のブラウザ上で攻撃者の用意したスクリプトが発火する形になります。
この時にCookie等の情報や、アクセスしたページの情報などを攻撃者に送信するスクリプトが組まれていると実際の被害に繋がります。
2025.09.26 17:43
R7秋リベンジ!さん(No.5)
むぐむぐさん
補足説明ありがとうございます!
了解しました!
補足説明ありがとうございます!
了解しました!
2025.09.26 17:59
秋雨前線さん(No.6)
横から失礼します。
設問(2)のIPA解答に記載されているXSSは反射型ではないのでしょうか?
私は「このXSSを利用して」という部分はXSSという攻撃全体のことを指している認識なのですが。
設問(2)のIPA解答に記載されているXSSは反射型ではないのでしょうか?
私は「このXSSを利用して」という部分はXSSという攻撃全体のことを指している認識なのですが。
2025.09.29 09:04
秋雨前線さん(No.7)
申し訳ありません。
スレ主様は(1)のXSSがどれに該当するかのお話しだったのですね。
(2)のことだと勘違いしてしまいました。
スレ主様は(1)のXSSがどれに該当するかのお話しだったのですね。
(2)のことだと勘違いしてしまいました。
2025.09.29 09:24
その他のスレッド
»[1959] CBT化以降のテスト形式・内容の変異について 投稿数:7»[1958] 令和5年度 春 午後Ⅰ 問3 設問3 (2) 投稿数:7
»[1957] 令和7年秋 午後問題予想 投稿数:8