Sterra Security Tech Blog

株式会社ステラセキュリティの公式技術ブログです

真実と幻想とEDRバイパス概覧

取締役CTOの小竹(aka tkmru)です。 著名なセキュリティ製品であるEDRは、残念ながら万能ではありません。 今回は、世界各地のセキュリティカンファレンスで頻繁に新しいテクニックが発表されており、ホットな分野である「EDRバイパス」の概要を紹介します。

はじめに

今日の企業において、従業員が使用する端末に対して、EDR(Endpoint Detection and Response)を導入するというのは標準的な対策となっています。 何らかの攻撃に成功して、企業内の端末に侵入できても、何も配慮していないとマルウェアEDRにブロックされます。 しかし、高度な攻撃者はEDRによる検知を回避・迂回してきます。 EDRを迂回・回避するテクニックはEDR バイパス(Bypass)またはEDR Evasionと呼ばれます。

EDRを回避する技術をなぜ知るべきなのか

最新のマルウェアの多くがEDRバイパス機能を備えています。 EDRの弱点を把握していなければ、ペネトレーションテストでは適切な評価ができず、セキュリティ対策の設計においては過度にEDRを信頼してしまい、現実の脅威に対応できなくなります。

そのため、ペネトレーションテスターやインシデントレスポンダーといったエシカルハッカーにとっても、EDRバイパスを理解しておくことは大切です。 この記事は、攻撃を助長するものではありません。

攻撃者がマルウェアを実行させるまでのシナリオ

攻撃者が標的企業のシステムに侵入する手法の1つに、ソーシャルエンジニアリングを駆使して従業員を欺き、マルウェアを実行させる手法があります。 ここでは、著名な攻撃グループであるLazarusがスペインの航空宇宙企業を標的にした事例を紹介します。

Lazarusの攻撃者は採用担当者を装い、SNSやメールで標的の企業の従業員に接触しました。 そして、「コーディングテスト」と偽ってマルウェアを送りつけ、実行させました。 転職を希望している方であれば、LinkedInなどで大企業からスカウトメッセージが来たら、対応してしまう方も多いでしょう。

  1. SNSや電子メールを利用し、標的企業の従業員にフィッシングメールを送信
  2. 採用担当者になりすました攻撃者がコーディングテストに偽装したマルウェアを配布
  3. コーディング課題だと思った従業員がマルウェアを実行

EDRバイパスの主なカテゴリ

EDRをバイパスする技術は多岐にわたりますが、主に次の4つのカテゴリに分類できます。 これらを組み合わせることで、検知を回避する可能性が高まります。

  • EDRを避ける
    • プロキシ経由で通信するなどして、EDRの監視から逃れる。
  • 既存の環境と同化させる
    • 正規の署名を持つアプリケーションを悪用するなどして、正当な活動に見せかける。
  • EDR自体を改ざんする
    • EDRプロセスのメモリを改ざんするなどして、EDR自体の機能を停止させる。
  • 監視されていない場所を用いる
    • EDRの監視が及ばない領域を利用して活動する。

ケーススタディで見るEDRバイパス手法

ここでは、代表的なEDRバイパス手法を2つのケーススタディを通して解説します。

1. Windows Filtering Platformの悪用

Windows Filtering Platformとは?

Windows Filtering Platform(以下WFP)は、Windowsに標準で組み込まれているネットワークフィルタリング機能です。 開発者は、IPアドレス、ポート、プロトコル、アプリケーションなどに基づいてネットワークトラフィックを監視・ブロックするカスタムルールを作成できます。 ファイアウォールアンチウイルス製品など、多くのセキュリティ製品で利用されています。

攻撃手法

攻撃者はWFPを悪用し、EDRのプロセスから発信される通信を遮断するフィルタを作成します。 これにより、EDRがアラートをサーバへ送信するのを防ぎ、事実上その機能を無力化します。

EDRSilencerEDRPrisonがこの手法を実装したツールとして知られています。 また、EDRNoiseMakerというEDRの通信をブロックしているWFPフィルタの存在を検知するためのツールも存在します。

2. 脆弱なカーネルドライバを悪用 (BYOVD)

ドライバとは、OSがPCに接続されたハードウェアと通信するためのソフトウェアであり、OSの中でも特に高い権限(カーネルレベル)で動作します。 攻撃者は、正規の署名を持つドライバに存在する既知の脆弱性を悪用することで権限昇格を行い、EDRをバイパスしようとします。

攻撃手法

具体的には、次のステップで攻撃が進行します。

  1. 脆弱性を持つ署名済みドライバをインストールする。
  2. ドライバの脆弱性を用いて、ドライバに任意のコードを注入し、権限昇格を行う。
  3. カーネルのメモリを変更し、EDRによって設置されたフックを削除する。

攻撃対象のPCに、脆弱性を持つドライ-バを持ち込んで(Bring Your Own)インストールすることから、この手法は「Bring Your Own Vulnerable Driver(BYOVD)」と呼ばれています。 この手法の利点は、侵害したPC内で権限昇格の脆弱性を新たに探す必要がなく、ツール化されていて容易に実行できる点です。 脆弱なドライバの情報はLOLDriversでまとめられています。

MicrosoftのBYOVD対策

Microsoft社は、Windows 11 22H2から脆弱なドライバのインストールをブロックする「Vulnerable driver blocklist」という機能をデフォルトで有効にし、BYOVDに対抗しています。 しかし、このブロックリストの自動更新は年に1〜2回程度に留まるという課題があります。

Microsoft Intune App Control for Businessを利用することで、随時、最新のブロックリストを適用できます。ただし、ブロックリストがどのくらいの頻度で更新されているのかは、公式ページに明記されていません....

期限切れの証明書で署名されたドライバをインストールする新たな手法

Microsoft社がBYOVD対策に乗り出したことで、攻撃者もBYOVDを発展させています。 Windowsのドライバー署名ポリシーでは、後方互換性のために2015年7月29日以前に発行された証明書を信頼するとしており、この仕組みを悪用することで、期限切れの証明書で署名されたドライバをインストールします。

  1. 攻撃者は、まず標的のシステム上で時刻同期サービス(w32time)を停止します。
  2. 悪用したいドライバの証明書が有効であった過去の日付に、システムの時刻をPowerShellSet-Dateなどを用いて強制的に変更します。
  3. システム時刻が偽装されているため、Windowsは期限切れの証明書を有効なものと誤認し、脆弱なドライバのインストールを許可してしまいます。
  4. ドライバのインストール成功後、攻撃者はシステム時刻を現在に戻し、痕跡を隠蔽します。

この手法は、Aon社のインシデントレスポンスチームが報告したもので「Retrosigned Driver EDR Bypass」と名付けられており、実際に複数のランサムウェアギャングによる使用が確認されています。 Microsoft社と攻撃者とのドライバを巡る攻防はまだ続いています。

まとめ

EDRバイパスの手法は多岐にわたりますが、そこには共通するテーマが見られます。 Windowsに標準搭載された機能や署名済みの正規ドライバといったEDRが信頼するコンポーネントや、EDRの監視が手薄になりがちな領域を悪用する、という共通点が見られます。 防御側は、攻撃者の視点を理解し、EDRだけに頼るのではなく、多層的な防御アプローチを考えていく必要があります。

弊社ではEDRバイパスの手法を日々リサーチしており、EDR製品の性能検証や、EDRが導入されているシステムに対するペネトレーションテストに対応できます。 ご興味がある方は問い合わせフォームよりご連絡ください。

参考資料