こんにちは、mokakoです。
今回は情報処理安全確保支援士試験の平成31年度 春期 午後Ⅰ 問2を解説していきたいと思います!
※この解説ブログでは、あくまでも私自身が解いた備忘録となりますので、間違いなどを発見された場合はどうぞ教えていただけますと幸いです。
下記より問題文と解答を引用しております。
問題
出典:平成31年度 春期 情報処理安全確保支援士試験 午後Ⅰ 問2
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2019h31_1/2019h31h_sc_pm1_qs.pdf
解答
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2019h31_1/2019h31h_sc_pm1_ans.pdf
では早速解説してまいります!
設問1
(1)ホテルWi-Fiと同じSSIDと事前共有鍵
解説
前後の文脈を見ると、「攻撃者は、①無線LANアクセスポイント、DNSサーバ及びWebサーバを用意した。」とあります。また、図1の調査結果のSさんへのヒアリング内容を読んでみます。
「1月10日は、SさんはアジアのZ国に出張中だった。」
「U社には、会社から貸与されたノートPCをU社以外の無線LANに接続してはならないと言うルールがあるが、 Sさんはそのルールを知らず、その日、出張先のホテルで宿泊客用の無線LANを利用していた。」
「ホテルのWi-FiのSSIDは、宿泊客で共通であり、そのSSIDと事前共有鍵はロビーなどの共有スペースに張り出されていた。」
ここまでで、図1と図2より、Sさんは攻撃者が用意した無線LANアクセスポイントに接続してしまったと推測できます。なぜ、接続してしまったのか?次に図1の3つ目の記述に注目します。
「ホテルのWi-FiのSSIDは、宿泊客で共通であり、そのSSIDと事前共有鍵はロビーなどの共有スペースに張り出されていた。」
ここで、攻撃者の無線LANアクセスポイントがホテルのWi-Fiになりすましていた場合、宿泊客はSSIDと事前共有鍵を使って偽のアクセスポイントに繋いでしまいます。そのため、このような解答になります。
(2)a. メールサービスP b. 攻撃者が用意したWebサーバ
解説
前後の文脈を見ると、「攻撃者は、無線LANアクセスポイント、DNSサーバ及びWebサーバを用意した。そのDNSサーバには、【a】のFQDNと【b】のIPアドレスとを関連づけるAレコードが設定されていた。」です。
図2 手口Gの4つ目を読むと、「SさんはWebブラウザからメールサービスPにアクセスしたつもりだったが、実際にはWebブラウザは②攻撃者が用意したWebサーバに接続していた。」とあります。SさんがメールサービスPに接続しようとして、攻撃者が用意したWebサーバに接続してしまっていたということは、攻撃者がその二つを関連付けさせたと考えられます。
したがって、【a】にはメールサービスPが、【b】には攻撃者が用意したWebサーバが入ります。
(3)HTTPで接続が開始されたから
解説
前後の文脈を見ると、「Sさんは、WebブラウザからメールサービスPにアクセスしたつもりだったが、実際にはWebブラウザは②攻撃者が用意したWebサーバに接続していた。」です。
解答は「HTTPで接続が開始されたから」とシンプルなものになっていますが、なぜHTTPで接続が開始され、HTTPだとエラーが出ないのかについて解説していきます。
まず、HTTPだとエラーが出ない理由は、HTTP通信ではサーバ証明書が発行されないためです。一方でHTTPS通信ではサーバ証明書が発行されブラウザ側でその妥当性を検証します。次になぜHTTPで接続が開始されたのかについて、私なりの解釈でイメージ図を作成したので、それに沿って説明します。
まず図ⅰを見てくださいメールサービスPにHSTSが実装されている場合です。一度HTTPで通信を開始しようとすると、次回から強制的にブラウザがHTTPSに変更してアクセスするようになります。1月10日に再び<メールサービスPのFQDN>と入力すると、HTTPS通信が開始されるので、サーバ証明書が発行され検証しエラーがでると推測できます。
これに対し、図ⅱ メールサービスPにHSTSが実装されていない場合(今回の状況)です。
普段HTTPで通信を開始しようとすると、HTTPSヘリダイレクトされサーバ証明書が発行されます。しかし特にブラウザは何も記憶していないので、1月10日はいつも通りHTTPで通信し、リダイレクトもされないため、そのまま攻撃者が用意したWebサーバへ接続。HTTPS通信ではないのでサーバ証明書も発行されず、エラーも出なかったと推測できます。
設問2
(1)OTPの入力を要求し、OTPを認証サーバXに中継する処理
解説
前後の文脈を見ると、「OTP認証方式を利用した場合、ログインには時刻によって変化するOTPも必要になるので、パスワードが窃取された場合でも不正ログインを防ぐことが可能となる。しかし、③OTP認証方式を利用し、かつ、登録処理を正しく行なったとしても、要求2を満たすことができないおそれがある。」とあります。
一文目から分かるように、OTP認証が従来の方法と違う点は、ワンタイムパスワードも必要になることです。すなわち、攻撃者がワンタイムパスワードも手に入れることで不正アクセスが成り立ってしまいます。
図4のOTP認証方式の認証方式を参照すると、利用者がOTPを入力するプロセスがあります。このとき、偽のサイトが中継することで、情報が抜き取られてしまいます。この手法は中間者攻撃とも呼ばれますが、これを実現させるためには、利用者へワンタイムパスワード入力を促すOTP入力要求と、それを中継していないように見せかけるためのワンタイムパスワードを認証サーバXに中継する処理が必要になります。
(2)c. ウ d. ア e. エ f. イ
解説
まず、cとdについて考えていきます。図5 IDaaS-Xにおけるオーセンティケータ登録処理についてです。オーセンティケータ登録処理であるので、オーセンティケータが信頼できるものかを確認しなくてはなりません。そのため、用いるのはオーセンティケータが持つ鍵である、公開鍵Aか秘密鍵Aになります。
ディジタル署名の流れは(すみません、これもいずれ詳細の記事を書きたいと思います)、今回の例で言うと、
①オーセンティケータが自分の公開鍵を配布しておく
②オーセンティケータは自分の秘密鍵を使って送信するデータのハッシュ値を暗号化
③元のデータのハッシュ値とディジタル署名を認証サーバへ送信
④認証サーバはディジタル署名をオーセンティケータの公開鍵で復号、元のデータのハッシュ値と比較し改ざんされていないか確認
となります。そのため、cには秘密鍵A、dには公開鍵Aが入ります。
次に、eとfについて考えていきます。図6 IDaaS-Xにおけるパスワードレス認証方式の認証処理についてですが、c,dと同じように考え、eに秘密鍵K、fに公開鍵Kが入ります。
(3)認証サーバXでオリジンbとオリジンsの一致を確認しているから
解説
前後の文脈を見ると、「④パスワードレス認証方式を利用すれば、要求2を満たすことができると考えられた。」です。
図5を見るとオリジンbは「WebブラウザがアクセスしたWebサイトのオリジン」、オリジンsは「認証サーバXのWebサイトのオリジン」です。
利用者が偽サイトにアクセスしようとすると、オリジンbは攻撃者が用意したWebサーバのオリジンなので、オリジンsと一致せず認証は通りません。
コメント