EDR-Freeze — EDRを「凍結」させる実験ツールの解説
概要
EDR-Freezeは、Windowsのエラー報告関連コンポーネント(WerFaultSecure)に存在するとされる脆弱性を利用して、EDRやアンチマルウェア製品のプロセスを“coma(昏睡)”状態に陥らせることを目的とした実験的ツールです。特徴としてはカーネルモードの脆弱ドライバを持ち込む手法(BYOVD)を使わず、ユーザーモードだけで動作する点にあり、最新のWindows環境での有効性が検証されています。本記事はリポジトリの内容を技術的背景や防御的観点から整理し、リスクと緩和策を中心に解説します。
リポジトリの統計情報
- スター数: 12
- フォーク数: 2
- ウォッチャー数: 12
- コミット数: 4
- ファイル数: 11
- メインの言語: C++
主な特徴
- ユーザーモードのみで動作し、追加ドライバ不要でEDRプロセスを停止させることを試みる実験的ツール。
- WerFaultSecureに由来する脆弱性を利用する点が最大の特徴。
- 最新Windows(例: Windows 11 24H2)での動作確認が行われている旨が明記されている。
- PoC目的のリポジトリであり、使用は倫理的・法的側面に配慮する必要がある。
技術的なポイント
EDR-Freezeは「ユーザーモードでEDRを無効化しうる可能性」を示す概念実証(PoC)的な位置づけです。従来、強力なセキュリティ製品のプロセスを停止・操作するためにはカーネル権限や脆弱ドライバの持ち込み(BYOVD)など高度な手段が必要とされてきました。本ツールはそれとは対照的に、OSのユーザーモードに存在するコンポーネントの弱点を突いて、セキュリティ製品の動作を阻害するアプローチを採っています。
この種の手法は「攻撃面の移動」を示唆します。すなわちカーネルに到達しなくても、上位レイヤの誤設計や欠陥によりセキュリティ制御が回避され得るという点です。EDRやアンチウイルスは多層防御としてプロセス保護やサービス監視、自己復旧機能を持ちますが、ユーザーモードでの異常な例外処理やエラーハンドリングの欠陥があれば、サービスを無効化するケースが生じ得ます。
防御的な示唆としては、以下が重要です:第一にOSベンダーとセキュリティベンダーはエラー報告や例外処理周りの境界条件を精査し、異常に対して堅牢な設計を採ること。第二にEDR側はプロセスの死活監視だけでなく、自己防御の多様化(別プロセスによる監視、外部監視機構との連携など)を行うこと。第三に企業側では原則として最新のセキュリティアップデートと脆弱性情報の追跡を行い、潜在的な誤用に対する検出ルールやログ監視を強化することが推奨されます。
なお、本記事は教育的・分析的な観点からリポジトリの意義や防御上の対応を論じるものであり、実際の攻撃手順や実装の詳細、コマンド例などの具体的な再現方法には踏み込んでいません。こうした詳述は悪用に直結するため省略します。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitattributes: file
- .gitignore: file
- EDR-Freeze.cpp: file
- EDR-Freeze.sln: file
- EDR-Freeze.vcxproj: file
…他 6 ファイル
まとめ
ユーザーモードの脆弱性でEDRが影響を受け得ることを示す実験的PoCであり、防御側に重要な示唆を与えるプロジェクト。
リポジトリ情報:
- 名前: EDR-Freeze
- 説明: EDR-Freeze is a tool that puts a process of EDR, AntiMalware into a coma state.
- スター数: 12
- 言語: C++
- URL: https://github.com/TwoSevenOneT/EDR-Freeze
- オーナー: TwoSevenOneT
- アバター: https://avatars.githubusercontent.com/u/183250995?v=4
READMEの抜粋:
EDR-Freeze
This is a tool that exploits the software vulnerability of WerFaultSecure to suspend the processes of EDRs and antimalware without needing to use the BYOVD (Bring Your Own Vulnerable Driver) attack method.
EDR-Freeze operates in user mode, so you don’t need to install any additional drivers. It can run on the latest version of Windows.
The experiment was conducted with the latest version of Windows at the time of the project creation: Windows 11 24H2