Neowinは7月14日(米国時間)、「New Microsoft Defender update can let hackers totally fill your Windows 11 PC disk space - Neowin」において、Microsoft Defenderから重大な脆弱性が発見されたと報じた。
この脆弱性はセキュリティ研究者のChaotic Eclipse(別名:Nightmare-Eclipse)氏により発見された。同氏が発見したMicrosoft Defenderの脆弱性としては「RoguePlanet」が記憶に新しい。通常であれば、隔離時に作成されたゾーン識別子や一時キャッシュは削除されるため、ディスク容量は解放される。そこで研究者は、これらを削除できない状態にするエクスプロイトを開発した。
RoguePlanet修正後に新たな脆弱性を発見
Microsoftは7月8日、RoguePlanetと呼ばれるMicrosoft Defenderの権限昇格の脆弱性を修正する更新プログラムをリリースした。この更新プログラムはMicrosoft Defenderのアップデートとして配布され、Microsoft Malware Protection Engineをバージョン1.1.26060.3008に更新する。
このアップデートを調査した研究者は、新たに2つの問題を発見。1つは「特定の状況下で情報漏洩する不具合」とされ、現在は有効なエクスプロイトを開発中としている。
もう一方が今回の不具合で、Microsoft Defenderのファイルサイズの取り扱いの不備を突く攻撃手法とされる。攻撃者は特別な状況を作り出すことで、空き容量を使い切ることが可能と評価されている。
ディスク容量を枯渇させる攻撃手法
Microsoft Defenderを含む主要なセキュリティソリューションは、不正なファイルを発見すると自動的に隔離する機能がある。この隔離処理では巨大なファイルによるストレージの大量消費を回避するために、ファイルサイズに上限が設定されている。
研究者によると、このサイズチェックはNTFSの代替データストリーム(ADS: Alternate Data Stream)に記録されるゾーン識別子(Zone Identifier)には適用されないという。また、Microsoft Defenderは隔離時にゾーン識別子をローカルキャッシュするため、巨大なゾーン識別子を準備することでストレージの大量消費が可能とされる。
しかしながら、ゾーン識別子および一時的なキャッシュファイルは削除できる。単純にコピーを作成しても意味がないため、研究者はこの巨大なゾーン識別子をロックするエクスプロイトを開発した。
具体的には巨大なゾーン識別子を持つ悪意のあるファイルをSMBサーバ上に配置。ファイルの読み取りを故意にブロック(無視)し、接続を維持する特殊なサーバーを構築した。
ユーザーがSMBサーバに接続すると、Microsoft Defenderが悪意のあるファイルを検出する。次にファイルおよびゾーン識別子の隔離を実行するが、ゾーン識別子の隔離のみ進行し、ファイルは読み取れないため隔離が進行しない。この結果、Microsoft Defenderの隔離処理はキャッシュしたゾーン識別子を保持したまま停止し、ディスク容量が解放されなくなる。
研究者はWindows 11バージョン25H2およびWindows Server 2025で、問題の再現に成功したと発表。SMBサーバにアクセスさせることで、ストレージ全体を完全に消費できると明らかにした。
現時点での緊急性は低い
エクスプロイトの実用には1つ課題が残されている。悪意のあるサーバにアクセスする際、Windowsは認証を求めるため気づかれる可能性が高いという問題だ。
今回の手法はサービス運用妨害(DoS: Denial of Service)に相当するもので、ソーシャルエンジニアリング攻撃の併用は適さず、ひっそりと攻撃を完遂する必要がある。研究者はこの課題についてWebDAVの利用で回避できる可能性を示唆しているが、実験では成功しなかったという。
この攻撃手法の発展の可能性は未知数だが、少なくとも即座に悪用される可能性は低いとみられる。Microsoft Defenderの利用者は見覚えのないSMBサーバやネットワークドライブへの接続要求には応じないことが望ましい。
