見出し画像

情報処理安全確保支援士2022年(令和4年)春午後2問1(2,392 文字)

問題冊子、解答例、採点講評はこれ


本文(設問1)

問題文(設問1)

解説(設問1)

(1)はXSS診断用リクエストの構成要素の話。正直分からないのでそういうものなんだという感じです。詳しくは参考サイトをどうぞ
答え
(2)は普段脆弱性やらが修正された安全なライブラリを使っているが、今回のライブラリは怪しいところから持ってきたものでしたという案件の再発防止策。怪しいところ使うなまともなところ使えで終わりですね。
答え 
ダウンロードするライブラリに既知の脆弱性がないかを確認する。
特定のWebサイトからの入手をルール化し、明文化する。

本文(設問2)

問題文(設問2)

解説(設問2)

次はCSRFで、csrftokenの値を消したり変えたりしたらエラーになるが、利用者Aとは別の利用者BのIDでログインしてリクエスト中のcsrftokenを利用者Aのものに変えてみると利用者Bとして通ったことからcsrftokenと[a]か[b]とがうまく紐づいていないの穴埋め。ID変えてリクエストが通るんならそりゃリクエストと紐づいてない可能性は高そう。そしてログイン状態も紐づいてない気がしますというのでこういうときに出てくる適切な単語がセッションオブジェクト(セッションID)ということでこれが答え
答え a: 利用者ID, b : セッションオブジェクト

本文(設問3)

問題文(設問3)

解説(設問3)

続いてクリックジャッキング もうボロボロである
(1)は攻撃方法について。攻撃者が踏ませたいのは画面αです。なので、利用者が見るのは画面βで、実は画面βを見てるのに画面αを操作している状況を作ります。つまり画面βを利用者から見て可視な状態で公開し、サイトXの画面αを利用者から見て手前透明の状態で公開して踏ませるという流れになります。
答え c : , d : , e : , d : , e : , f :
(2)はクリックジャッキングの対策。一つはレスポンスヘッダにX-Frame-Option()を含めるという午前にも出てくる奴で、もう一つはContent-Security-Policy()を含める方法があります。知識かな
答え i : , j :

本文(設問4)

問題文(設問4)

解説(設問4)

続いてSSRF(Server Side Request Forgery)で、公開されていないサーバーと通信ができるような公開されているサーバーを通して、公開されていないサーバを攻撃する者。今回はDBメンテ用のところにアクセスしたいらしいので、URLを表2の下のYのDBサーバであるhttps://db-y.b-sha.co.jp/にします
答え topicの値をhttps://db-y.b-sha/co.jp/に変更した。

本文(設問5)

問題文(設問5)

解説(設問5)

(1)は存在しない駅名でHostヘッダをVが用意したサイトに変更したリクエストを送ると、宿泊サイトがLocationヘッダに[k]のURLを含めたレスポンスが返ってくる話。そりゃここで出てくるURLってVの用意したサイトしかないからこれが答えなんですが、注2)にHostヘッダの値をreturnURL中のホスト名として指定するとあるので、この仕様によりVのサイトが返ってきます。
答え V氏が用意したサイト
(2)は(1)の対策として想定されるURL以外を弾くと共に他の対策もいるよねという話。何を書けばという感じですが、returnURLがHostヘッダの値を参照しに行く必要はないので固定値にすればいいじゃないという話の模様。
答え returnURLの値を固定値にする。

本文(設問6)

問題文(設問6)

解説(設問6)

(1)はソースコードレビューやツールでは見つからないが、専門技術者の脆弱性診断で見つかる脆弱性は何か。表1を見ると一部のセッション管理の脆弱性認可アクセス制御の脆弱性は基本専門技術者が見つけることになってるようなのでこれが答えです。正答率が低かったらしいのはXSSとか直接書いた人が多かったからかしら
答え
一部のセッション管理の脆弱性
認可・アクセス制御の脆弱性

(2)は専門技術者の脆弱性診断をいつやるか。10日かかる診断を2週間周期の間にやるのは無理でも、半年に1回1月お休みがあるようなので素直にそこでやればいいと思います
答え 改良フェーズにおける1か月の休止期間
(3)は開発プロセスを見直して専門技術者の脆弱性診断をきちんとやるようにするにはどう見直せばいいか。何を書けば…?みたいなレベルでIPA解答も3つあって迷走してる感じですがいつも通り下に並べます。どれもせやなというだけ。基本は脆弱性診断をやる時間を確保しようという話でした。
答え
専門技術者による脆弱性診断が必要な時は、改良リリースを次回に持ち越す。
半年に一度、改良リリースの期間を長くする。
定期的に期間の長い改良リリースを設ける。

(4)はWebサイト実装に必要な機能やコードが用意されているものの中には脆弱性対策が組み込まれているものがあるが、CSRF対策の面ではどのような処理が組み込まれていると思うか。今回のサイトXのCSRF対策ではcsrftokenの調査とIDやセッションオブジェクトの紐づけがだめだったことがわかった調査とをやってました。この2つが脆弱性として検出されないような処理がきっとなされていることを記載します。
答え CSRF対策用トークンの発行、HTMLへの埋め込み、必要なひも付け、及びこれを検証する処理

終わりに

ある程度分かるといったレベル
当日やりたくはない

主な参考サイト

【情報処理安全確保支援士試験 令和4年度 春期 午後2 問1 No.1】
SSRF(Server Side Request Forgery)徹底入門


この記事が気に入ったらサポートをしてみませんか?