Last Updated on 2024-08-08 09:47 by admin
Windows fibersはWindows OSの一部で、ユーザーモードで存在するコード実行経路である。EDRプラットフォームはこれをほとんど無視しており、攻撃者が悪意のあるペイロードを実行する際に利用可能である。fibersはスレッドに似ており、古いレガシーアプリケーションや一部のWindowsプロセスで使用されているが、EDRエージェントによる監視や検出を受けない。
Poison FiberとPhantom Threadという2つの新しいコード実行技術のPoCが存在する。Phantom Threadはコールスタックマスキングを用い、メモリスキャンがfibersを標的にするのを防ぐ。Poison Fiberは実行中のWindowsプロセスを列挙し、使用されているスレッドとfiberを調べ、休止中のfiberにペイロードやシェルコードを注入する。
fibersはセキュリティチームにとって重要な攻撃ベクトルであり、既存のオープンソースのfiber実行手法には改善の余地がある。成熟したEDR製品の実装と新たな攻撃手法に対する継続的なテストが重要である。また、レッドチームと協力し、攻撃者が使用するオープンソースのfiber手法について調査し、その情報を研究チームやEDR製品開発者にフィードバックすることが推奨される。
【ニュース解説】
Windows OSのあまり知られていないコンポーネントである「fibers」を利用した2つの新しいコード実行技術、「Poison Fiber」と「Phantom Thread」が、セキュリティ研究者によって開発されました。これらの技術は、エンドポイント検出応答(EDR)プラットフォームを回避して、悪意のあるコードやマルウェアをPCに密かに展開することを可能にします。
Windowsのfibersは、OSやアプリケーションからコードを実行するために使用される標準的な「スレッド」とは異なる代替手段です。fibersは、スレッド内に存在し、より小さく軽量なバージョンとして機能します。これは、CPUがより少ないコアを持っていた時代に開発され、限られたスレッド数で作業負荷を分割し、プロセスをより効率的にするための方法でした。しかし、コンピュータの性能が向上するにつれて、fibersはほとんどのシナリオで冗長となり、その存在はセキュリティチームによって見過ごされがちになりました。
「Phantom Thread」と「Poison Fiber」の技術は、fibersのこの特性を利用しています。Phantom Threadは、fibersをスレッドとして偽装し、メモリスキャンがfibersを標的にすることを防ぎます。一方、Poison Fiberは、実行中のWindowsプロセス内のスレッドが使用しているfibersを特定し、休止中のfiberに悪意のあるペイロードを注入することで、アプリケーションが実行をトリガーするようにします。
これらの技術は、セキュリティチームが攻撃ベクトルとして認識すべきものであり、既存のオープンソースのfiber実行手法を改善する可能性があります。成熟したEDR製品の実装と、これらの新しい攻撃手法に対する継続的なテストが重要です。また、レッドチームと協力して、攻撃者が利用しているオープンソースのfiber手法について調査し、その情報を研究チームやEDR製品開発者にフィードバックすることが推奨されます。
この技術のポジティブな側面としては、レガシーアプリケーションのサポートや、異なるオペレーティングシステムからのプログラムの移植を容易にする点が挙げられます。しかし、潜在的なリスクとしては、悪意のあるアクターがこの技術を利用して、検出を回避しながらマルウェアを展開することが可能になる点です。規制に与える影響としては、セキュリティソフトウェアの開発者がこのような攻撃手法を検出し、防御するための新たな方法を模索する必要があることが挙げられます。将来的には、この技術に対するより深い理解と、それを悪用する手法に対する効果的な対策が開発されることが期待されます。
from Sneaky Shellcode: Windows Fibers Offer EDR-Proof Code Execution.