情報処理安全確保支援士 2022年 秋期 午後1 問03
オンラインゲーム事業者でのセキュリティインシデント対応に関する次の記述を読んで、設問に答えよ。
M社は従業員100名のオンラインゲーム事業者である。M社のゲームは利用者がWebブラウザからインターネット経由でアクセスして利用する。M社には開発部及び運用部があり、各従業員にはPCが貸与されている。M社の各PC及び各サーバには、固定のIPアドレスが割り当てられており、コンテナエンジンがインストールされている。
M社のネットワーク構成を図1に、機器の概要を表1に示す。


M社では、定期的にゲームアプリを更新する。開発部は新たなバージョンのゲームアプリに対して品質テストを行い、品質テストが完了したゲームイメージのタグを運用部に伝達する。運用部は図2に示す更新手順でゲームアプリを更新する。

〔セキュリティインシデントの発生〕
運用部のHさんは、3月6日に開発部からタグ367を伝達され、同日10時に更新手順を開始し、3.までを終えた。同日13時40分、Hさんは、ゲームサーバ1が応答していないことに気付き、LBメンバをゲームサーバ3及びゲームサーバ4だけにした後、ゲームサーバ1上のコンテナを確認した。Hさんが確認したコンテナの一覧を表2に示す。


Hさんはゲームサーバ1での更新の際に誤ってタグaのゲームイメージを取得したことに気付いた。またゲームサーバ1で稼働中のコンテナ内ではgame.out及びprogというプロセスが実行中であったが、ゲームサーバ2で稼働中のコンテナ内にはprogというプロセスがなかったので、開発部に確認した。その結果、図3に示す内容が判明した。

Hさんは、ゲームサーバ1上でコードZが実行されたと判断し、運用部のK主任に報告した。次は、その時のHさんとK主任との会話である。
Hさん:progという名称のファイルはタグaのゲームイメージに含まれていないのに、どうしてprogというプロセスが実行中だったのでしょうか。
K主任:①攻撃者がコードZに指示した命令が原因だと考えられます。
Hさん:初動対応としては、ゲームサーバ1で、まず、詳細調査に用いるOSのメモリダンプを取り、次に、稼働中のコンテナを終了すればよいでしょうか。
K主任:コンテナを終了すると、メモリ上のデータに加えてbも消失してしまいます。コンテナは終了するのではなく、一時停止してください。
Hさん:分かりました。初動対応でそのほかにすべきことはありますか。
K主任:過去に、②対策情報が公開される前の脆弱性を悪用した攻撃がコンテナを介して行われ、コンテナエスケープと呼ばれるホストへの侵害が発生した事例があったので、注意してください。それから、ほかのサーバへの被害も調査してください。
Hさん:分かりました。
〔各サーバ上での被害の調査〕
Hさんが同日の業務用FWのログを確認したところ、ゲームサーバ1はインターネット上のIPアドレスa3.b3.c3.d3及びレジストリサーバに対してだけ接続していた。そこでHさんは、同日のレジストリサーバのHTTP及びHTTPSのアクセスログを確認した。Hさんが確認したアクセスログを、表3に示す。
Hさんが調査したところ、項番1及び2は、Hさんがゲームイメージを取得した時のもので、項番3は、開発部の従業員がソースコードをソースコードサーバに格納したことによって、自動的にタグ379のゲームイメージが生成され、登録された時のものであると特定された。一方、項番4以降については、開発部及び運用部ともに誰も該当する操作を行っていなかったので、K主任に相談した。次は、その時のK主任とHさんとの会話である。
K主任:時刻から考えて、攻撃者に指示された命令によってコードZが送信したリクエストと考えるとつじつまが合いそうです。攻撃者は当社のネットワーク構成について詳細を知らずに項番4のアクセスをし、③そのレスポンスの内容から、レスポンスを返したホストはコンテナイメージが登録されているサーバだと判断したようです。項番5及び項番6は、レジストリサーバに登録されたコンテナイメージを列挙するAPI呼出しを行っています。それ以降のログを見ると、レジストリサーバ上のタグ341から379までのゲームイメージが上書きされた可能性があります。したがって、ゲームサーバ3及びゲームサーバ4に対して更新を行うべきではありません。
Hさん:分かりました。
その後、K主任は、被害の拡大を防止するために、Hさんに④レジストリサーバへの対処を指示した。
〔再発防止及び被害低減のための対策〕
初動対応と原因分析を終えたHさんは、再発防止及び被害低減のための対策を検討することにし、K主任に相談した。次は、その時のHさんとK主任との会話である。
Hさん:調査では、ゲームサーバ1は攻撃者からの攻撃の指示をIPアドレスcのサーバから受け取っていたことが分かりました。dはマルウェア感染によって攻撃者の制御下となったコンピュータで構成されますが、ゲームサーバ1もそのままにしておくとdに加えられてしまっていたかもしれません。そこで、IPアドレスcへの接続を業務用FWで拒否するのはどうでしょうか。
K主任:それだけでは、攻撃者が同種の方法で攻撃の指示をしたときに⑤対策として有効でない場合があります。再検討してください。
Hさん:分かりました。
K主任:レジストリサーバについての対策は、どうするつもりですか。
Hさん:REST APIによるゲームイメージの新規登録及び上書き登録の呼出しについて、呼出し元IPアドレスをeのIPアドレスからだけに制限するというのはどうでしょう。
K主任:それは効果がありますね。
Hさんは、ほかにも必要な再発防止及び被害低減のための対策を検討した。設問1:〔セキュリティインシデントの発生〕について答えよ。
(1)本文中及び図3中のaに入れる適切な番号を答えよ。
模範解答
a:376
解説
解答の論理構成
-
開発部が運用部に伝えたタグ
- 問題文より引用
「運用部のHさんは、3月6日に開発部からタグ367を伝達され…」
したがって、本来取得すべきイメージは「367」です。
- 問題文より引用
-
ゲームサーバ1で実際に起動していたコンテナのタグ
- 表2より引用
「タグ351…3月6日 10時05分に終了」
「タグ376…3月6日 10時14分に起動」
10時05分時点で旧バージョン(351)が終了し、10時14分から稼働しているのは「376」です。
- 表2より引用
-
“誤って取得した”という状況
- 問題文より引用
「Hさんはゲームサーバ1での更新の際に誤ってタグaのゲームイメージを取得したことに気付いた。」
10時14分に起動したタグが誤取得品と分かるため、a =「376」と決定できます。
- 問題文より引用
誤りやすいポイント
- 「367」と「376」を読み違える
- コンテナIDとタグ番号を混同する
- 旧タグ「351」が終了しているので「351」を誤取得と勘違いする
FAQ
Q: コンテナIDではなくタグ番号で特定する理由は?
A: 同一タグから複数コンテナを起動する場合があるため、イメージを識別するにはタグ番号が適切です。
A: 同一タグから複数コンテナを起動する場合があるため、イメージを識別するにはタグ番号が適切です。
Q: タグ「351」が終了しているのにまだ影響があるのでは?
A: 終了時刻が10時05分であり、問題となったコンテナは10時14分に起動したタグ「376」です。351 は直接関係しません。
A: 終了時刻が10時05分であり、問題となったコンテナは10時14分に起動したタグ「376」です。351 は直接関係しません。
Q: 開発部が生成した最新タグ「379」は関係ないの?
A: 「379」は11時29分に自動登録されただけで、Hさんが取得・起動した形跡はなく、本問の誤取得タグには該当しません。
A: 「379」は11時29分に自動登録されただけで、Hさんが取得・起動した形跡はなく、本問の誤取得タグには該当しません。
関連キーワード: コンテナイメージ、タグ管理、ロールバック、認証なしAPI, インシデントハンドリング
設問1:〔セキュリティインシデントの発生〕について答えよ。
(2)本文中の下線①について、どのような命令か。30字以内で答えよ。
模範解答
progというファイルをダウンロードし、実行する命令
解説
解答の論理構成
- 表2を見ると、タグ「376」のコンテナが「3月6日 10時14分に起動」しています。
- 図3には、「コードZは、呼び出し元プログラムの起動から3時間後に…攻撃者が用意した外部のサーバに接続して、指示された任意の命令を実行する。」と明記されています。
⇒ 10時14分+3時間 ≒ 13時14分以降に攻撃者の命令が実行されたはずです。 - レジストリサーバのアクセスログでは、13時24分以降にゲームサーバ1が不審なAPI呼出し(項番4以降)を連続して行っています。
- Hさんの疑問「progという名称のファイルはタグaのゲームイメージに含まれていないのに、どうしてprogというプロセスが実行中だったのでしょうか。」に対し、K主任は下線①で「攻撃者がコードZに指示した命令が原因」と回答しました。
- 以上より、下線①は「コードZが外部サーバからprogを取り寄せて実行する」挙動で説明できます。
よって解答は「progというファイルをダウンロードし、実行する命令」となります。
誤りやすいポイント
- 「コードZを実行する命令」と誤記する
→ コードZ自体は既にゲームイメージ内に混入済みで、攻撃者が指示したのは別のバイナリ(prog)の取得・実行。 - 「レジストリサーバへのAPI呼出し命令」と混同する
→ API呼出しはダウンロード後の prog が実施した活動と推測される。 - コマンドの目的に「削除」「改ざん」まで含めてしまう
→ 本設問は“prog 出現”の理由を問うのみ。
FAQ
Q: コードZはどこで実行されていたのですか?
A: タグ「376」のゲームイメージ内に混入しており、コンテナ起動後に game.out から読み込まれて実行されました。
A: タグ「376」のゲームイメージ内に混入しており、コンテナ起動後に game.out から読み込まれて実行されました。
Q: なぜ prog が実行されていると分かったのですか?
A: コンテナ内プロセス一覧に prog が存在し、実行ファイルのハッシュ値が公開マルウェアDBに登録されていたためです。
A: コンテナ内プロセス一覧に prog が存在し、実行ファイルのハッシュ値が公開マルウェアDBに登録されていたためです。
Q: prog が実行された後の主な被害は?
A: レジストリサーバ上のタグ「341~379」のゲームイメージが上書き登録され、今後の更新手順に使えなくなる恐れが生じました。
A: レジストリサーバ上のタグ「341~379」のゲームイメージが上書き登録され、今後の更新手順に使えなくなる恐れが生じました。
関連キーワード: マルウェア、REST API, ダウンロード実行、不審プロセス、ログ解析
設問1:〔セキュリティインシデントの発生〕について答えよ。
(3)本文中のbに入れる適切な字句を15字以内で答えよ。
模範解答
b:一時ディレクトリ内のログ
解説
解答の論理構成
- 【問題文】表1「ゲームサーバ1~4」の記述に
「ゲームアプリはログを一時ディレクトリに出力する。 一時ディレクトリはコンテナ起動時に作成され、コンテナ終了時に消去される。」
とある。
⇒ コンテナを終了するとログが物理的に削除されることが分かる。 - 会話中で K主任が
「コンテナを終了すると、メモリ上のデータに加えてbも消失してしまいます。」
と警告している。
⇒ 消失して困るデータは上記で示された “一時ディレクトリに出力されるログ”。 - したがって、b に入る語句は
「一時ディレクトリ内のログ」
となる。
誤りやすいポイント
- 「ゲームサーバ1~4」の説明を読み飛ばし、消えるのはプログラムファイルだと誤解する。
- “メモリダンプ”と並列に語られているため、b を “ディスクイメージ”などと勘違いする。
- 「一時ディレクトリ」を「/tmp などのホスト側領域」と誤認し、消えないと判断してしまう。
FAQ
Q: 一時停止ではなく終了してからコンテナのファイルシステムをコピーすれば良いのでは?
A: 終了時点で一時ディレクトリが削除されるため、ログが取得できません。証跡保全を優先するなら一時停止が適切です。
A: 終了時点で一時ディレクトリが削除されるため、ログが取得できません。証跡保全を優先するなら一時停止が適切です。
Q: コンテナの“ボリューム”を使えばログは残りますか?
A: 今回の設定ではボリュームを割り当てておらず、ログはコンテナ内部の一時ディレクトリのみです。設定変更が必要です。
A: 今回の設定ではボリュームを割り当てておらず、ログはコンテナ内部の一時ディレクトリのみです。設定変更が必要です。
Q: 一時ディレクトリのログが重要視される理由は?
A: 攻撃コードの実行経路や外部通信先など、コンテナ内部でのみ記録された痕跡が含まれているためです。
A: 攻撃コードの実行経路や外部通信先など、コンテナ内部でのみ記録された痕跡が含まれているためです。
関連キーワード: コンテナ、一時ディレクトリ、ログ保全、インシデント対応、証跡管理
設問1:〔セキュリティインシデントの発生〕について答えよ。
(4)本文中の下線②が示す攻撃の名称を答えよ。
模範解答
ゼロデイ攻撃
解説
解答の論理構成
- 問題文には、K主任が「過去に、②対策情報が公開される前の脆弱性を悪用した攻撃がコンテナを介して行われ、コンテナエスケープと呼ばれるホストへの侵害が発生した事例があった」と述べています。
- 「対策情報が公開される前の脆弱性を悪用した攻撃」は、パッチや回避策が公開される前に未知の脆弱性を突く行為を指します。
- この特徴に該当する代表的な攻撃名称が「ゼロデイ攻撃」です。
- したがって、下線②が示す攻撃の名称は「ゼロデイ攻撃」と判断できます。
誤りやすいポイント
- 「既知だが未対策の脆弱性」を意味するベンダーレスポンス待ちの攻撃と混同し、「Nデイ攻撃」などと書いてしまう。
- 「脆弱性情報公開後すぐの攻撃」と早合点し、「公開直後攻撃」「エクスプロイトコード公開攻撃」などと記述する。
- 「コンテナエスケープ=攻撃名称」と誤認し、②に「コンテナエスケープ」と答えてしまう。
FAQ
Q: 「ゼロデイ攻撃」と「ゼロデイ脆弱性」の違いは?
A: ゼロデイ脆弱性は「ベンダーがまだ把握していない・修正が提供されていない脆弱性」、ゼロデイ攻撃は「その脆弱性を悪用する具体的な攻撃行為」を指します。
A: ゼロデイ脆弱性は「ベンダーがまだ把握していない・修正が提供されていない脆弱性」、ゼロデイ攻撃は「その脆弱性を悪用する具体的な攻撃行為」を指します。
Q: なぜ“ゼロデイ”と呼ばれるのですか?
A: 脆弱性を修正するまでの「猶予日数(デイ)」がゼロ、すなわち公開やパッチ提供前に攻撃が行われるためです。
A: 脆弱性を修正するまでの「猶予日数(デイ)」がゼロ、すなわち公開やパッチ提供前に攻撃が行われるためです。
Q: ゼロデイ攻撃への一般的な防御策は?
A: 仮想パッチ、振る舞い検知型のセキュリティ製品、脆弱性情報収集・迅速なパッチ適用、最小権限設計などが挙げられます。
A: 仮想パッチ、振る舞い検知型のセキュリティ製品、脆弱性情報収集・迅速なパッチ適用、最小権限設計などが挙げられます。
関連キーワード: ゼロデイ攻撃、脆弱性、パッチ、エクスプロイト、コンテナエスケープ
設問2:〔各サーバ上での被害の調査〕について答えよ。
(1)本文中の下線③について、レスポンスに含まれる内容のうち、攻撃者がレジストリサーバと判断するのに用いたと考えられる情報を25字以内で答えよ。
模範解答
レジストリサーバに固有のレスポンスヘッダ
解説
解答の論理構成
- 【問題文】表3 項番4 は
13:24 GET /index.html 404 Not Found
という汎用パスへのアクセスであり、攻撃者は“サイトトップ”に相当する URI を試しています。 - 同じく【問題文】には「レジストリサーバ…HTTPSでアクセスするREST APIを実装している。当該REST APIに認証・認可機能は設定されていないが、API呼び出しはログに記録される。」とあります。
- 汎用的な /index.html へのリクエストに対し、通常の Web サーバなら HTML を返すか 403/200 などになりますが、Docker Registry などの API 専用サーバは静的ファイルを持たず 404 を返します。また、その 404 レスポンスには Docker-Distribution-API-Version: registry/2.0 等、レジストリ特有の HTTP ヘッダが付くのが一般的です。
- 会話文の下線③「そのレスポンスの内容から…コンテナイメージが登録されているサーバだと判断」とあるため、攻撃者は 404 ステータス“だけ”ではなく、レスポンスヘッダに含まれる固有情報を根拠にしています。
- 以上より、回答は「レジストリサーバに固有のレスポンスヘッダ」となります。
誤りやすいポイント
- 404 Not Found という“ステータスコード”を答えてしまう。404 は一般 Web サーバでも返るため判定根拠になりません。
- /v2/_catalog や /v2/… といった後続 API 呼び出し URI を答える。これらは「攻撃者がレジストリと確信した後」の操作であって判定時点の情報ではありません。
- 「Docker という文字列が含まれるボディ」などと推測で記述する。問題は“レスポンスの内容”のうち“レジストリサーバに固有”と明示しており、具体的値を書く必要はありません。
FAQ
Q: 404 ステータスだけでは不十分なのはなぜですか?
A: 汎用 Web サーバでも存在しないファイルにアクセスすれば 404 を返すため、攻撃者が“レジストリ”と特定できる決め手にはなりません。
A: 汎用 Web サーバでも存在しないファイルにアクセスすれば 404 を返すため、攻撃者が“レジストリ”と特定できる決め手にはなりません。
Q: もしレスポンスヘッダに制限をかけていれば特定を防げましたか?
A: はい。不要なサーバ情報(バナー・API バージョン等)を非表示にするハードニングは攻撃面を狭める有効策です。
A: はい。不要なサーバ情報(バナー・API バージョン等)を非表示にするハードニングは攻撃面を狭める有効策です。
Q: REST API だけにベーシック認証を付けるのと、FW で IP 制限をかけるのではどちらが優先ですか?
A: 一般には多層防御を推奨しますが、問題文の環境では「呼出し元IPアドレスをeのIPアドレスからだけに制限」がまず先に実装すべき対策と示されています。
A: 一般には多層防御を推奨しますが、問題文の環境では「呼出し元IPアドレスをeのIPアドレスからだけに制限」がまず先に実装すべき対策と示されています。
関連キーワード: HTTPヘッダ、REST API, Docker Registry, 情報開示抑止
設問2:〔各サーバ上での被害の調査〕について答えよ。
(2)本文中の下線④について、行うべき対処を、25字以内で答えよ。
模範解答
上書きされたイメージを削除する。
解説
解答の論理構成
-
事実確認
- 表3のアクセスログでは、項番8から46まで「PUT /v2/gameapp/manifests/…」が続き、注記2に「リクエストURIの末尾の数値が1ずつ減っていく」とあります。
- K主任は「レジストリサーバ上のタグ341から379までのゲームイメージが上書きされた可能性があります」と指摘しています。
-
被害範囲の特定
- 攻撃者が「上書き登録」を行ったのはタグ341〜379。
- これらのイメージにはマルウェア(コードZやprog)が混入している恐れがあるため、残しておくと二次被害が拡大します。
-
必要な対処の導出
- 「被害の拡大を防止する」には、汚染されたイメージを利用不能にする必要があります。
- レジストリサーバ内で実施できる最も直接的な操作は「削除」です。
-
結論
- よって④で指示すべき内容は「上書きされたイメージを削除する。」となります。
誤りやすいポイント
- 「アクセス制御を強化する」「レジストリサーバを停止する」だけでは、既に登録済みの不正イメージが残存し、内部者や自動ジョブが誤って取得するリスクが解消されません。
- 「タグを付け直す」「バックアップから復元する」など復旧系の作業は削除後に行う工程であり、④の“対処”としては優先順位が下がります。
- 上書きされたタグ範囲を誤認し、全イメージを削除するなど過剰対応をしてしまうケースも注意が必要です。
FAQ
Q: 上書きされたイメージを残したままアクセス制限だけ掛けても良いのでは?
A: 内部ネットワーク内の他ホストや将来の運用作業が誤って取得する恐れが残るため、不正イメージ自体を削除するのが確実です。
A: 内部ネットワーク内の他ホストや将来の運用作業が誤って取得する恐れが残るため、不正イメージ自体を削除するのが確実です。
Q: 削除するとサービス影響はありませんか?
A: 正常な運用で使用するタグは「367」です。不正で上書きされた範囲(341〜379)は利用予定がないため、削除に伴うサービス影響は発生しません。
A: 正常な運用で使用するタグは「367」です。不正で上書きされた範囲(341〜379)は利用予定がないため、削除に伴うサービス影響は発生しません。
Q: 復元はどう行えば良いですか?
A: 削除後、ソースコードサーバから自動生成させるか、健全なバックアップから再登録します。いずれにしても不正イメージの排除が先決です。
A: 削除後、ソースコードサーバから自動生成させるか、健全なバックアップから再登録します。いずれにしても不正イメージの排除が先決です。
関連キーワード: コンテナイメージ、レジストリ、PUTリクエスト、インシデント対応、マルウェア
設問3:〔再発防止及び被害低減のための対策〕について答えよ。
(1)本文中のcに入れる適切なIPアドレスを答えよ。
模範解答
c:a3.b3.c3.d3
解説
解答の論理構成
- まず、設問は「ゲームサーバ1は攻撃者からの攻撃の指示をIPアドレスcのサーバから受け取っていた」ことを前提に、cに入る値を問うています。
- 【問題文】には、ゲームサーバ1の通信先を示す決定的な記述があります。
- 「Hさんが同日の業務用FWのログを確認したところ、ゲームサーバ1はインターネット上のIPアドレスa3,b3,c3,d3及びレジストリサーバに対してだけ接続していた。」
ここで攻撃者側と疑われる唯一の外部接続先が「a3,b3,c3,d3」です。
- 「Hさんが同日の業務用FWのログを確認したところ、ゲームサーバ1はインターネット上のIPアドレスa3,b3,c3,d3及びレジストリサーバに対してだけ接続していた。」
- さらに後段の会話でも、Hさんが「IPアドレスcのサーバ」と表現しており、攻撃者の指令サーバ=業務用FWログに残った外部IPという文脈が成立します。
- 以上より、cに入るべき値は業務用FWログに記録されていた外部IPアドレスそのもの、すなわち「a3.b3.c3.d3」となります。
- 模範解答も「c:a3.b3.c3.d3」と示しており、論理的整合が取れます。
誤りやすいポイント
- 「a3,b3,c3,d3」を“4つの別々の値”と読み違え、複数回答だと誤解するケース。実際は1つのグローバルIPアドレスをカンマ区切りで示しただけです。
- レジストリサーバへの通信を攻撃者指令だと勘違いしてしまい、内部サーバのIPを解答してしまうミス。
- 「攻撃者が送った命令」=C2通信と結び付けられず、FWログ確認の重要性を見落とすこと。
FAQ
Q: カンマ表記とドット表記が混在していますが、どちらを答えればいいのですか?
A: 受験上は通常のIPアドレス表記「a3.b3.c3.d3」で解答します。カンマは出題文の便宜的な区切りであり、値自体は同じです。
A: 受験上は通常のIPアドレス表記「a3.b3.c3.d3」で解答します。カンマは出題文の便宜的な区切りであり、値自体は同じです。
Q: 他に外部通信があった可能性は?
A: 【問題文】に「…に対してだけ接続していた」と明示されているので、その日確認できた外部宛通信は1件のみと判断します。
A: 【問題文】に「…に対してだけ接続していた」と明示されているので、その日確認できた外部宛通信は1件のみと判断します。
Q: レジストリサーバのIPでない根拠は?
A: レジストリサーバは社内(内部サーバLAN)に設置されており、「インターネット上のIPアドレス」とは区別されています。
A: レジストリサーバは社内(内部サーバLAN)に設置されており、「インターネット上のIPアドレス」とは区別されています。
関連キーワード: ファイアウォールログ、C2通信、IPアドレスフィルタリング、マルウェア、コンテナエスケープ
設問3:〔再発防止及び被害低減のための対策〕について答えよ。
(2)本文中のdに入れる適切な字句を、解答群の中から選び、記号で答えよ。
解答群
ア:ゼロトラストネットワーク
イ:ダークウェブ
ウ:ハニーポット
エ:ボットネット
模範解答
d:エ
解説
解答の論理構成
-
問題文では、Hさんが攻撃指令の送信元を示して次のように述べています。
― 「dはマルウェア感染によって攻撃者の制御下となったコンピュータで構成されますが」
ここで、dが「複数のマルウェア感染端末が攻撃者に遠隔操作されている集団」であることが明示されています。 -
その特徴を満たす用語は「ボットネット」です。ボット(乗っ取られた端末)がネットワーク化され、攻撃者に一斉指令を受けて不正通信や攻撃を行う集合体を指します。
-
解答群を照合すると、 ア:ゼロトラストネットワーク … セキュリティ設計思想
イ:ダークウェブ … 特定プロトコル上の匿名ネットワーク
ウ:ハニーポット … 誘惑型の擬似ターゲット
エ:ボットネット … 乗っ取られた端末群(問題文の説明と合致) -
よって、d に入る適切な語は「エ:ボットネット」です。
誤りやすいポイント
- 「ダークウェブ」を選択する誤り
匿名性が高いネットワークという連想で選びやすいですが、問題文の「マルウェア感染したコンピュータが集合」という説明と一致しません。 - 「ハニーポット」を選択する誤り
攻撃者を誘い込むための擬似環境であり、「攻撃者の制御下で動く端末群」とは逆の立場です。 - ボットネット=DDoS攻撃限定と思い込む誤り
ボットネットは DDoS だけでなくスパム送信・暗号資産マイニング・情報窃取など多目的に利用されます。定義を広く捉える必要があります。
FAQ
Q: ボットネットに加えられると具体的にどのようなリスクがありますか?
A: 攻撃者のC&Cサーバから指令を受け、DDoS 攻撃の踏み台、スパム送信、マルウェア拡散などに利用されます。企業ネットワーク内の端末が加担すると信用失墜や回線帯域枯渇など多大な被害が生じます。
A: 攻撃者のC&Cサーバから指令を受け、DDoS 攻撃の踏み台、スパム送信、マルウェア拡散などに利用されます。企業ネットワーク内の端末が加担すると信用失墜や回線帯域枯渇など多大な被害が生じます。
Q: ボットネット化を防ぐ一次対策は?
A: OS・アプリの脆弱性パッチ適用、アンチマルウェアの導入、侵入検知(IDS/IPS)、不審通信のフィルタリング、最小権限の徹底などが基本です。
A: OS・アプリの脆弱性パッチ適用、アンチマルウェアの導入、侵入検知(IDS/IPS)、不審通信のフィルタリング、最小権限の徹底などが基本です。
Q: 検体がボットネット化しているかを判定する方法は?
A: C&C 通信の有無をプロキシ/FWログで確認する、メモリ・プロセス解析で不審な常駐プロセス・自動起動設定を検出する、外部のブラックリストと通信先を照合するなどの方法があります。
A: C&C 通信の有無をプロキシ/FWログで確認する、メモリ・プロセス解析で不審な常駐プロセス・自動起動設定を検出する、外部のブラックリストと通信先を照合するなどの方法があります。
関連キーワード: ボットネット、マルウェア、C&Cサーバ、DDoS, 不正通信
設問3:〔再発防止及び被害低減のための対策〕について答えよ。
(3)本文中の下線⑤について、有効ではないのはどのような場合か。25字以内で答えよ。
模範解答
別のIPアドレスを攻撃者が用いる場合
解説
解答の論理構成
- Hさんは「IPアドレスcへの接続を業務用FWで拒否する」と提案しました。
- これに対し K主任は「それだけでは、攻撃者が同種の方法で攻撃の指示をしたときに⑤対策として有効でない場合があります」と指摘しています。
- 業務用FWで 1 つの IP アドレスだけを遮断する方法は、遮断対象が固定であることが前提です。
- しかし、攻撃者は C2(Command & Control)サーバを容易に変更できるため、別の IP アドレスを使えば再び通信できてしまいます。
- したがって「⑤有効でない場合」とは、攻撃者がcとは異なる IP アドレスを用いて同じ種類の攻撃指示を行う場合です。
誤りやすいポイント
- 「業務用FWで拒否する」=完全封じ込めと早合点し、攻撃者の IP 変更という基本的な回避手段を見落とす。
- ⑤の主語を「業務用FW」や「C2 サーバ」などにしてしまい、「どのような場合か」という設問意図から外れる。
- 「別ドメイン」「別ポート」などと答え、FW が IP アドレス単位で制御している点を忘れる。
FAQ
Q: ドメイン名やポート番号の変更ではダメなのですか?
A: 問題文では FW が「IP アドレス」で通信を制御すると示唆されているため、対策の穴は IP 変更が本質です。
A: 問題文では FW が「IP アドレス」で通信を制御すると示唆されているため、対策の穴は IP 変更が本質です。
Q: ブラックリスト方式を強化する方法は?
A: C2 の特徴的な通信パターンや署名を IDS/IPS に登録する、通信先を動的に評価する EDR を導入するなど、IP 固定に依存しない仕組みが有効です。
A: C2 の特徴的な通信パターンや署名を IDS/IPS に登録する、通信先を動的に評価する EDR を導入するなど、IP 固定に依存しない仕組みが有効です。
Q: そもそもcのサーバを特定できたのはなぜ?
A: 業務用FWのログに「ゲームサーバ1」は「IPアドレスa3,b3,c3,d3」に接続していたと記録されていたため、外部 C2 を割り出せました。
A: 業務用FWのログに「ゲームサーバ1」は「IPアドレスa3,b3,c3,d3」に接続していたと記録されていたため、外部 C2 を割り出せました。
関連キーワード: C2通信遮断、ファイアウォール制御、IPブラックリスト、指令サーバ切替
設問3:〔再発防止及び被害低減のための対策〕について答えよ。
(4)本文中のeに入れる適切な機器名を、解答群の中から選び、記号で答えよ。
解答群
ア:LB
イ:PC
ウ:業務用FW
エ:ゲームサーバ1〜4
オ:ソースコードサーバ
カ:本番FW
キ:レジストリサーバ
模範解答
e:オ
解説
解答の論理構成
-
登録 API を誰が使うのかを確認
【問題文】表1「ソースコードサーバ」には
「その後、ゲームアプリのコンテナイメージ…を新たに生成し、レジストリサーバに登録する。」
とあり、ゲームイメージを“登録・上書き”できるのはソースコードサーバだけです。 -
実際のログでも裏付け
表3 項番3 では
「ソースコードサーバ 11:29 PUT /v2/gameapp/manifests/379 201 Created」
と、ソースコードサーバだけが正規の PUT(登録)を行っています。 -
制限対象を決定
Hさんの提案
「呼出し元IPアドレスをeのIPアドレスからだけに制限」
は、上記 1・2 に合致するソースコードサーバの IP アドレスを指すはずです。 -
解答
解答群のうちソースコードサーバに該当する記号は「オ」であるため
e:オ となります。
誤りやすいポイント
- PUT をゲームサーバでも行うと誤解し「エ」を選ぶ。ゲームサーバは取得(GET)のみです。
- レジストリ自体を指定すると思い込み「キ」を選ぶ。レジストリは“受信側”であり呼出し元ではありません。
- FW や LB が API 制限に関係すると連想し「ウ」「ア」を選ぶ。これらは制御装置であって登録処理の発信者ではありません。
FAQ
Q: GET と PUT の違いは何ですか?
A: GET はイメージを「取得」する操作、PUT はイメージを「登録・上書き」する操作です。登録元を制限したいのは PUT だけです。
A: GET はイメージを「取得」する操作、PUT はイメージを「登録・上書き」する操作です。登録元を制限したいのは PUT だけです。
Q: 複数の開発端末から直接登録する運用でも問題ないですか?
A: 端末が増えるほど攻撃面が広がります。ソースコードサーバ 1 台に集約し、その IP のみを許可することでリスクを最小化できます。
A: 端末が増えるほど攻撃面が広がります。ソースコードサーバ 1 台に集約し、その IP のみを許可することでリスクを最小化できます。
Q: 今後タグ改ざんを防ぐ追加策は?
A: API 認証の導入、署名付きイメージの検証(Content Trust など)、必要最小権限のネットワーク ACL が有効です。
A: API 認証の導入、署名付きイメージの検証(Content Trust など)、必要最小権限のネットワーク ACL が有効です。
関連キーワード: コンテナイメージ登録、REST API制御、アクセスログ解析、PUTメソッド、アクセスコントロール


