基本情報 2022 サンプル問題 問35:テクノロジ系に関する問題
マルウェアの動的解析に該当するものはどれか。
- a検体のハッシュ値を計算し,オンラインデータベースに登録された既知のマルウ ェアのハッシュ値のリストと照合してマルウェアを特定する。
- b検体をサンドボックス上で実行し,その動作や外部との通信を観測する。正答
- c検体をネットワーク上の通信データから抽出し,さらに,逆コンパイルして取得 したコードから検体の機能を調べる。
- dハードディスク内のファイルの拡張子とファイルヘッダの内容を基に,拡張子が 偽装された不正なプログラムファイルを検出する。 - 20 -
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは b です。
マルウェア(悪いプログラム)の調査には2つの方法があります。
- 静的解析:プログラムを動かさず、中身を“読書する”ように調べる
- 動的解析:実際に 動かして 何をするかを観察する
問題の正解 b は「サンドボックス(隔離された安全な箱の中)で動かして観察」。動かしてるから 動的 !
👉 覚え方:動的 = 動かす/ 静的 = 動かさない(読むだけ)
ほかの選択肢:a ハッシュ値で照合=指紋チェック(静的)/c 逆コンパイルで中身を読む(静的)/d 拡張子とヘッダを見て偽装検出(静的)。動かしてるのは b だけ。
なぜこれが正解か
正解は b。マルウェア解析は 静的解析(実行せずバイナリ構造・コード・文字列を解析)と 動的解析(隔離環境で実行し挙動を観測)に大別される。サンドボックス上で実行し動作・通信を監視するのは動的解析の典型。
各選択肢の解説
- a:ハッシュ値照合は 静的解析(既知マルウェア識別)。
- b:サンドボックス実行+挙動観測=動的解析。正解。
- c:逆コンパイルによるコード解析=静的解析(リバースエンジニアリング)。
- d:拡張子とファイルヘッダ照合=静的解析(ファイル偽装検出)。
覚え方・ひっかけ注意
「動的=動かす/静的=動かさない」。サンドボックス=動的解析の定番ツールと暗記。動的解析は短時間で振る舞いが分かるが、解析回避機能(VM検知・スリープ)を持つマルウェアもあり、静的解析と併用するのが実務の定石。
理論的背景
動的解析の中核はサンドボックス(隔離仮想環境)。Cuckoo Sandbox、Joe Sandbox、ANY.RUN、VMRayなどが代表。解析項目はAPIコール(Win32 API・syscall)、ファイル/レジストリ操作、プロセス生成、ネットワーク通信(C2接続先・DGAドメイン)、永続化(Run Key、スケジュールタスク)、権限昇格(UAC bypass)等。これらはMITRE ATT&CKの戦術・技術にマッピングして報告される。
対する静的解析は (1) 表層解析(ハッシュ・ヘッダ・PEセクション・インポートテーブル・YARAルール)、(2) 詳細解析(IDA Pro/Ghidra/x64dbgで逆アセンブル、難読化解除、暗号化文字列復号)に分かれる。
解析回避(Anti-Analysis)と対策
近年のマルウェアは仮想化検知(CPUID、レジストリキー、MAC OUI)、デバッガ検知(IsDebuggerPresent、PEB.BeingDebugged)、スリープ/時限実行、環境チェック(ドメイン参加、特定言語)、Sandbox固有プロセス検知などで動的解析を回避。対策として ベアメタルサンドボックス、Hypervisor隠蔽、Sleepパッチ、ユーザ操作シミュレーションが使われる。
実務での使われ方・関連規格
SOC運用ではEDRの自動Detonation(疑わしい添付を自動でサンドボックス送付)、TIP(脅威インテリジェンスプラットフォーム)でのIoC自動抽出(STIX)が標準。インシデント対応(NIST SP 800-61)の「分析」フェーズで動的・静的の両輪で実施。
試験での位置づけ
基本情報のセキュリティで「動的解析/静的解析の選択肢識別」は頻出パターン。応用情報・支援士では解析対象(PE/ELF/Office Macro/PowerShell/Living-off-the-Land)ごとの手法選定や、サンドボックス回避への対処まで問われる。
選択肢の発展補足
c の逆コンパイルは高級言語への変換、逆アセンブルはアセンブリへの変換と区別。JavaScript/PowerShellなどスクリプト系はソース復元が比較的容易だが、ネイティブバイナリは難度高い。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 2022 サンプル問題 問35/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。