情報処理安全確保支援士 過去問解説 令和4年度春季【 午後2】
情報処理安全確保支援士試験令和4年度版です。自分の学習も兼ねて解答作成いたしました。
解説も追加しました。例年より公開が遅くなってしまいました。ご不明点や間違いあればコメント頂けると助かります。
更新履歴 | 更新日時 | 内容 |
---|---|---|
初版 | 2022/4/17 22:50 | |
第二版 | 2022/4/18 17:00 | 全体見直し 問2作成 |
第三版 | 2022/4/20 19:00 | コメント頂いた部分いくつか修正 |
最終版 | 2022/6/21 20:00 | IPA公式解答で全体見直し。修正点なし |
令和4年度春季情報処理安全確保支援士 総評
問1 | webサイトのセキュリティに関する出題 幅広い題材にはなっておりますが、題意を読み間違えなければ問題なく解答できると思います。 難易度 普通 |
問2 | SAML、OAuth2.0、OIDCといった各種認証処理に関する出題 調べながら解答してやっとでした。。認証周りは何度やっても覚えられないので、これを機にしっかり学習することにします。 難易度 難 |
- 1. 情報処理安全確保支援士 問1 Webサイトのセキュリティに関する記述
- 1.1. 設問1 [サイトB の XSS 脆弱性]について
- 1.1.1. (1)本文中の下線1における診断用リクエストの構成要素を,解答群の中から選び,記号で答えよ。
- 1.1.2. (2)本文中の下線2について,考えられる再発防止策を,35 字以内で述べよ。
- 1.2. 設問2 本文中の a , bに入れる適切な字句を答えよ。
- 1.3. 設問3 [サイトXのクリックジャッキング脆弱性]について
- 1.3.1. (1)本文中のhに入れる適切な字句を,それぞれの解答群の中から選び,記号で答えよ。
- 1.3.2. (2)本文中の i , jに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 1.4. 設問4 本文中の下線3について,図4のリクエスト中のどの値をどのような値に変更したか。45 字以内で具体的に述べよ。
- 1.5. 設問5 [サイトZのSSRF脆弱性]について
- 1.5.1. (1)表4中のkに入れる適切な字句を, 15 字以内で答えよ。
- 1.5.2. (2)本文中の下線4について,別の対策とは何か。B社で実施することが望ましい対策を,25 字以内で述べよ。
- 1.6. 設問6 [開発プロセスの見直し]について
- 1.6.1. (1)本文中の下線5について該当する脆弱性を二つ挙げ,それぞれ15字以内で答えよ。
- 1.6.2. (2)本文中の下線6について,専門技術者による脆弱性診断が長期間行われないことを避けるためには,どのような時期に実施すればよいか。改良リリースの実施に影響を与えないことを前提に,20字以内で答えよ。
- 1.6.3. (3)本文中の下線7について,専門技術者による脆弱性診断が長期間行われないことを避けるためには,開発プロセスをどのように見直せばよいか。アジャイル開発の継続を前提に,40字以内で述べよ。
- 1.6.4. (4)本文中の下線3について, CSRF脆弱性の場合では,どのような処理を行う機能が考えられるか。その処理を,55字以内で具体的に述べよ。
- 2. 情報処理安全確保支援士 問2 クラウドサービスへの移行
- 2.1. 設問1 [抜本的な対策の検討]について,(1)~(5)に答えよ
- 2.1.1. (1)本文中のaに入れる適切な字句を,5字以内で答えよ。
- 2.1.2. (2)本文中のbに入れる適切な字句を,英字5字以内で答えよ。
- 2.1.3. (3)図4中,図5中及び本文中のcに入れる適切な字句を,英字5字以内で答えよ。
- 2.1.4. (4)本文中の下線1について, Y-CDN-U-FQDN を名前解決した IP アドレスを宛先とする通信をFWで拒否した場合に閲覧できなくなるWeb サイトの範囲を,60 字以内で具体的に述べよ。
- 2.1.5. (5)本文中のdに入れる適切な字句を,20 字以内で答えよ。
- 2.2. 設問2 [SSO の現状]について, (1), (2)に答えよ。
- 2.2.1. (1)本文中の下線2について,認証サーバ側では検知することができない理由を,30 字以内で述べよ。
- 2.2.2. (2)本文中の下線3について,対策にならない理由を,35字以内で述べよ。
- 2.3. 設問3 [SaaS での SSO の実現」について, (1)~(4)に答えよ。
- 2.3.1. (1)表2中のeに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 2.3.2. (2)表2中のfに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 2.3.3. (3)表2中のgに入れる適切な字句を,5字以内で答えよ。
- 2.3.4. (4)本文中のh~jに入れる適切な数字を,それぞれ答えよ。
- 2.4. 設問4 [従業員からの要望]について, (1)~(4)に答えよ。
- 2.4.1. (1)図9中のk~mに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 2.4.2. (2)図9中のnに入れる適切な流れを解答群の中から選び,記号で答えよ。
- 2.4.3. (3)本文中のo,pに入れる適切な通信を,図9中の(1)~(10)から選び、番号で答えよ。
- 2.4.4. (4)本文中のqに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 2.5. 設問5 [企画チームからの要望]について, (1)~(4)に答えよ。
- 2.5.1. (1)図10中のr~tに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 2.5.2. (2)本文中のuに入れる適切な通信を,図10中の(1)~(8)から選び, 番号で答えよ。
- 2.5.3. (3)本文中のvに入れる適切な字句を解答群の中から選び,記号で答えよ。
- 2.5.4. (4)本文中のに入れる適切な字句を,それぞれ10字以内で答えよ。
情報処理安全確保支援士 問1 Webサイトのセキュリティに関する記述
設問1 [サイトB の XSS 脆弱性]について
(1)本文中の下線1における診断用リクエストの構成要素を,解答群の中から選び,記号で答えよ。
解答
ア
解説
変数を代入する前のHTMLはこんな感じです。
<meta ~~~ content="http~~~ ">
解答群アのリクエストラインを格納すると、下記になります。
<meta ~~~ content="http~~~/confirm"><img src=1 onerror=alert(1)><" ">
これでアラートのダイアログが表示されますね。
(2)本文中の下線2について,考えられる再発防止策を,35 字以内で述べよ。
解答
利用しているライブラリを定期的に最新のバージョンに更新する
解説
「バージョンアップできていなかった」という課題に対し、ほぼ脊髄反射で定期的にバージョンアップと判断しています。
設問2 本文中の a , bに入れる適切な字句を答えよ。
解答
設問 | 解答 |
---|---|
a | 利用者ID |
b | JSESSINOID |
解説
csrftokenがのような仕様で実装されているのかを確認します。
①「図2リクエストの内容」にはほかの利用者の利用時には別の値が発行されることが記載されています。
②[サイトXのCSRF脆弱性]の(1)(2)では、異なるアカウントで正規のcsrftokenが利用できたことを確認しております。
この2つの結果から、「csrftokenは利用者ごとに発行しているが、それぞれのcsrftokenがどの利用者に紐付いているかは判定していない」ことがわかります。
設問3 [サイトXのクリックジャッキング脆弱性]について
(1)本文中のhに入れる適切な字句を,それぞれの解答群の中から選び,記号で答えよ。
解答
設問 | 解答 |
---|---|
c | イ |
d | ア |
e | ア |
f | ア |
g | イ |
h | イ |
解説
絵を描きながら考えた方が正確に理解できると思います。
クリックジャッキングは、ユーザに正規の画面を意識させず操作させることが目的です。上記の図を見て頂くと解答が導けると思います。
「ここをクリックして」の部分について、ユーザには見えていませんが利用者制限公開設定の制限なしが設定されます。
そのまま「次にここをクリック」の部分を押下すると、更新ボタンがクリックされ設定の変更が完了してしまいます。
(2)本文中の i , jに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
設問 | 解説 |
---|---|
i | エ |
j | イ |
解説
安全なウェブサイトの作り方 - 1.9 クリックジャッキング
上記IPAのサイトでは「X-Frame-Options」が推奨されていますが、標準化されているのは「Content-Security-Policy」のようです。
しらんがな!
設問4 本文中の下線3について,図4のリクエスト中のどの値をどのような値に変更したか。45 字以内で具体的に述べよ。
解答
topicパラメータのURLをDBサーバのURLに変更する
(2022/4/20更新)
topicパラメータのURLをhttps://db-y.b-sha.co.jp/に変更する
解説
問題文からすると、サイトYではtopicパラメータで送付されたURLに対してcurlコマンドでトピックを表示していると推測できます。
そこで、リクエスト中のパラメータを変更することで「WEBサーバから外部からアクセスできないDBサーバに向けてコマンドを投げる」ことができてしまいます。
「具体的に」に対する回答がこれでよいかは自信なしです。
(追記)
表2 B社のWEBサイト概要の補足にメンテナンス用WebインタフェースのURLが記載されていました。こちらが解答ですね。見落としていました。
設問5 [サイトZのSSRF脆弱性]について
(1)表4中のkに入れる適切な字句を, 15 字以内で答えよ。
解答
V氏が用意したサイトのFQDN
解説
P社宿泊サイトが301のコードをレスポンスしてくるときには、returnURLに指定されたURLが設定されていますがホスト名はHostヘッダの値が使われます。
設問のケースではHostヘッダに設定されているのはV氏が用意したサイトのFQDNです。
(2)本文中の下線4について,別の対策とは何か。B社で実施することが望ましい対策を,25 字以内で述べよ。
解答
returnURLのホスト名を固定値に変更する
解説
(1)に関連する設問です。returnURLのホスト名をHostヘッダから参照していることがSSRF脆弱性の原因になっています。
よってホスト名の参照先を変更することも対策の一つになります。
設問6 [開発プロセスの見直し]について
(1)本文中の下線5について該当する脆弱性を二つ挙げ,それぞれ15字以内で答えよ。
解答
- XSS脆弱性
- SSRF脆弱性
見直した結果、下記の方が正しいかも
- セッション管理による脆弱性
- 認可、アクセス制御の脆弱性
解説
恐らくB社のサイトに対する脆弱性診断から見つかった脆弱性のうち、ツール検査では発見できないものを挙げる問題(だと思う)
表3に記載された脆弱性のうち、クリックジャッキングはレスポンスヘッダを見れば対策されているかが分かるので、一定のルールに従うツール検査で検出することができます。
(2022/4/20 追記)
設問に「具体的に」という記載もないので、深く考えず国語の問題かも。
表1に記載されているツール検査の対象では下記2点は対象外として明示されています。
- セッション管理による脆弱性(一部)
- 認可、アクセス制御の脆弱性
これらは専門技術者による脆弱性試験では対象とされているので、この2点が解答かもしれません。
(2)本文中の下線6について,専門技術者による脆弱性診断が長期間行われないことを避けるためには,どのような時期に実施すればよいか。改良リリースの実施に影響を与えないことを前提に,20字以内で答えよ。
解答
1か月の休止期間中に脆弱性診断を実施する
解説
リリースのスケジュールに影響を与えないためには、開発以外の期間に脆弱性診断を実施する必要があります。開発に関連しない期間は1か月の休止期間だけですので、この期間に脆弱性診断を実施します。
(3)本文中の下線7について,専門技術者による脆弱性診断が長期間行われないことを避けるためには,開発プロセスをどのように見直せばよいか。アジャイル開発の継続を前提に,40字以内で述べよ。
解答
専門技術者による脆弱性診断によって発見された脆弱性は次の改良リリースの対象とする
解説
(4)本文中の下線3について, CSRF脆弱性の場合では,どのような処理を行う機能が考えられるか。その処理を,55字以内で具体的に述べよ。
解答
ページアクセスのたびにCSRFトークンを生成し、リクエストのたびにトークンを検証する
解説
サイトXのCSRFトークンは使いまわしができていることから、利用者に対して付与していることがわかります。(利用者の情報と紐付いていないことが脆弱性に繋がっているのは設問2の内容)
一般的なフレームワークはページ生成のたびにCSRFトークンを生成しているため、これを知っていれば解答ができます。
情報処理安全確保支援士 問2 クラウドサービスへの移行
設問1 [抜本的な対策の検討]について,(1)~(5)に答えよ
(1)本文中のaに入れる適切な字句を,5字以内で答えよ。
解答
エッジ
(公式解答はキャッシュでした)
解説
キャッシュサーバの方が正解説もありますが、個人的にはエッジサーバかなと思います。
IPAの資料にエッジサーバという単語は出てきていますね。
(2)本文中のbに入れる適切な字句を,英字5字以内で答えよ。
解答
DDOS
解説
エッジサーバときたらDDOS対策
(3)図4中,図5中及び本文中のcに入れる適切な字句を,英字5字以内で答えよ。
解答
host
解説
知らなかったのですが、ドメインフロンティング攻撃にはSNIヘッダなるものが悪用されるらしい。勉強になります。
SNIヘッダはTLSのヘッダでした。HTTPヘッダはhostが正解です。これでドメインフロンティング攻撃が成功します。
(4)本文中の下線1について, Y-CDN-U-FQDN を名前解決した IP アドレスを宛先とする通信をFWで拒否した場合に閲覧できなくなるWeb サイトの範囲を,60 字以内で具体的に述べよ。
解答
CDN-Uを利用しているY社のwebサイトすべて
CDN-Uを利用しY-CDN-U-FQDNの名前解決しているY社のwebサイトすべて
解説
60字もかけないのでたぶん違う。そんなに書ける事ないんだけど
(追記)
Y社CDNのドメイン名まで追加しました。これで具体的に書けました。何の試験なんだって思いますね。
(5)本文中のdに入れる適切な字句を,20 字以内で答えよ。
解答
TLSに含まれるSNIフィールド
(公式解答:TLSの接続先サーバ名)
解説
HTTPリクエストヘッダの接続先とTLSの接続先と異なること攻撃が成功する可能性があります。そこで、この2つの値が常に一致していることを確認します。
設問2 [SSO の現状]について, (1), (2)に答えよ。
(1)本文中の下線2について,認証サーバ側では検知することができない理由を,30 字以内で述べよ。
解答
STの検証には認証サーバを利用しないため
解説
STの検証は「処理3」で行われています。これはGrWサーバで行われているため、認証サーバとの通信は発生しません。
このため、認証サーバ側でSTの偽造は検知できません。
(2)本文中の下線3について,対策にならない理由を,35字以内で述べよ。
解答
STへの攻撃時にはログイン試行が発生しないため
解説
(1)にも関連しますが、STの処理時はGrWサーバで処理が行われるため
設問3 [SaaS での SSO の実現」について, (1)~(4)に答えよ。
(1)表2中のeに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
ウ
解説
SAMLリクエストを送信する方法は2つあります。GETかPOSTです。
どちらの方法が使用されていたかは表2の処理1に記載されています。
エンコードした文字列も組み合わせてURLを生成しているとのことですので、GETリクエストが使用されています。そのため、エンコードした文字列はHTTPリクエストのクエリ文字列から取得する必要があります。
(2)表2中のfに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
ア
解説
SAMLレスポンスを生成しているのはIDaaSですね。よって「IDaaSが生成したもので間違いない」ことをデジタル署名を使って検証します。
(3)表2中のgに入れる適切な字句を,5字以内で答えよ。
解答
改ざん
(4)本文中のh~jに入れる適切な数字を,それぞれ答えよ。
解答
設問 | 解答 |
---|---|
h | 1 |
i | |
j | 4 |
解説
URLに関して記述されているのは「処理1」だけです。
処理1では、SaaS側にてリダイレクト先URLを生成する際にIDaaSのログイン画面URLが必要になります。これは事前に共有しておく必要がありますね。
デジタル署名については、「処理3」と「処理4」に記述があるように見えます。
しかし、処理3のデジタル署名の記述は自分が署名するためにデジタル署名を利用するという説明です。これは秘密鍵の話なので、共有してはいけません。
消去法で「処理2」を見てみると「信頼関係が構築されたSaaSからの認証要求であることを検証する」と記載があります。この検証のためには事前にデジタル署名を共有しておく必要がありますね。
設問4 [従業員からの要望]について, (1)~(4)に答えよ。
(1)図9中のk~mに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
設問 | 解説 |
---|---|
k | ウ |
l | イ |
m | ア |
(2)図9中のnに入れる適切な流れを解答群の中から選び,記号で答えよ。
解答
エ
解説
スケジュールの情報を持っているのは、利用者情報を持っているのと同じGrW-Gですね。よって選択肢はイかエです。
さらに、そもそもこのOAuth認証は「SサービスがGrW-Gのスケジュール情報を取得できるようにする」ためのものですので、解答はエになります。
(3)本文中のo,pに入れる適切な通信を,図9中の(1)~(10)から選び、番号で答えよ。
解答
設問 | 解答 |
---|---|
o | 2 |
p | 6 |
解説
stateは「認可要求してきた相手」と「認可コードを送付してきた相手」が同じかどうかを検証するためのものです。
そのため、「認証要求してきたタイミング」と「認可コードを送付してきたタイミング」それぞれで検証します。
(解説は合っていましたがoの解答が間違っていたので修正)
(4)本文中のqに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
ウ
解説
知識問題
解説はclassmethodさんにおまかせ
設問5 [企画チームからの要望]について, (1)~(4)に答えよ。
(1)図10中のr~tに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
設問 | 解答 |
---|---|
r | オ |
s | エ |
t | ウ |
解説
まずは登場人物を整理します。
- T社投稿サイト
- T社投稿サイトの認証サーバ
- X社動画サーバ(T社投稿サイトに自動投稿したい)
次に問題文を見てみると、最後にrからtへ「APIを使った"動画の概要"投稿」機能があります。これは登場人物と照らし合わせると下記になります。
X社動画サーバ ⇒ T社投稿サイト
これでrとtが埋まりました。残りのT社投稿サイトの認証サーバがsです。
(2)本文中のuに入れる適切な通信を,図10中の(1)~(8)から選び, 番号で答えよ。
解答
8
解説
認可コードのトークン応答時に送付
(3)本文中のvに入れる適切な字句を解答群の中から選び,記号で答えよ。
解答
イ
解説
知識問題、、かな
(4)本文中のに入れる適切な字句を,それぞれ10字以内で答えよ。
解答
設問 | 解答 |
---|---|
w | 認証要求 |
x | IDトークン |
解説
OIDCのnonce利用についての出題です。
stateが「アクセストークン」を守るためのものであるのに対し、nonceは「IDトークン」を守るためのものです。
nonceについて、ものすごい簡単に説明すると「認証要求と対になるトークン要求に対してのみ、トークンを発行する」という事です。認証要求時に設定されたnonceは一度IDトークンが発行されると破棄されるので、同じnonceが含まれるトークン要求を拒否することで攻撃を防ぐことができます。
解答の公開ありがとうございます!
「問1>設問6>(1)」は私も最初分からなかったのですが、
「表1>5専門技術者による脆弱性診断」に書かれている文言をコピペしました。
こっちが解答である可能性はないでしょうか?
コメント頂きありがとうございます!
表1>5専門技術者による脆弱性診断に記載のある下記2点ということですね。
・セッション管理による脆弱性
・認可、アクセス制御の脆弱性
確かにこちらの方が正しいかもしれませんね。
一般論的な出題かと思いましたが、「ツール検査では対象外にしている項目があるから、専門技術者による脆弱性試験でないと検知できないものがある」という国語の問題であれば上記2点が正しそうですね。
返信ありがとうございます!
あまりにIT知識が関係なく国語過ぎるので、私も自信ないです😅