T1014 - Rootkit
概要
Adversaries may use rootkits to hide the presence of programs, files, network connections, services, drivers, and other system components. Rootkits are programs that hide the existence of malware by intercepting/hooking and modifying operating system API calls that supply system information. (Citation: Symantec Windows Rootkits)
Rootkits or rootkit enabling functionality may reside at the user or kernel level in the operating system or lower, to include a hypervisor or System Firmware. (Citation: Wikipedia Rootkit) Rootkits have been seen for Windows, Linux, and Mac OS X systems. (Citation: CrowdStrike Linux Rootkit) (Citation: BlackHat Mac OSX Rootkit)
Rootkits that reside or modify boot sectors are known as Bootkits and specifically target the boot process of the operating system.
管理者によるコメント
T1014(Rootkit:ルートキット)は、攻撃者がシステム内での存在を隠蔽するために使用する、最もステルス性の高い手法の一つです。
1. 概要
Rootkitとは、OSの標準的な機能(プロセス一覧、ファイル一覧、ネットワーク接続など)を乗っ取り、攻撃者の活動に関連する情報をユーザーやセキュリティツールから見えないように改ざんする手法です。
攻撃者が実現できること
- 究極の隠蔽: 特定のファイル、プロセス、レジストリ、ネットワークポートをOSレベルで「存在しないもの」として扱うよう細工します。
- 永続性の確保: システムの深い場所に潜り込むため、通常のアンチウイルスソフトでは検知も削除も困難になります。
- 特権の維持: カーネルモードで動作する場合、システム上のあらゆる操作が可能になります。
2. 攻撃の流れ
ルートキットには「ユーザーモード」と「カーネルモード」の2種類がありますが、ここではより強力なカーネルモードの流れを例に挙げます。
- 侵入と特権昇格: 脆弱性などを利用してシステムに侵入し、管理者権限(SYSTEM権限)を取得します。
- ドライバのロード: 悪意のあるカーネルドライバをシステムにロードします。最近のWindowsでは署名が必要なため、脆弱性のある正当なドライバを悪用する「BYOVD (Bring Your Own Vulnerable Driver)」手法がよく使われます。
- フック(Hooking)の実行: OSのシステムコール(例:
NtQuerySystemInformation)をフックし、出力結果を書き換えます。
- 例:「全プロセスを表示せよ」という命令に対し、自分のプロセスだけを除外して返答させる。
- 潜伏: ツールがタスクマネージャーやエクスプローラーに表示されない状態で、バックドア通信などを行います。
3. 防御・対策
- 署名付きドライバの強制: Windowsの「ドライバ署名の強制」を有効にし、未署名のドライバのロードを阻止します。
- セキュアブート (Secure Boot): OSが起動する前に信頼できないコード(VBR/MBRルートキットなど)が実行されるのを防ぎます。
- BYOVD対策: 脆弱性が確認されている古いドライバのリスト(Microsoftのドライバブロックリストなど)を最新に保ちます。
- メモリ整合性の保護: Windowsの「コア分離(HVCI)」などの機能を使用して、カーネルメモリへの不正な書き込みを防止します。
- 整合性チェック: システムファイルやカーネルオブジェクトが改ざんされていないか、オフラインスキャンや専用のルートキット検知ツールで確認します。
4. 重要ポイント
- 「嘘をつくOS」を作り出す: セキュリティソフトがOSに「怪しいファイルはあるか?」と尋ねても、OS自体がルートキットに支配されているため「何もありません」と嘘の回答を返します。
- 検知の難しさ: OSが汚染されているため、そのOS上で動いているアンチウイルスソフトも騙されます。OSの外側(メモリダンプ解析やディスクを別マシンに繋いでの解析)からの調査が必要になることが多いです。
5. 関連する主なCWE
- CWE-822 (Untrusted Pointer Dereference): 信頼できないポインタの参照。カーネル内での不適切なメモリ操作が悪用されるケース。
- CWE-73 (External Control of File Name or Path): 攻撃者がドライバのパスを操作して読み込ませるケース。
- CWE-264 (Permissions, Privileges, and Access Controls): 権限管理の不備を利用してカーネル空間へアクセスされることに関連。
6. 関連する代表的なCVE
ルートキット自体は「機能」ですが、それをインストールするために使われる「ドライバの脆弱性」がCVEとして多く報告されています。
- CVE-2019-16098 (Micro-Star MSI Afterburner): 署名済みドライバに脆弱性があり、攻撃者がカーネルメモリを読み書きできた例。BYOVD攻撃によく悪用されます。
- CVE-2021-21551 (Dell Drivers): デルのドライバにおける特権昇格の脆弱性。ルートキットの展開に悪用可能なレベルの権限を与えてしまうものでした。
- CVE-2024-21338: Windowsカーネルの脆弱性。Lazarusグループなどがルートキットをインストールするために悪用した最新の事例の一つです。
分析
この攻撃手法を利用する脅威アクター
関連する CVE
攻撃手法 – 脅威アクター Graph
← Technique一覧に戻る
← Tactics一覧に戻る