はじめに:EDR-Freezeとは何か
「EDR-Freeze」は、エンドポイント検出応答(EDR)やアンチウイルスプロセスを一時的な「昏睡状態」に陥れる概念実証ツールです。脆弱なドライバーをインストールする代わりに、Windowsの正規コンポーネントであるWerFaultSecure.exeとMiniDumpWriteDump APIを悪用し、ユーザーモードからセキュリティプロセスを一時停止させます。
このツールは、適切なタイミングでスレッドを競合させることで、ターゲットのすべてのワーカー・スレッドを停止させ、テレメトリーを中断させつつ、プロセス自体は稼働状態に保ちます。設定可能な遅延の後、プロセスは通常通り再開され、多くの場合、アラートを発することなく動作します。この手法は、多くのエンドポイント防御を回避できるステルス性の高い攻撃として注目されています。
フリーズ手順の技術的メカニズム
攻撃は、EDR-Freeze_1.0.exeがWindowsエラー報告の傘下でWerFaultSecure.exeを起動するところから始まります。WerFaultSecure.exeはdbghelp.dllをロードし、MiniDumpWriteDumpを呼び出します。通常、クラッシュダンプの作成に使用されるMiniDumpWriteDumpは、ダンプ作成中にターゲットプロセス内のすべてのスレッドを一時停止させます。
ヘルパープロセスは、ターゲットのスレッドに直接ハンドルを渡すことで、MsMpEng.exe(Windows Defenderなど)のようなセキュリティエンジンを一時停止させ、後に再開させます。Process Explorerでは、WerFaultSecure.exeとMsMpEng.exeの両方が「一時停止」として表示されます。このような組み込みコンポーネントの利用が、この技術をステルス性の高いものにし、多くのエンドポイント防御を迂回することを可能にしています。
制御されたメモリキャプチャは、フリーズの明確な兆候を示します。MemProcFSを使用すると、3つのMsMpEng.exeスレッド(TID 764、4244、7980)が08:35:08から08:35:31の間に一時停止のタイムスタンプを示し、その後08:35:41にWerFaultSecure.exeスレッドが一時停止していることが確認できます。これらの時間的に一致したイベントは、ヘルパープロセスが一時停止を主導したことを裏付けています。
Volatilityのwindows.handlesプラグインは、WerFaultSecure.exeがMsMpEng.exeに対してアクセス権0x18C4AのPROCESS_SUSPEND_RESUMEハンドルを、複数のスレッドに対してTHREAD_ALL_ACCESSハンドルを開いていたことをさらに明らかにしています。これらのハンドルが、正確なスレッドの一時停止と再開操作を可能にしています。
フォレンジック痕跡と検出方法
EDR-Freezeの実行中、両プロセスはユーザーのデスクトップフォルダにあるt.txtというファイルに一時的にファイルハンドルを開きます。この一時ファイルは、エンコードされたダンプデータを渡すために使用され、その後削除されます。これは本質的に悪意のあるものではありませんが、貴重なフォレンジックの痕跡となります。
WerFaultSecure.exeのインポートアドレステーブル(IAT)を調べると、dbghelp.dllからのMiniDumpWriteDumpの静的インポートが確認できます。このインポートは、ヘルパーバイナリがミニダンプをトリガーし、それによってスレッドをオンデマンドで一時停止できることの証拠となります。調査官は、t.txtの残骸とそのタイムスタンプ、およびMiniDumpWriteDumpの使用を示すIATエントリを保存すべきです。
静的YARAルールは、WerFaultSecure.exeをターゲットとし、以下の主要なコマンドラインフラグを検出できます。
- “/pid”
- “/tid”
- “/encfile”
- “/cancel”
また、CreateFileW、CreateEventW、MiniDumpWriteDumpのインポートも検出対象となります。テストでは、これらのルールはヘルパープロセスと一時停止されたMsMpEng.exeスレッドの両方を特定し、クリーンなイメージではヒットしませんでした。これらのルールをエンドポイントハンティングのワークフローに組み込むことで、テレメトリーが抑制されている場合でもEDR-Freezeの活動を検出できます。
結論:防御側への影響
EDR-Freezeは、攻撃者がカーネルエクスプロイトなしに、信頼されたOSコンポーネントを武器化してセキュリティツールを無効化できることを示しています。プロセスを可逆的な昏睡状態に陥れることで、攻撃者は重要なフェーズでステルス性を獲得します。防御側は、このような一時的な一時停止を捕捉するために、メモリフォレンジックと行動分析による調査を拡大し、インシデント対応中のセキュリティ制御の可視性を確保する必要があります。
元記事: https://gbhackers.com/edr-freeze-technical-mechanics-exposed/