File-Binding、Process-Binding、Silo-Bindingという手法は、Windowsのファイルシステム仮想化機能を悪用し、セキュリティ製品には信頼されたファイルを見せかけつつ、マルウェアを検知されないまま実行させます。
すでにWindowsマシンの管理者権限を持つ攻撃者は、脆弱なドライバを悪用したり信頼済みバイナリを改変したりすることなく、エンドポイントセキュリティをすり抜ける新たな手口を手にしています。
Bitdefenderの研究者たちは、正規のファイルシステム仮想化機能であるWindows Bind Linksを悪用し、クリーンなファイルでセキュリティツールの目をくらませながら悪意あるファイルを検知されずに実行させる3つの手法について警告しています。
研究者らは、水曜日の公開に先立ちCSOに共有されたブログ記事の中で、これらの手法は「EDRセンサーを無力化し、AMSIやAppLockerといったWindows組み込みの防御機構を回避する」ために使えると述べています。File Binding、Process-Binding、Silo-Bindingと名付けられたこれらの手法は、WindowsのBind Filterドライバである「bindflt.sys」がメモリ内でファイルパスをリダイレクトする仕組みを悪用するものです。
Microsoftは、この手法を悪用するには管理者権限が必要であることを理由に、これらの問題を深刻度「低」と評価したと伝えられていますが、Bitdefenderはその脅威性を、Bring Your Own Vulnerable Driver(BYOVD)攻撃と比較することでその重要性を主張しています。
Microsoftは、CSOのコメント要請に対し、直ちには回答しませんでした。
一つの弱点から生まれる3つの攻撃経路
Bitdefenderの調査は、Windows Sandbox、Windowsコンテナ、ストアアプリケーションなど、正規の仮想化シナリオ向けに設計されたWindows機能であるBind Linksに焦点を当てています。Bind Linksは完全に「bindflt.sys」内部で動作し、目に見えるファイルシステムオブジェクトを作成したり元のファイルを変更したりすることなく、あるファイルパスを別のパスへ透過的に解決できます。
Bitdefenderは、攻撃者がこの機能を段階的に武器化できることを実証しました。
1つ目の手法であるFile-Bindingは、信頼されたDLLやファイルのパスを攻撃者が制御する代替ファイルへとリダイレクトします。研究者たちは、PowerShellが正規のamsi.dllを読み込んでいるように見えても、実際にはBind Linkによって、同一の関数をエクスポートしつつマルウェアスキャンをひそかに無効化する悪意あるDLLが読み込まれる様子を示しました。
Process-Bindingは、この概念を実行可能ファイルにまで拡張したものです。研究者らによれば、この場合Windowsは「winever.exe」のような信頼されたプログラムが実行されていると報告する一方で、オペレーティングシステムは実際にはcmd.exeなど別のバイナリを実行しています。多くのセキュリティ製品は許可リストやシグネチャ、プロセスの識別に実行ファイルのパスを利用しているため、この食い違いによってセキュリティポリシーとアナリストの双方を欺くことが可能になります。
3つの手法のうち最も高度なSilo-Bindingは、Windowsコンテナの分離技術であるWindowsサイロを利用し、隔離環境の内側と外側とで異なるファイルシステムの見え方を提示します。研究者らは、サイロ内では信頼されたアプリケーションとしてマルウェアが実行される一方、サイロの外側で動作するセキュリティツールにはそれが正規のファイルとして読み取られてしまう可能性を実証しました。
Bitdefenderは、AppLockerやWindowsファイアウォール、Sysmonに対する回避を実証したほか、信頼されたプロセスの身元を装ってInvoke-Mimikatzを実行し検知を回避することにも成功しています。
侵害後の攻撃経路となり得る脅威
研究者らは、Microsoftによる深刻度「低」という評価に触れ、これらの手法はリモートコード実行の脆弱性ではなく、侵害後の検知回避攻撃として効果を発揮するものだと指摘しています。
「攻撃者がマシン上で管理者アクセスを一度でも得てしまえば、Windows 10 RS4以降とWindows 11のすべてのシステムがこの手法にさらされます」と研究者らは述べています。「標準的なプロセス通知ルーチンが返すイメージファイルのパスを信頼しているすべてのAVおよびEDR製品が影響を受けます」。
Bitdefenderはまた、Docker Desktopに関連する権限昇格のシナリオについても開示しており、「docker-users」グループのメンバーがBind Linksを利用してSYSTEM権限に到達できる可能性があるとしています。
この開示を受けて、Dockerは同グループの権限が持つセキュリティ上の意味合いを明確にするため、ドキュメントを更新したと伝えられています。
Windows 24H2ではBind Linkの作成をブロックできる拒否権メカニズムが導入されていますが、研究者らはこれを部分的な緩和策にすぎないと説明しています。というのも、この仕組みは新しいシステムに限られ、特定のシナリオでしか適用されない上、回避することも可能だからです。
その代わりとして研究者らは、プロセスのパスを信頼するのではなく実体となるファイルの実際の場所を解決すること、ハッシュ計算やスキャンのためにファイルを再度開く際には毎回ファイルの正体を再検証すること、そしてサイロ単位の悪用を検知するために有効なBind Linkのマッピングを列挙することを推奨しています。