はじめに: Elastic EDRの検出回避に新手法
セキュリティ研究者らは、モジュールロード中にコールスタックへ任意のモジュールを挿入する「コールガジェット」を活用した新技術を開発し、Elastic EDRの署名ベースの検出ルールを正常に回避することに成功しました。
Elastic EDRの透明性と検出メカニズム
Elastic社は、その検出ロジックとペイロードテストツールを公開する透明性ポリシーを採用しています。これにより、セキュリティコミュニティはEDRメカニズムをより深く理解し、その課題に取り組むことが可能になっています。多くのベンダーとは異なり、Elasticは検出ルールへのオープンなアクセスを許可しており、研究者は実際の回避技術をシミュレート・分析できます。
Elastic EDRの検出エンジンは、悪意のある活動の兆候をコールスタック分析に重点を置いています。特に、アンバックされた(メモリ上のみでディスクに存在しない)メモリ領域から開始される不審なモジュールロードは厳しく監視されます。これは、シェルコードインジェクションのような攻撃と強く関連しているためです。ネットワークモジュールがアンバックされたメモリからロードされるのを追跡する特定のルールは、コマンド&コントロール(C2)インプラントで使われる標準的な技術を特定するのに役立ちます。
従来の回避手法とElasticの対応
これまで、脅威アクターはコールスタックを操作することでEDR検出を回避する様々な方法を考案してきました。コールスタックスプーフィングやAPIプロキシといった技術はコミュニティ内で詳細に議論されてきました。しかし、Elasticはこれらの戦術を標的とする追加ルールを導入し、誤検知を減らしパフォーマンスを維持するために特定のシステムライブラリに焦点を当てて対応してきました。典型的な検出は、ntdll.dll|kernelbase.dll|Unbackedのようなコールスタックや、スプーフィングまたはプロキシされたコールを示す署名を検索するように設計されています。
「コールガジェット」を用いた新たな回避手法
今回発表された研究は、コールガジェットを使用してコールスタックに任意のモジュールを挿入し、Elasticの検出ルールが期待するパターンを破壊するという革新的な回避技術を導入しています。研究者は、現在EDR署名の標的となっていないシステムDLL内の制御可能なコール命令(ガジェット)を悪用することで、モジュールロード操作中に観測されるコールスタックを変更できます。
概念実証では、古いバージョンのdsdmo.dllに見つかった特定のコール-リターンガジェットが利用されました。ネットワークライブラリ(例: wininet.dll)のロード中にこのガジェットにジャンプすることで、挿入されたモジュールがコールスタックに現れ、署名を混乱させ、アラートのトリガーを防ぎます。その結果、以前は検出可能だった操作がEDRエージェントに気づかれずに実行されます。
影響と今後の展望
この発見は、シェルコードベースのネットワークモジュールロードに関連する特定の検出バイパスに対処するものです。Elastic EDRは、攻撃ライフサイクル全体を通じて悪意のある活動を検出するための多くの追加機能を提供しています。しかし、この技術は、回避と検出戦略の絶え間ない進化を浮き彫りにしています。研究者らはこの手法をElasticに責任を持って開示しており、Elasticは現在、この回避策に対処するために検出ルールを積極的に更新しています。この研究は、サイバー防御を継続的に強化するために、セキュリティコミュニティ内での継続的な協力と透明性の必要性を強調しています。
