問1 脅威情報調査
脅威情報調査に関する次の記述を読んで,設問に答えよ。
L 社は,従業員 200 名のセキュリティ関連会社である。L 社の脅威情報調査部(以下,Q 部という)は,国内で流行しているマルウェアを解析したり,攻撃者グループの攻撃手法を調査したりして,顧客にレポートを提供する事業を行っているほか,四半期レポートを作成して公開している。Q 部が管理するネットワークの概要を図 1 に,システムの概要を表 1 に示す。
D システムの概要を図 2 に,D システムの構成要素の説明を表 2 に示す。
各 OF 環境内のルータには,“内部モード”と“公開モード”の二つのモードがあり,各モードでは,表 3 に示す通信制御のルールに従って各 OF 機器とそれ以外との間での通信制御が行われる。初期設定は内部モードである。
〔検体の解析作業〕
四半期レポートの作成チームのリーダーは Q 部の Y 主任であり,メンバーは新人アナリストの T さんである。T さんは,現在国内で感染が確認されている 3 種類の検体(以下,検体α,検体β,検体γという)の解析作業を担当する。T さんは,3 種類の検体を解析環境で実行し,挙動を確認するよう Y 主任から指示を受けた。T さんは,各検体を実行し,簡易的な解析を実施した。T さんが確認した挙動と簡易的な解析の結果を表 4 に示す。
T さんは,これらの検体の挙動と解析の結果を報告書にまとめ,Y 主任に報告した。次は,報告後の T さんと Y 主任の会話である。
- T さん:今日は金曜日なので,解析環境の仮想マシンは帰宅前に全てシャットダウンして,週明けに改めて解析環境を使い,追加の調査をしようと思います。
- Y 主任:近年の攻撃の傾向を考えると,②今日確認した検体αの挙動が,検体αを週明けに再実行した時には,攻撃者による変更によって再現できなくなる可能性がある。念のため,今の仮想マシンの状態を保存しておいてほしい。その上で,週明けに改めて解析環境で検体αを実行してみよう。
T さんは,指示に従って保存作業を実施した。週明け,T さんが改めて検体αを実行したところ,表 4 の挙動が再現できることを確認した。T さんは,追加の調査を実施し,Y 主任に最終報告をした。その後の Q 部内の会議で,検体αは D システムを用いて詳細に解析すること,検体βは詳細な解析を見送ること,検体γは現在の解析環境ではこれ以上解析できないので,③別の環境を構築して解析することが決定した。T さんが,検体αを D システム上で実行し,インターネットとの通信を解析することになった。
〔ファイル転送手順の改善〕
Q 部では,D システムに検体を持ち込んで実行する手順が図 3 のとおりに定められている。
検体の実行によって生成される OF 機器上のログやファイルなどは,監査ログ保存サーバでは収集されない。そこで,検体の実行後,図 4 に示すファイル転送手順によって D-PC に転送する。
T さんは,図 4 の手順では,OF 環境で実行するマルウェアが,自律的に感染を広げる機能をもっている場合,ファイルシェアサーバに感染が及ぶ可能性があると考えた。万一,ファイルシェアサーバがマルウェアに感染すると,他の OF 環境での解析作業に影響を与えてしまう。そこで,次の方針で新しい手順を作成することにした。
- OF 環境内のルータごとに 1 台の検疫 PC を新たに設置する。
- 解析ファイルの転送は,必ず検疫 PC を経由させる。
- 解析ファイルの転送では,検疫 PC がマルウェアに感染していないことを確認する。
- 検疫 PC は,表 3 の通信制御のルールについては,OF 機器として扱う。
- 検体の実行後,検疫 PC 以外の OF 機器と,ファイルシェアサーバとは直接通信させない。
- 検疫 PC は,パーソナルファイアウォール(以下,PFW という)の設定によって,検疫 PC と管理 Web サーバとの間の通信だけを許可しておき,解析ファイルの転送に必要な通信を転送時にだけ許可する。
T さんは,検疫 PC を用いた新しいファイル転送手順案を考案し,Y 主任に説明した。後日,Q 部内の会議でこのファイル転送手順が,Q 部の正式な手順として採用された。新しいファイル転送手順を図 5 に示す。
〔模擬攻撃試験の受験〕
1 年後,T さんは模擬攻撃試験を受けることになった。模擬攻撃試験とは,年 1 回行われる社内試験である。2 日間の試験で,初日は,受験者だけがアクセスできる D システム内に作られた試験用 OF 環境にインターネットから接続し,事前に与えられたツール群とヒント情報を基に,秘密情報に見立てた文字列情報(以下,flag という)を 8 時間の間にできるだけ多く入手するという実技を行う。2 日目の午前は,flag の入手過程で確認した脆弱性,実行した攻撃手法などについて試験評価者(以下,評価者という)と討論する。午後は,flag の入手過程で確認した脆弱性について,運用面での改善提案を報告書にまとめ提出する。合否は 2 日間の総合成績によって決定する。L 社ではこの試験の合格が重要な業務を担当するための要件の一つになっている。
試験の初日は,試験用 OF 環境内のある PC(以下,X-PC という)が遠隔操作可能な状態から試験が始まった。T さんは,X-PC のシステム情報,X-PC に残っていた電子メールなどを収集し,X-PC から試験用 OF 環境内を探索して,flag の入手を試みた。初日の試験では,最終的に T さんは五つの flag の入手に成功した。試験 2 日目の討論では,T さんは,最初の flag の入手過程で ARP スプーフィングを使用したことから説明を始めることにした。
〔ARP スプーフィングの使用に関する説明〕
T さんは ARP スプーフィングの使用に関して次のように説明した。
- (1) 与えられたヒント情報から,X-PC と同一セグメントにある別の PC(以下,標的 PC という)が送信するパケットを ARP スプーフィングによって盗み見できれば,最初の flag を入手できると考えた。
- (2) 事前に与えられたツール群の中から ARP 関連のツールを探したところ,A ツールという広く流通する OSS の ARP スプーフィングツールがあり,表 5 に示す三つの機能をもつという情報を得た。
- (3) ネットワーク内の機器の情報を得たいと考え,表 5 中の項番 e の機能を実行した。実行後の X-PC の ARP テーブルは表 6 であった。
- (4) X-PC の ARP テーブル,X-PC 内のメール情報などを基にして,図 6 に示すネットワーク図を作成した。
- (5) ARP スプーフィング機能について,標的 PC の IP アドレスを指定して実行した後,DNS サーバの IP アドレスを指定して実行し,標的 PC から DNS サーバへの通信を盗み見する準備を整えた。この時の X-PC の ARP テーブルは表 7,標的 PC の ARP テーブルは表 8 のとおりであった。
- (6) ARP スプーフィングが成功している証拠を評価者に説明するために,監査ログ保存サーバに記録されていた,L2SW-1 を通過したパケットの記録を確認したところ,表 9 に示すとおりであった。
この後,T さんは,盗み見の成功から最初の flag 入手までの流れを評価者に説明した。評価者から幾つかの質問を受けたが,T さんは問題なく受け答えできた。次に,T さんは,2~4 番目に入手した flag についても同様の流れで説明した。最後に,5 番目の flag の入手に使用した人事サーバのパスワード解読に関して説明した。
〔パスワードの解読に関する説明〕
T さんはパスワード解読に関して次のように説明した。
- (1) ヒント情報には,5 番目の flag を入手するためには,システム管理者の利用者 ID とパスワードを用いて Web ブラウザから人事サーバにログインする必要があると書かれていた。
- (2) ここまでの flag 入手の過程で得た情報を図 7 のように整理した。
- (3) 図 7 の情報から,システム管理者のパスワードを得るための攻撃手法を最初に二つ考えたが,いずれの手法も,表 10 に示すとおり,残りの試験時間内にパスワードを得ることは困難であると判断した。
- (4) 三つ目の攻撃手法を考えて試し,成功した。具体的には,図 8 に示すオフライン攻撃の流れをプログラムとして実装し,実行することによってシステム管理者のパスワードを解読した。
〔運用に関する改善提案〕
討論会を終えた T さんは,最後の試験課題である,報告書の作成に着手した。図 9 は,T さんが作成した運用に関する改善提案の報告書である。
出題趣旨(IPA)
サイバー攻撃が高度化する中,有効なセキュリティ対策を行う上で重要な要因の一つとして,攻撃者の行動,マルウェアの挙動を観測によって解析することが挙げられる。本問では,セキュリティ関連会社での脅威情報調査及びCTFを題材に,マルウェアの動的解析システムの安全な運用方法の設計能力,及び攻撃者の攻撃手法を想定した事前対策の立案能力を問う。
採点講評(問全体・IPA)
問1では,セキュリティ関連会社での脅威情報調査及びCTFを題材に,マルウェアの動的解析システムの,安全な運用方法の設計能力,及び攻撃者の攻撃手法を想定した事前対策の立案能力を問うた。全体として正答率は平均的であった。
設問と解答例
表 4 中の下線①の挙動を特徴とするマルウェアの種類を,解答群の中から選び,記号で答えよ。 解答群 ア アドウェア イ 暗号資産採掘マルウェア ウ トロイの木馬 エ ファイルレスマルウェア オ ランサムウェア
解答例
- エ
解説
本文の根拠
表4 検体α
ディスクには展開されずメモリ内だけに展開される
表4 検体α
このプログラムコードは,キーボード入力を記録し,定期的に C&C サーバに送信するキーロガー機能をもつ。
下線①は,ダウンロードしたプログラムコードがディスク(ファイル)にはならず,メモリ上にだけ展開されるという挙動である。ディスク上にファイルを残さずメモリ上だけで動作するマルウェアは,ファイルレスマルウェアと呼ばれる。ファイルをスキャンして検知するタイプのマルウェア対策ソフトでは見つけにくいことが,この種類の特徴である。
同じ表4には,キーロガー機能をもつとも書かれているが,これは“何をするか”であって,問われている“ディスクに展開されない”という挙動とは別の話である。アドウェアは広告を表示するもの,暗号資産採掘マルウェアは感染した PC の計算資源で暗号資産を採掘するもの,トロイの木馬は有用なソフトウェアを装って侵入するもの,ランサムウェアはファイルを暗号化して身代金を要求するもので,いずれも検体αの挙動の中心はメモリ内だけに展開される点にはない。なお,表4の検体βは“ファイルを次々に暗号化した”とあるのでオのランサムウェアに当たる。
解答群から選ぶ設問なので字数の問題はない。“キーロガー機能”に引かれてウのトロイの木馬と答えないよう,下線部の“ディスクには展開されず”に注目して選ぶ。
本文中の下線②について,再現ができなくなるのは,攻撃者によって何が変更される場合か。攻撃者によって変更されるものを 15 字以内で答えよ。
解答例
- C&CサーバのIPアドレス
解説
本文の根拠
表4 検体α
C&C サーバに接続し,プログラムコードをダウンロードした。
〔検体の解析作業〕 Y 主任の発言
今日確認した検体αの挙動が,検体αを週明けに再実行した時には,攻撃者による変更によって再現できなくなる
検体αは,実行すると C&C サーバに接続してプログラムコードをダウンロードする。挙動のほぼ全てがこのダウンロードしたコードに依存しているので,接続先の C&C サーバが使えなくなれば,週明けに再実行しても同じ挙動は再現できない。C&C サーバは攻撃者が管理しているので,攻撃者が接続先を変更することがあり得る。
攻撃者に変更されるものとしては,C&C サーバの IP アドレス(検体が接続を試みる接続先)が挙げられる。Y 主任が仮想マシンの状態を保存しておくよう指示したのも,攻撃者の側が変更を加える前の状態を手元に残しておくためと読める。
15 字以内の条件なので,“C&C サーバ”と“IP アドレス”という二つの語を残して書く。解答例は 13 字である。
本文中の下線③について,現在の解析環境との違いを 20 字以内で答えよ。
解答例
- 仮想マシンではない実機環境を使う。
解説
本文の根拠
表4 検体γ
自身が仮想マシン上で動作していることを検知すると,システムコールを使用して自身のプログラムコード中の攻撃コードを削除した後,終了する。
表1 項番1
サンドボックス用の複数の仮想マシンで構成されている。
〔検体の解析作業〕
検体γは現在の解析環境ではこれ以上解析できないので,
検体γは,自分が仮想マシン上で動いていると検知すると攻撃コードを消して終了する,解析回避(アンチ VM)の機能をもつ。現在の解析環境は,表1のとおり複数の仮想マシンで構成されたサンドボックスなので,検体γを実行しても本来の挙動が現れない。
したがって,別の環境として構築すべきものは仮想マシンを使わない環境,すなわち物理的な実機の環境である。実機であれば,検体γが“仮想マシン上ではない”と判断して攻撃コードを削除せず,挙動を確認できる。
20 字以内で“現在の解析環境との違い”を書く設問なので,“仮想マシンではない”という対比と“実機環境”という中身の両方を残す。解答例は 17 字である。
図 5 中の a ~ d に入れる適切な手順を,解答群の中から選び,記号で答えよ。 解答群 ア 検疫 PC にログインし,検疫 PC の PFW の設定を変更して検疫 PC と OF 機器との間の通信を許可する。解析ファイルを OF 機器から検疫 PC に転送する。 イ 検疫 PC にログインし,検疫 PC の PFW の設定を変更して検疫 PC とファイルシェアサーバとの間の通信を許可する。解析ファイルを検疫 PC からファイルシェアサーバに転送する。 ウ 検疫 PC を除く OF 機器をシャットダウンする。 エ 使用した OF 環境内のルータを内部モードに切り替える。
〔a〕解答例
- ア
〔b〕解答例
- ウ
〔c〕解答例
- エ
〔d〕解答例
- イ
解説
本文の根拠
〔ファイル転送手順の改善〕 方針
検疫 PC は,パーソナルファイアウォール(以下,PFW という)の設定によって,検疫 PC と管理 Web サーバとの間の通信だけを許可しておき,解析ファイルの転送に必要な通信を転送時にだけ許可する。
〔ファイル転送手順の改善〕 方針
検体の実行後,検疫 PC 以外の OF 機器と,ファイルシェアサーバとは直接通信させない。
表3 項番4
項番4 OF 機器からファイルシェアサーバ:許可,禁止。
図5 項番5
検疫 PC にログインし,マルウェアスキャンを実行して検疫 PC がマルウェアに感染していないことを確認した上で,以降の手順に進む。
手順を方針に照らして並べる。手順3では,検疫 PC の PFW を変更して検疫 PC と OF 機器の間の通信を許可し,解析ファイルを OF 機器から検疫 PC に転送する(a はア)。これで解析ファイルが検疫 PC に集まる。手順4では,検疫 PC を除く OF 機器をシャットダウンする(b はウ)。検体の実行後は検疫 PC 以外の OF 機器とファイルシェアサーバを直接通信させないという方針なので,次にルータを内部モードに切り替える前に,感染している可能性のある OF 機器を止めておく必要がある。
手順5で検疫 PC のマルウェアスキャンを行った後,手順6でルータを内部モードに切り替える(c はエ)。表3の項番4のとおり,OF 機器(検疫 PC を含む)からファイルシェアサーバへの通信は,内部モードでは許可,公開モードでは禁止なので,検疫 PC がファイルシェアサーバに送るにはこの切替えが要る。最後の手順7で,検疫 PC の PFW を変更して検疫 PC とファイルシェアサーバの間の通信を許可し,解析ファイルを転送する(d はイ)。許可は転送時にだけという方針に合わせ,検疫 PC とファイルシェアサーバの間の通信を許可するのは最後にしている。
間違えやすいのは,内部モードへの切替えを前半(手順3より前)に置くことである。講評でも誤答として挙げられているとおり,内部モードにすると OF 機器からファイルシェアサーバへの通信が許可されてしまうので,OF 機器が全て止まった後に切り替える。
採点講評(IPA)
設問2は正答率がやや低かった。従来のファイル転送手順を,ファイルシェアサーバの感染リスクを低減する新しいファイル転送手順に並び替える問題であったが,内部モードへの切替えを前半に実施するといった,誤った解答が散見された。マルウェア転送は慎重に行う必要がある。作成したファイル転送手順案が,与えられた方針に全て従っているかを,よく確認してほしい。
本文中の e に入れる適切な機能を,表 5 の中から選び,項番で答えよ。
〔e〕解答例
- 1
解説
本文の根拠
〔ARP スプーフィングの使用に関する説明〕 (3)
ネットワーク内の機器の情報を得たいと考え
表5 項番1
項番1 プローブ機能:OS 標準の機能を用いて同一セグメント内に ARP 要求を出し,応答を記録する。
表6
192.168.15.51 は XX-XX-XX-23-46-4a,192.168.15.98 は XX-XX-XX-f9-48-1b。
“ネットワーク内の機器の情報を得たい”という目的に合うのは,同一セグメントに ARP 要求を出して応答を記録するプローブ機能(項番1)である。実行後の X-PC の ARP テーブルに,192.168.15.51(標的 PC)と 192.168.15.98(DNS サーバ)の MAC アドレスが載っているのは,このプローブ機能で応答を集めた結果である。ARP は IP アドレスから MAC アドレスを引くためのプロトコルで,同一リンク内で ARP 要求をブロードキャストし,該当機器が応答する(RFC 826)。
項番2の ARP スプーフィング機能は,標的の機器が ARP 要求を出した際に不正な応答を送るもので,機器の情報を集めるものではない。項番3の中継機能は,ARP スプーフィングが成功した後で,自分宛てに届いたパケットを本来の宛先へ転送するもので,これも情報収集の機能ではない。
項番で答える設問なので,目的が“情報を得る”ことなのか“攻撃する・通信を中継する”ことなのかを区別して選ぶ。
採点講評(IPA)
設問3は,(1),(2),(3)ともに正答率が高かった。ARPスプーフィングによる,ARPテーブルのMACアドレスの変化や,通信パケット上のMACアドレスの変化が正しく理解されていた。
表 7 中及び表 8 中の f ~ i に入れる適切な MAC アドレスを,解答群の中から選び,記号で答えよ。なお,同一の MAC アドレスが入る場合もある。 解答群 ア XX-XX-XX-23-46-4a イ XX-XX-XX-f9-48-1b ウ XX-XX-XX-fb-44-25 エ XX-XX-XX-ff-ff-ff
〔f〕解答例
- ア
〔g〕解答例
- イ
〔h〕解答例
- ウ
〔i〕解答例
- ウ
解説
本文の根拠
〔ARP スプーフィングの使用に関する説明〕 (5)
ARP スプーフィング機能について,標的 PC の IP アドレスを指定して実行した後,DNS サーバの IP アドレスを指定して実行し,標的 PC から DNS サーバへの通信を盗み見する準備を整えた。
表5 項番2
自身の MAC アドレスを含んだ不正な ARP 応答を送る。
図6
標的 PC(IP:192.168.15.51,MAC:XX-XX-XX-23-46-4a)
ARP スプーフィングで偽の情報を書き込まれるのは,標的とした機器の ARP テーブルである。X-PC は攻撃する側なので,X-PC の ARP テーブル(表7)には正規の対応がそのまま残る。192.168.15.51(標的 PC)の MAC アドレスは標的 PC の XX-XX-XX-23-46-4a(f はア),192.168.15.98(DNS サーバ)の MAC アドレスは DNS サーバの XX-XX-XX-f9-48-1b(g はイ)である。パケットを中継するには,本来の宛先の MAC アドレスを X-PC が知っている必要がある。
標的 PC の ARP テーブル(表8)では,不正な ARP 応答によって,192.168.15.98(DNS サーバ)の MAC アドレスが X-PC の XX-XX-XX-fb-44-25(i はウ)にすり替えられる。192.168.15.50 は X-PC 自身の IP アドレスなので,これに対応する MAC アドレスは正規の XX-XX-XX-fb-44-25(h はウ)である。つまり h と i は同じ値になり,標的 PC の ARP テーブル上で二つの IP アドレスが同じ MAC アドレスを指す状態になる。
設問の注意書きどおり同一の MAC アドレスが複数の欄に入ることがある。f〜i は,“誰の ARP テーブルか”と“その IP アドレスの持ち主の本当の MAC アドレスはどれか”で考える。講評では,この設問 3 は(1),(2),(3)ともに正答率が高かったとされている。
採点講評(IPA)
設問3は,(1),(2),(3)ともに正答率が高かった。ARPスプーフィングによる,ARPテーブルのMACアドレスの変化や,通信パケット上のMACアドレスの変化が正しく理解されていた。
表 9 中の j ~ o に入れる適切な MAC アドレスを,解答群の中から選び,記号で答えよ。なお,同一の MAC アドレスが入る場合もある。 解答群 ア XX-XX-XX-23-46-4a イ XX-XX-XX-f9-48-1b ウ XX-XX-XX-fb-44-25 エ XX-XX-XX-ff-ff-ff
〔j〕解答例
- ア
〔k〕解答例
- ウ
〔l〕解答例
- ウ
〔m〕解答例
- イ
〔n〕解答例
- ウ
〔o〕解答例
- ア
解説
本文の根拠
表9 注記2
パケットは表中の上から順に送信された。
表9 3行目
3行目:192.168.15.98,192.168.15.51,DNS,XX-XX-XX-f9-48-1b,XX-XX-XX-fb-44-25。
表5 項番3
ARP スプーフィング機能が成功した後,自身に送られてきたパケットを加工し,パケットの本来の宛先に転送する。
図6
X-PC(IP:192.168.15.50,MAC:XX-XX-XX-fb-44-25)
L2SW-1 を通過するパケットの IP アドレスは通信の当事者のままで,MAC アドレスだけが物理的な送信元・宛先を表す。1行目は,標的 PC(192.168.15.51)が DNS サーバ(192.168.15.98)に出した DNS 要求である。標的 PC の ARP テーブルでは 192.168.15.98 に X-PC の MAC アドレスが書かれているので,宛先 MAC アドレスは X-PC の XX-XX-XX-fb-44-25(k はウ),送信元 MAC アドレスは標的 PC の XX-XX-XX-23-46-4a(j はア)になる。
2行目は,X-PC が中継機能でそのパケットを本来の宛先に転送したものである。IP アドレスは 1行目と同じままで,送信元 MAC アドレスは X-PC の XX-XX-XX-fb-44-25(l はウ),宛先 MAC アドレスは DNS サーバの XX-XX-XX-f9-48-1b(m はイ)になる。3行目は,DNS サーバの応答が,DNS サーバの ARP テーブルにある X-PC 宛て(偽の対応)で送られた様子で,宛先が X-PC の MAC アドレスになっている。4行目は,その応答を X-PC が標的 PC に転送したもので,送信元 MAC アドレスは X-PC の XX-XX-XX-fb-44-25(n はウ),宛先 MAC アドレスは標的 PC の XX-XX-XX-23-46-4a(o はア)である。
3行目が与えられているので,これが X-PC 宛てになっていることを手掛かりに,行ごとに“誰から誰へ”の MAC アドレスの組を当てはめる。ARP スプーフィングが成功している証拠は,同じ IP アドレスの組のパケットが 1 往復ごとに X-PC を経由して 2 回ずつ記録される点にある。
採点講評(IPA)
設問3は,(1),(2),(3)ともに正答率が高かった。ARPスプーフィングによる,ARPテーブルのMACアドレスの変化や,通信パケット上のMACアドレスの変化が正しく理解されていた。
図 7 中の下線④について,どのような処理か。20 字以内で具体的に答えよ。
解答例
- ハッシュ化を繰り返す処理
解説
本文の根拠
図7 1.
ソルトあり,ストレッチングあり
図7 注1)
最初の 7 字はハッシュ関数のバージョンとストレッチング回数
図8 STEP2
関数への入力は,n 番目の候補文字列,文字列 Z の中に記載されたハッシュ関数のバージョン,ストレッチング回数,ソルトである。
ストレッチングは,パスワードにソルトを付けてハッシュ関数を適用する処理を数多く繰り返し,ハッシュ値を求めるのにわざと手間を掛ける手法である。1 回の計算を重くすることで,総当たりや辞書を使った推測のコストを上げられる。図7の例では $2b$05$ の部分が,ハッシュ関数のバージョン(2b)とストレッチング回数(05)を表す。
図8の STEP2 でも,攻撃者は文字列 Z に記載されたストレッチング回数を使って候補文字列のハッシュ値を計算する必要があることが分かる。ストレッチング回数が大きいほど,STEP2 を回す 1 回あたりの時間が増える。
20 字以内で“どのような処理か”を具体的に答える設問なので,“ハッシュ化(ハッシュ関数の適用)”を“繰り返す”という二つの要素を入れる。解答例は 12 字である。
表 10 中の下線⑤について,どのような機能か。40 字以内で具体的に答えよ。
解答例
- ログイン失敗が5回連続した場合に当該利用者IDをロックする機能
解説
本文の根拠
図7 1.
利用者 ID に対してログイン失敗が 5 回連続した場合は,当該利用者 ID によるログインを 10 分間ロックする。
表10 項番1
人事サーバに対して,ツールを用いて,ブルートフォース攻撃によるログイン試行をする。
ブルートフォース攻撃(総当たり攻撃)は,パスワードの候補を片端から試してログインを試みる攻撃である。人事サーバの設計資料には,利用者 ID に対してログイン失敗が 5 回連続した場合に,当該利用者 ID によるログインを 10 分間ロックするとある。これがブルートフォース攻撃に対抗する機能に当たる。
ロックされると 10 分間はその利用者 ID でログインできず,その間は試行を続けられない。5 回試すごとに 10 分待つことになるので,Admin[数字 5 桁] の 10 万通りを試す時間は残りの試験時間内には収まらない。T さんが“残りの試験時間内にパスワードを得ることは困難”と判断した理由はここにある。
40 字以内で“どのような機能か”を答えるので,ロックの契機(ログイン失敗が 5 回連続)と,ロックされる対象(当該利用者 ID)を含める。ロック時間の 10 分は,字数に余裕があれば加えてもよいが,機能の中身としては契機と対象が先である。解答例は 31 字である。
表 10 中の p に入れる適切な攻撃を,解答群の中から選び,記号で答えよ。 解答群 ア Pass the Hash イ SHA-1 衝突 ウ 既知平文 エ レインボーテーブル
〔p〕解答例
- エ
解説
本文の根拠
表10 項番2
文字列 Z に含まれるハッシュ値から平文を得るために
表10 項番2
文字列 Z の生成にはソルトが用いられているから
ハッシュ値から平文を得る攻撃として,あらかじめ多数の平文とそのハッシュ値の対応(チェーン)を計算した表を用意して照合するのがレインボーテーブル攻撃である。この攻撃は,同じ平文なら必ず同じハッシュ値になることを前提にしている。ソルトを付けてハッシュ化すると,平文が同じでもソルトが違えばハッシュ値が変わるため,あらかじめ作った表が使えなくなる。表10の理由欄“文字列 Z の生成にはソルトが用いられているから”と対応している。
ア Pass the Hash は,パスワードを解読せずに,ハッシュ値そのものを認証に使う攻撃で,平文を得る攻撃ではない。イ SHA-1 衝突は,同じハッシュ値になる異なる 2 つのデータを作る攻撃で,ハッシュ値から元の平文を求めるものではない。ウ 既知平文攻撃は,暗号文と対応する平文の組を手掛かりに暗号を解く攻撃で,ここの“ハッシュ値から平文を得る”という文脈とは違う。
記号で答える設問なので,“ソルトで無効化される”という理由欄の記述に合う攻撃を選ぶ。
図 8 中の下線⑥はどのような文字列か。システム管理者のパスワードの特徴を踏まえ,40 字以内で具体的に答えよ。
解答例
- 変数nの値を5桁の文字列に変換して“Admin”に結合した文字列
解説
本文の根拠
図7 3.
“Admin[数字 5 桁]”であり,[数字 5 桁]にはサーバごとに異なる数字が設定されていた。
図8 STEP1
整数型の変数 n に 0 を代入する。
図8 STEP4
変数 n が最大値の場合はオフライン攻撃を終了する。
システム管理者のパスワードの特徴は,“Admin”の後ろに数字 5 桁が付いた形式であることである。したがって候補文字列は,00000 から 99999 までの 5 桁の数字(変数 n の値)を“Admin”の後ろに付けた文字列になる。STEP1 で n に 0 を入れ,STEP4 で n が最大値(99999)になるまで 1 ずつ増やす流れとも合う。
オフライン攻撃では,ログイン試行は 1 回もしない。デバッグログから得た文字列 Z(ハッシュ値)を手元で候補と照合するので,ログイン失敗 5 回でロックする機能には引っ掛からない。候補は 10 万通りしかなく,ストレッチングを掛けても短時間で全てを計算できる。
40 字以内に収めるには,“n の値を 5 桁の文字列にする”(0 埋めで桁をそろえる)と“Admin に結合する”の 2 点を残す。解答例は 32 字である。
図 9 中の下線⑦について,どのような状態か。30 字以内で具体的に答えよ。
解答例
- 同一のMACアドレスのエントリが複数存在する状態
解説
本文の根拠
図9
各 PC 及びサーバの ARP テーブルを常時監視して,
表5 項番2
自身の MAC アドレスを含んだ不正な ARP 応答を送る。
ARP スプーフィングが成功すると,標的の機器の ARP テーブルでは,攻撃者の機器の MAC アドレスが,本来は別の機器である複数の IP アドレスに結び付けられる。表8のように,192.168.15.50 と 192.168.15.98 のどちらにも X-PC の MAC アドレスが入った状態になる。ARP テーブルを常時監視していれば,同じ MAC アドレスが複数の IP アドレスに対応するという不審な状態として気付くことができる。
一方で,MAC アドレスが書き換えられた事実だけでは,正規の変更(NIC の交換など)との区別が付かない。そのため,ここでは“同一の MAC アドレスのエントリが複数存在する”ことのように,通常はあまり起きない状態を挙げる。
30 字以内で“どのような状態か”を具体的に答える設問なので,“同一の MAC アドレス”と“複数のエントリ”の二つを入れる。解答例は 24 字である。
図 9 中の q に入れる適切な改善提案を,25 字以内で答えよ。
〔q〕解答例
- デバッグログに認証情報を出力しないこと
解説
本文の根拠
図7 2.
デバッグログには,ログインした利用者 ID ごとの,セッション情報,H 文字列を含む認証情報,プログラムコードで用いられていると思われる関数名や変数の値などが出力されていた。
図7 2.
人事サーバに用いられている OSS の既知の脆弱性を悪用して閲覧できたデバッグログの情報。
図9 (3)
(3) ログの観点
人事サーバのデバッグログには,セッション情報やパスワードのハッシュ値(H 文字列)を含む認証情報が出力されていた。T さんはこれを,既知の脆弱性を悪用して閲覧し,システム管理者のパスワード解読に使った。ログの観点からの改善提案としては,このような機密性の高い認証情報をログに出力しないことが挙げられる。
脆弱性管理の観点(脆弱性修正プログラムの適用)と,パスワードの観点(推測可能なパスワードを避ける)は図9の(1),(2)で既に述べられている。(3)のログの観点は,ログに何を記録するか,または出力したログをどう守るかに関する改善であり,デバッグログに認証情報を出力しないというのが最も直接的である。
25 字以内なので,“デバッグログ”と“認証情報”と“出力しない”を残す。解答例は 19 字である。
出典:令和4年度 秋期 情報処理安全確保支援士試験 午後Ⅱ 問1(表記を一部改変)