はじめに
O'Reilly Japan社出版の『詳解インシデントレスポンス』を読んで学んだ内容を、自分なりに整理してまとめます。
本記事は自分自身の復習を目的に作成したメモをQiita用に加工したものですが、本書の内容をできるだけ噛み砕いて整理しています。これから書籍を読む方の事前全体像を把握するための参考にもなれば幸いです。
全体像
本書では、インシデント対応を以下の5つのフェーズに分けて体系的に説明しています。
- 準備(Preparation): インシデントが起きる前の備え
- トリアージ(Triage): 調査対象を適切に絞り込む
- 保全(Preservation): 証拠を壊さずにデータを取得する
- 解析(Analysis): タイムラインや根本原因を追究する
- 改善(Improvement): 再発防止とプロアクティブな防御へ繋げる
インシデント対応は「調査して終わり」ではなく、最後の「改善」まで含めて初めて完了します。
各フェーズの具体的な実施内容
| フェーズ | 実施内容(本書で扱われる主なテーマ) |
|---|---|
| ① 準備 | 手順整備、人材育成、ツール準備、ベースライン把握、机上演習・サイバー演習 |
| ② トリアージ | 被害範囲の特定、優先順位付け、疑義端末の抽出、IOCによる迅速なスクリーニング |
| ③ 保全 | ロカールの交換原理、揮発性・不揮発性情報の取得(メモリ、ディスク、ログ) |
| ④ 解析 | 時系列解析、ネットワーク・イベントログ・メモリ・マルウェア解析、ディスクフォレンジック、横断的侵害の追跡 |
| ⑤ 改善 | 根本原因の対策、再発防止、敵対的エミュレーションによる検証、脅威ハンティング |
各フェーズの説明
① 準備(Preparation)
インシデント対応は、インシデントが発生してから始まるものではありません。
発生前の準備が、その後の対応品質を大きく左右します。
1. プロセスの整備
インシデント発生時に「誰が何をすべきか」を明確にしておきます。
- 誰が指揮を執るのか(インシデントマネージャー)
- 誰が技術調査を担当するのか(アナリスト・フォレンジッサー)
- 誰が経営層へエスカレーションするのか
これらを事前に決めておかないと、「調査の重複」「誰も対応しないタスクの発生」「判断の遅延」を引き起こします。連絡体制や休日・夜間対応のルールを含めたエスカレーションフローの整備が不可欠です。
2. 人材育成
インシデント対応では、高度な技術力だけでなく以下のソフトスキルが求められます。
- ヒアリング能力・コミュニケーション能力: 現場からのスムーズな情報収集は調査時間を大きく短縮します。常日頃から有効な人間関係を築いておくことも重要です
- 報告・説明能力・判断力: 経営層や外部へ状況を正しく伝える力が必要です
技術とプロセスの両面を鍛えるため、Tabletop Exercise(机上演習)や、より実戦的なサイバー演習、攻撃と防御を融合させたPurple Team演習などを定期的に実施することが推奨されています。
3. 技術的な準備
技術面では、日頃からセキュリティレベルを維持する「サイバーハイジーン(衛生管理)」が基本となります。
- OS・ソフトウェアのパッチ適用、脆弱性管理、資産管理の徹底
- EDRの導入、適切なログ取得設定、バックアップの確保
また、平常時の状態である「ベースライン(正常状態)」を把握しておくことが非常に重要です。
「通常起動しているサービス」「普段通信する宛先」「ホスト名の命名規則」「インストール済みソフトウェア」を把握しておくことで、C2サーバーへのビーコン通信などの異常を素早く検知できるようになります。
② トリアージ(Triage)
トリアージとは、限られた時間・人員・コストの中で、どこから優先的に調査すべきかを判断する工程です。もともとは災害医療の概念ですが、インシデントレスポンスでも極めて重要な役割を果たします。
1. 疑義端末の抽出
マルウェア感染が確認された「初期確定端末」以外に、侵害されている可能性がある端末を被疑端末(疑義端末)と呼びます。
例えば、10台ある端末のうち1台で感染が確認された場合、「同じメールを受信している」「同じ不審なサーバーへアクセスしている」「同じネットワークセグメントに所属している」といった共通点を持つ残りの端末も、被害を受けている可能性を否定できません。これらの端末をどこまで詳細調査するかを判断します。
2. ビジネス継続(BC)とコストのバランス
理想は全端末をネットワークから隔離して徹底調査することですが、現実には業務への影響(事業継続性)も考慮しなければなりません。「業務を停止してでも今すぐ調査すべき端末」と「業務を継続させながら並行して確認する端末」をシビアに切り分ける必要があります。
また、詳細なフォレンジック調査には膨大な時間と外部ベンダー費用(数十万〜数百万円規模)がかかるため、コスト面からも真に調査すべき端末を絞り込むトリアージ技法が求められます。
3. IOC(侵害の痕跡)を利用した効率的なスクリーニング
トリアージでは、IOC(Indicator of Compromise)を利用して、大量の端末から不審な挙動を効率よく絞り込みます。本書では以下のような重要な確認項目(IOC)が紹介されています。
- 不正な接続: C2(Command and Control)サーバーとの定期的な通信、海外への不審な通信、一定間隔で繰り返されるビーコン通信の有無
- 不審なプロセス・DLL: ランダムなファイル名、親子関係が通常と異なるプロセス、Microsoftのデジタル署名がないシステムプロセスの有無。また、正規DLLへの偽装やDLLインジェクションの確認
- 不審なポート: 普段利用しないポートや、不審なプロセスがLISTEN状態にしている不明なポートの有無
- 不審なサービス: 永続化(Persistence)の手段として悪用されやすい、Users配下やDownloads配下の実行ファイルから起動する自動起動サービス
- 不審なアカウント: 侵入後に管理者権限を維持するために隠れて新規作成されたローカル/ドメインアカウントや、不正な権限昇格の有無
-
不審なファイル: 攻撃者がよく利用するフォルダ(
Temp,Downloads,ProgramData,AppData等)に置かれた不審なファイル。ファイル名だけでなく、ハッシュ値や作成日時も確認 -
永続化メカニズム(Autostart): 再起動後もマルウェアが実行されるように仕込まれた
Run/RunOnceキー、スタートアップフォルダ、スケジュールタスク、WMI Event Subscriptionなどの調査
補足:svchost.exe を用いたプロセス偽装の例
Windowsの標準プロセスである svchost.exe は、通常 C:\Windows\System32\svchost.exe から実行されます。
しかし、これが C:\Users\<ユーザー名>\Downloads\svchost.exe などから起動していた場合、マルウェアによる偽装の可能性が極めて高くなります。
本書では、System32下の正規プロセスの親プロセスID(PPID)が 592 であるのに対し、Downloads下の不正プロセスのPPIDが 6096 である実例が紹介されています。このように、「実行場所」「親プロセス」「通信先」「署名」など、単一の情報ではなく複数の要素を組み合わせてトリアージを行う重要性が説かれています。
③ 保全(Preservation)
保全において最も重要なのは、「証拠を壊さないこと」です。その根底には法医学の基礎である「ロカールの交換原理」(現場に立ち入ることで何かを持ち込み、何かを持ち去る。つまり、不用意な操作は証拠を書き換えてしまう)という考え方があります。
1. 保全対象の優先順位(揮発性と不揮発性)
データには「電源を切ると消えてしまう情報(揮発性)」と「電源を切っても残る情報(不揮発性)」があり、インシデントレスポンスでは揮発性の高い情報から順番に取得するのが大原則です。
- 揮発性情報(最優先): メモリ(RAM)、実行中のプロセス、ネットワーク接続状態、ログオン中ユーザーの情報
- 不揮発性情報: ディスクイメージ、レジストリファイル、イベントログ、各種アーティファクト
2. 状況に応じたアプローチの選択
対象が一般的なPCなのか、停止できない基幹サーバーなのかによって、最適な保全手法を使い分ける必要があります。
- ローカルメモリ保全: 端末に直接アクセスしてメモリダンプを取得。暗号化の復号データやファイルレスマルウェアの痕跡を捉えるために不可欠
- リモートからのメモリ保全: 対象が遠隔地や仮想マシンの場合、PowerShell、RDP、WMICなどを介してリモート取得。ただし、接続自体が端末に変更を加える(ロカールの交換原理に触れる)ため、その影響を考慮する必要がある
- ライブメモリ解析: 大容量RAMを搭載した停止不可のサーバーにおいて、ダンプ取得中のメモリ変化によるデータの不整合を防ぐため、その場で稼働させたままメモリ内容を解析する手法
-
ディスク保全のバリエーション:
- デッドボックスイメージング: 端末の電源を落としてディスク全体を物理コピーする、最も証拠性の高い手法
- ローカル/リモート ライブイメージング: システムを稼働させたまま、ローカルまたはネットワーク経由でディスクイメージを取得。業務停止が許容されない環境で採用される
④ 解析(Analysis)
保全した各種データから、攻撃者が「いつ侵入し」「何を目的として」「どこまで侵害を広げたのか」というストーリーを時系列(タイムライン)で紐解いていく、インシデントレスポンスの核心となるフェーズです。
本書の第7章から第12章にかけては、攻撃者の行動を時系列で追い、影響範囲や根本原因を分析するための具体的な手法が詳細に解説されています。
1. ネットワーク解析(第7章・第12章)
Firewall、Proxy、DNSのログ、あるいはパケットデータ(PCAP)を分析し、ネットワーク内で発生したイベントを可視化します。特に、マルウェアが外部の攻撃者から指令を受け取るコマンド&コントロール(C2)通信を追跡し、どのような指示が飛び交っていたのか、外部へ重要データが持ち出されていないかを明らかにします。
2. イベントログ解析(第8章)
OSやアプリケーションが記録するシステムログ(Windowsイベントログなど)を精査します。不審なユーザーのログオン成否、不審なプロセスの生成、PowerShell等のスクリプト実行履歴、永続化のために作成されたWindowsサービスなどのアクティビティを時系列で網羅します。Sysmon等の拡張ログがあると、より強力な解析が可能になります。
3. メモリ解析(第9章)
保全したメモリダンプ(RAM)から、稼働中だったプロセス、ロードされていたDLL、確立されていたネットワーク接続などを抽出します。これにより、ディスク上に実体ファイルを作らない「ファイルレスマルウェア」や、プロセスインジェクションによって正規プロセスに隠蔽された攻撃コードの挙動を暴くことができます。
4. マルウェア解析(第10章)
端末内で発見されたマルウェアの検体を抽出し、その特性や活動パターンを特定します。
コードをリバースエンジニアリングする「静的解析」と、隔離環境(サンドボックス)で実際に動かして通信先やファイルの挙動を見る「動的解析」を組み合わせ、インジケーター(通信先IP、ドメイン、暗号化方式等)を特定します。
5. ディスクフォレンジック(第11章)
ディスクのファイルシステム(MFT)や、OSの実行痕跡が残る様々なアーティファクト(Prefetch, Jump List, LNKファイル, レジストリなど)を深く分析します。攻撃者がファイルを「いつ作成し」「いつ実行したのか」の厳密なタイムスタンプを特定し、改ざんされたタイムラインを正確に復元します。
6. 横断的侵害(Lateral Movement)の分析(第12章)
攻撃者は最初に侵入した1台(足がかり)にとどまらず、ネットワーク内の他端末へと次々に侵害を拡大していきます。
本書では、攻撃者が内部移動で多用する PsExec, RDP, SMB, WMI, WinRM などのプロトコルやツールの利用痕跡を詳細に分析し、組織内における真の被害影響範囲(ブラインドスポットのない全体像)を特定する手法が詳述されています。
⑤ 改善(Improvement)
解析フェーズを経て「根本原因」と「影響範囲」が明らかになった後、同じ悲劇を繰り返さないためにシステムを強固にし、能動的な防御へと昇華させるフェーズです。
1. 根本原因の排除と封じ込め
侵害の引き金となった脆弱性を完全に塞ぎます。
- 未適用だったパッチの適用、不要なサービスの停止、特権アカウントの権限見直し
- 多要素認証(MFA)の導入、設定不備の修正、不足していたログ取得設定の有効化
2. 敵対的エミュレーション(疑似攻撃)による対策検証
せっかく導入した再発防止策も、本当に攻撃を防げるか検証しなければ意味がありません。
本書では、実際の攻撃者の戦術・技術(TTPs)をリアルに再現してシステムに擬似攻撃を仕掛ける「敵対的エミュレーション(Adversarial Emulation)」や、ペネトレーションテスト、Red Team演習の重要性が語られています。
これらのテストを通じて、実装したセキュリティコントロールが想定通りに機能するか、検知アラートが正しくSOCまで揚がるかを実戦形式で検証します。
3. プロアクティブな防御:脅威ハンティングへの移行
近年のインシデントレスポンスは、「アラートが鳴ってから受動的に動く(リアクティブ)」だけでは不十分であると指摘されています。
防御陣形を敷いた後は、セキュリティ機器の検知をすり抜けてシステム内に潜伏しているかもしれない未知の脅威を、防御側から能動的に探し出す「脅威ハンティング(Threat Hunting)」のアプローチが詳述されています。受動的なレスポンスから、能動的なプロアクティブ防御へシフトすることこそが、この改善フェーズのゴールです。
まとめ
インシデントレスポンスは、「準備 ➡ トリアージ ➡ 保全 ➡ 解析 ➡ 改善」という5つの強固なフェーズが有機的に繋がって初めて機能します。
本書を読んで最も強く印象に残ったのは、インシデントレスポンスの本質は単なる「システムの調査」ではなく、事前のサイバーハイジーンから、証拠を1ミリも毀損しない保全の作法、そして敵対的エミュレーションや脅威ハンティングを用いた『能動的な改善』までを包括した一大サイクルであるという点でした。
現場の限られた時間、予算、リソースの中で、ロカールの交換原理という「フォレンジックの理想」と、事業継続という「ビジネスの現実」のバランスをどう取るかという、実務者が直面するリアルな葛藤と判断基準が網羅されています。
読みやすい本ではないと思いますが、
CSIRTやSOC運用に関わるエンジニアにとっては非常に学びの多い一冊です。