情報処理安全確保支援士午後 事例記述令和6年 春期
午後 問3

問3 Webセキュリティ

テーマ:Webセキュリティ
左右2分割表示:左側の問題文をスクロールしながら右側の設問に解答できます

長文事例本文

図表クリックで拡大
D社は,従業員1,000名の小売業である。自社のホームページやECサイトなどのWebサイトについては,Webアプリケーションプログラム(以下,Webアプリという)に対する診断(以下,Webアプリ診断という)を専門会社のZ社に委託して実施している。Webアプリ診断は,Webサイトのリリース前だけではなく,リリース後も定期的に実施している。Z社のWebアプリ診断は,脆弱性診断ツールによるスキャンだけではなく,手動による高度な分析も行う。 〔新たなWebサイトの構築〕 D社では,新たにECサイトX(以下,サイトXという)と商品企画サイトY(以下,サイトYという)をW社が提供するクラウドサービス(以下,クラウドWという)上に構築することになった。 サイトXでは,D社が取り扱う商品をインターネットを介して会員に販売する予定である。取引は毎月10,000件ほどを見込んでいる。サイトYでは,サイトXで販売する新商品の企画・開発を顧客参加型で行う。サイトXとサイトYは,いずれもWebサーバとデータベースサーバ(以下,DBサーバという)で構成する。WebサーバについてはクラウドWの仮想Webサーバサービスを利用し,DBサーバについてはクラウドWのリレーショナルデータベースサービスを利用する。サイトXとサイトYはいずれも,コンテンツマネジメントシステム(以下,CMSという)を使って構築される。サイトXとサイトYにはいずれも,Webアプリ,HTMLによる静的コンテンツ,DBサーバに格納したデータを使った動的コンテンツなどを用意する。 D社は,V大学と新商品開発の共同研究を行っている。新商品開発の共同研究では,V大学が運用する情報交換サイト(以下,サイトPという)を利用している。サイトYは,サイトPで取り扱っている情報などを表示する。 D社は,Webサイト構築に関連するデータやドキュメントの保存場所として,クラウドWのストレージサービス(以下,ストレージWという)を利用する。 D社は,サイトX及びサイトYの設計書を作成した。設計書のうち,サイトX,サイトY及びサイトPのネットワーク構成を図1に,サーバやサービスの説明を図2に示す。
図1 サイトX,サイトY及びサイトPのネットワーク構成 拡大
図1 サイトX,サイトY及びサイトPのネットワーク構成
図2 サーバやサービスの説明 拡大
図2 サーバやサービスの説明
〔サイトX〕 サイトXには,会員用の利用者アカウントとD社管理者用の利用者アカウントがある。サイトXのログインセッション管理は,cookieパラメータのSESSIONIDで行う。SESSIONIDには,値とSecure属性だけがセットされる。なお,サーバ側のセッションの有効期間は24時間である。設計書のうち,サイトXの機能一覧を表1に示す。
表1 サイトXの機能一覧(抜粋) 拡大
表1 サイトXの機能一覧(抜粋)
サイト管理機能は,D社の内部ネットワーク以外からも利用する可能性があり,サイトXでは,接続元の制限は行わない。 サイトXとサイトYの構築は順調に進み,D社はリリース前のWebアプリ診断をZ社に委託した。Z社は,サイトXとサイトYそれぞれに対してWebアプリ診断を実施した。 〔サイトXに対するWebアプリ診断〕 サイトXに対するWebアプリ診断では,次の三つの脆弱性が検出された。 ・クロスサイトスクリプティング(以下,XSSという) ・クロスサイトリクエストフォージェリ(以下,CSRFという) ・認可制御の不備 〔XSSについて〕 Z社がXSSを検出した経緯は,次のとおりであった。 (1) 問合せ機能で,脆弱性診断ツールによるリクエストとレスポンスを確認した。このときのリクエストとレスポンスは,図3のとおりであった。
図3 問合せ機能のリクエストとレスポンス 拡大
図3 問合せ機能のリクエストとレスポンス
(2) 図3中のレスポンスボディには,問合せ機能で入力した値は出力されていない。しかし,Z社は,①設計書を調査した上で手動による分析を行い,図3中のリクエスト内のスクリプトが別の機能の画面に出力されることを確認した。 Z社は,②攻撃者がこのXSSを悪用してサイトX内の全会員の利用者情報を取得する可能性があると説明した。 〔CSRFについて〕 Z社がCSRFを検出した経緯は,次のとおりであった。 (1) 会員機能(編集)において,図4に示すリクエストを送ってその応答を確認した。リクエストは正常に処理された。
図4 会員機能(編集)のリクエスト 拡大
図4 会員機能(編集)のリクエスト
(2) リクエスト内のメッセージボディの一部を変更して送り,その応答を確認した。リクエスト内のメッセージボディと応答は表2のとおりであった。
表2 リクエスト内のメッセージボディと応答 拡大
表2 リクエスト内のメッセージボディと応答
(3) Z社は,手順1,2の応答が“エラー”であることから一定のCSRF対策ができているが,手順3の応答が“正常に処理”であることから③利用者に被害を与える可能性があると判断した。 Z社は,対策には二つの方法があることを説明した。 ・csrf_tokenの処理の修正 ・cookieへのSameSite属性の追加 サイトXの構成次第では,SameSite属性をcookieに付与することも有効な対策となり得る。SameSite属性は,Strict,Lax,Noneの三つの値のうちのいずれかを取る。サイトXにログインした利用者のWebブラウザにおいて,サイトX内で遷移する場合と外部WebサイトからサイトXに遷移する場合では,SameSite属性の値によってサイトXのcookie送信の有無が表3のように異なる。
表3 SameSite 属性の値の違いによる cookie 送信の有無 拡大
表3 SameSite 属性の値の違いによる cookie 送信の有無
〔認可制御の不備について〕 Z社が認可制御の不備を検出した経緯は,次のとおりであった。 (1) Z社は,利用者α,利用者βという二つの利用者アカウントを用いて,注文履歴を閲覧した際のリクエストを確認した。注文履歴を閲覧した際のリクエストを図5及び図6に示す。
図5 利用者αで注文履歴を閲覧した際のリクエスト 拡大
図5 利用者αで注文履歴を閲覧した際のリクエスト
図6 利用者βで注文履歴を閲覧した際のリクエスト 拡大
図6 利用者βで注文履歴を閲覧した際のリクエスト
(2) 図5のリクエストのパラメータorder-codeの値を図6中の値に改変してリクエストを送った。 (3) 利用者αが,本来は閲覧できないはずの利用者βの注文履歴を閲覧できるという攻撃が成功することを確認した。 (4) さらに,ある利用者がほかの利用者が注文した際のorder-codeを知らなくても,④ある攻撃手法を用いれば攻撃が成功することを確認した。 Z社は,⑤サイトXのWebアプリに追加すべき処理を説明した。 〔サイトYに対するWebアプリ診断〕 サイトYに対するWebアプリ診断では,次の脆弱性が検出された。 ・サーバサイドリクエストフォージェリ(以下,SSRFという) 〔SSRFについて〕 Z社がSSRFを検出した経緯は,次のとおりであった。 (1) サイトPの新着情報を取得する際に,利用者のWebブラウザがWebサーバYに送るリクエストを確認したところ,図7のとおりであった。
図7 利用者の Web ブラウザが Web サーバ Y に送るリクエスト 拡大
図7 利用者の Web ブラウザが Web サーバ Y に送るリクエスト
(2) ⑥図7のリクエストのパラメータの値をWebサーバYのCMSの管理ログイン画面のURLに変更することで,その画面にアクセスできるが,ログインはできないことを確認した。 (3) ⑦図7のリクエストのパラメータの値を別のURLに変更するという方法(以下,方法Fという)でSSRFを悪用して,クレデンシャル情報を取得し,ストレージWから情報を盗み出すことができることを確認した。 (4) IMDSにアクセスする方式を方式1から方式2に変更すると,方法Fではクレデンシャル情報を取得できないので,ストレージWから情報を盗み出すことができない。しかし,図7のリクエストのパラメータの値を変更することで,WebサーバYから送られるリクエストに任意のメソッドの指定及び任意のヘッダの追加ができる方法(以下,方法Gという)がある。方法Gを用いれば,方式2に変更しても,⑧クレデンシャル情報を取得し,ストレージWから情報を盗み出すことができることを確認した。 Z社は,クラウドW上のネットワークでのアクセス制御の設定,及び⑨サイトYのWebアプリに追加すべき処理を提案した。 リリース前の脆弱性診断で検出された脆弱性の対策が全て完了し,サイトXとサイトYは稼働を開始した。

設問一覧 & 解答・演習

まずは解答を作成してみましょう。「解答例を見る」をクリックするとIPA公式解答例と採点基準が開きます。

設問1 (1)記号・選択式
〔XSSについて〕について答えよ。
本文中の下線①について,図3中のリクエスト内のスクリプトが出力されるのはどの機能か。表1の詳細機能に対する項番を選び答えよ。
※直接入力してください
設問1 (2)記述問題
〔XSSについて〕について答えよ。
本文中の下線②について,攻撃者はどのような手順で利用者情報を取得するか。具体的に答えよ。
0 文字
設問2 (1)記述問題
〔CSRFについて〕について答えよ。
本文中の下線③について,被害を与える攻撃の手順を,具体的に答えよ。
0 文字
設問2 (2)記号・選択式
〔CSRFについて〕について答えよ。
表3中の a 〜 d に入れる適切な内容を,“○”又は“×”から選び答えよ。
※直接入力してください
設問3 (1)記述問題
制限字数:30 字以内
〔認可制御の不備について〕について答えよ。
本文中の下線④について,どのような攻撃手法を用いれば攻撃が成功するか。30字以内で答えよ。
0 / 30 文字
設問3 (2)記述問題
制限字数:60 字以内
〔認可制御の不備について〕について答えよ。
本文中の下線⑤について,サイトXのWebアプリに追加すべき処理を,60字以内で具体的に答えよ。
0 / 60 文字
設問4 (1)記述問題
制限字数:35 字以内
〔SSRFについて〕について答えよ。
本文中の下線⑥について,ログインができないのはなぜか。SSRF攻撃の特徴を基に,35字以内で答えよ。
0 / 35 文字
設問4 (2)記述問題
〔SSRFについて〕について答えよ。
本文中の下線⑦について,クレデンシャル情報を取得する方法を,具体的に答えよ。
0 文字
設問4 (3)記述問題
〔SSRFについて〕について答えよ。
本文中の下線⑧について,方法Gを用いてクレデンシャル情報を取得する方法を,具体的に答えよ。
0 文字
設問4 (4)記述問題
制限字数:35 字以内
〔SSRFについて〕について答えよ。
本文中の下線⑨について,サイトYのWebアプリに追加すべき処理を,35字以内で具体的に答えよ。
0 / 35 文字
午後長文記述の得点力を引き上げる定番対策書Amazon・楽天 公式提携
PR
うかる! 情報処理安全確保支援士 午後問題集 [第2版]
IPA 厳選対策書うかる! 情報処理安全確保支援士 午後問題集 [第2版]村山 直紀 著 / 日本経済新聞出版
午後記述バイブル
村山 直紀 著 / 日本経済新聞出版

うかる! 情報処理安全確保支援士 午後問題集 [第2版]

💡 推薦ポイント:午後試験の長文事例でどこに着目して脆弱性と対策を抜き出すか、合格答案の記述テンプレートを効率よく習得できます。
※本リンク先はプロモーション(アフィリエイト広告)が含まれています
【出題趣旨】IPA公式発表
Webサイトの脆弱性については,多くのWebサイトで対策が進んできたものの,一部のWebサイトは開発者の理解が不十分で,IPA“安全なウェブサイトの作り方”で取り上げられている脆弱性においても対策に不備が生じている場合がある。 本問では,Webサイトの脆弱性を題材として,脆弱性診断及び対策の知識と,その脆弱性に起因してどのような攻撃が行われるかを分析する能力を問う。
【採点講評】IPA公式発表
問3では,クラウド環境で構築されたWebサイトを題材に,脆弱性を悪用した攻撃手法とその対策について出題した。全体として正答率はやや低かった。 設問1(2)は,正答率が低かった。クロスサイトスクリプティング(XSS)の検出箇所から,問合せ管理機能でスクリプトを実行できるのは管理者であることが分かる。一方,サイトXの機能概要から,利用者情報を取得するには,会員管理機能を利用すればよいことが分かる。この二つをどう結びつけるかを考えて,解答してほしい。 設問2(1)は,正答率が低かった。クロスサイトリクエストフォージェリ(CSRF)の攻撃手法に関する問題であったが,攻撃者が取得したトークンを悪用する部分について解答できていない受験者が多かった。本文の状況に即して解答してほしい。 設問4(3)は,正答率がやや低かった。クレデンシャル情報を取得する方式について解答できていない受験者が多かった。方式が二つあり,その違いに即して解答してほしい。
本番形式・制限時間付きで演習する
令和6年 春期 午後(2問選択・150分)を実戦演習モードで通し解答し、総合採点を受けられます。
実戦演習を始める