多くの人は「サイバー攻撃」と聞いて、ファイルの暗号化、画面のロック、身代金要求メッセージなど、派手な攻撃を想像します。しかし、深刻な被害をもたらす攻撃の多くは静かに始まります。
攻撃者はデータを窃取したりランサムウェアを展開したりする前に、誰にも監視されない状態を作ろうとします。つまり、まずはデバイス上のエンドポイント保護に対処する必要があるのです。
この目的のために作られたツールは、セキュリティ業界では「EDR キラー」と呼ばれています。その仕組みや、想像以上に防御が難しい理由を理解することは、効果的な保護に何が必要かを理解することにつながります。
なぜ攻撃者はエンドポイント保護を狙うのか
今日のエンドポイント保護は、主に 2 つの大きな役割を果たしています。1 つは認識した攻撃をブロックすること、もう 1 つは不審な動作を検知・調査できるようにデバイス上で起きた事象を記録することです。この 2 つ目の役割は、Endpoint Detection and Response (EDR: エンドポイント検知・対応) と呼ばれています。
どちらも攻撃者にとっては邪魔者です。保護機能が動作していれば、エクスプロイト手法やランサムウェアはブロックされます。記録機能が動作していれば、侵入が検知されてしまいます。
そのため、泥棒が防犯カメラに対処するのと同じように、攻撃者は他の操作を行う前にセキュリティソフトウェアに対処しようとします。手動操作による侵入の初期段階でよく見られるのは、セキュリティソフトウェアを弱体化または停止させ、デバイスが「目が見えない」状態になっている間に本格的な攻撃を進める手口です。
EDR キラーとは、この目的のために作られたあらゆるツールの総称です。専用に開発されたマルウェアもあれば、別の用途に悪用される正規のソフトウェアもあります。Sophos X-Ops は、競合する複数のグループによるランサムウェア攻撃に先立ち、攻撃ごとに再構築された同一の EDRキラー が使用されているのを確認しています。これらすべてに共通しているのは、「防御を無効化してから攻撃を進める」という目標です。
脆弱性のあるドライバーの持ち込み (BYOVD)
エンドポイント保護機能は高い権限で実行されているため、通常のプロセスでは簡単に終了させることはできません。終了させるには、オペレーティングシステムの最高権限レベルである Windows カーネルからの手助けが必要です。
その手助けを得る一般的な手法の 1 つが、「Bring Your Own Vulnerable Driver (BYOVD: 脆弱性のあるドライバーの持ち込み)」と呼ばれるものです。ドライバーとは、Windows がハードウェアやその他の低レイヤーコンポーネントと通信できるようにする小さなソフトウェアであり、カーネル内部で動作します。Windows は、信頼できる発行元によってデジタル署名されたドライバーのみを読み込みます。問題は、正規に署名された一部のドライバー (特に古いもの) に脆弱性が含まれており、それを読み込んだユーザーが本来の目的以上の操作を行えてしまう点にあります。
攻撃者はルールを破る必要がありません。彼らは、本物で署名済みの、かつ信頼されたドライバーを持ち込んで被害者のデバイスにインストールし、その脆弱性を利用してドライバーを意のままに動作させます。ドライバーはカーネル内で動作するため、エンドポイント保護プロセスの強制終了など、通常のプロセスでは不可能な操作を実行できます。このドライバー自体はマルウェアではありません。不正な目的で悪用されている正規のコンポーネントであるため、悪意のあるファイルを検出するツールでは何も発見できません。
効果的な保護とは
攻撃者には複数の侵入経路があるため、1 つの防御策だけでは EDR キラーに対抗できません。攻撃を一度に複数の角度からカバーできる保護機能である必要があります。
多くの EDR キラーや、それらが利用するドライバーはすでに周知されており、レピュテーションベースの保護機能であれば、見つけ次第ブロックできるはずです。悪用可能であることが判明しているドライバーは、デフォルトで一律にブロックされるべきです。なぜなら、そうしたドライバーの読み込みを許可する理由はぼぼないからです。攻撃が特定の順序で進行してからブロックするような仕組みであってはなりません。
また、攻撃者は使用するツールを変更するため、保護機能は識別情報だけでなく動作も判断する必要があります。プログラムがドライバーとどのようにやり取りしているか、そしてその時にデバイス上で何が起きているかといった点は、どのドライバーであるかという点と同じくらい重要視されるべきです。
さらに、すべての EDR キラーが脆弱なドライバーを必要とするわけではありません。正規のセキュリティテストツールに同梱されている署名済みドライバーを流用するものもあれば、保護機能を動作させたまま記録機能を攻撃するものもあります。保護機能は、これらの攻撃経路もカバーする必要があります。
一度ブロックされても、執拗な攻撃者は再び攻撃を試みます。保護機能は次の動きを待つのではなく、試行が繰り返された際に防御を強化して対応すべきです。
最後に、攻撃者の最終目標 (ランサムウェアなど) に対する保護機能は、EDR キラーが標的とするプロセスとは独立して動作する必要があります。そうすることで、仮に攻撃者が想定以上の範囲に侵入してきたとしても、保護機能が効果を発揮し続けます。
Sophos Endpoint はいかにして EDR キラーを阻止するか
Sophos Endpoint は、EDR キラーに対して相互に補完し合う複数の防御層を採用しており、それぞれが攻撃の異なるポイントをカバーします。
第一の防御線は、ソフォスがすでに把握している脅威に対応します。レピュテーションベースの保護機能は、世界中で Sophos Endpoint を利用している 30 万以上の組織から収集された脅威インテリジェンスを活用し、既知の EDR キラーツールや不審なファイルをブロックします。また、既知の脆弱なドライバーも、Sophos Endpoint の「Block vulnerable drivers (脆弱性のあるドライバーのブロック)」ポリシー設定を通じてブロックされます。この設定は、すべての保護対象デバイスでデフォルトで有効になっています。ドライバー自体がシグナルとなるため、攻撃の順序がどうであれで、Sophos Endpoint に対して悪用される前にブロックされます。
これが機能するのは、攻撃者が容易に変更できない要素があるからです。脆弱なドライバーが読み込まれるためには正規の署名が必要であるため、攻撃者は署名を突破しない限りファイルを改ざんすることはできません。攻撃者が名前を変更しても、その一意のフィンガープリント (暗号ハッシュ) は変わりません。Sophos X-Ops の脅威インテリジェンスは、新たな調査研究やお客様の事案調査によって確認されるたびに、ブロック対象のドライバーリストを拡張し続けており、これらの最新情報は製品のアップデートを待たずにお客様に提供されます。業務上の正当な理由で特定のドライバーが必要になったときには、管理者がそのドライバーを承認することができます。
脆弱なドライバーは、それ自体が危険なわけではありません。何かから命令を受け取って初めて、そのドライバーは攻撃者にとって有用なものとなります。これは通常、標準の Windows インターフェースを通じて行われ、この時点で攻撃が可視化されます。Sophos Endpoint はまさにそのパターンを監視しています。ドライバーをインストールしてすぐにコマンドの送信を開始するプロセスは不審な動作を示しており、ソフォスはそのプロセスに関するその他の情報 (発生元、実行場所、その他の実行履歴) と照らし合わせて評価します。署名済みドライバーをエンドポイント保護に対して悪用しようとする試みは、使用されているドライバーの種類だけでなく、「何を実行しようとしているか」によって判断されます。攻撃者はいつでも別のドライバーを持ち込むことができるため、この仕組みが重要となります。改ざん防止機能は、脆弱なドライバーを悪用する EDR キラーに対するカーネルレベルでの防御機能となります。
攻撃者が悪用するドライバーは、脆弱なドライバーだけではありません。一部の正規のペネトレーションテストツールには独自の署名済みドライバーが同梱されており、攻撃者はそうしたドライバーも同様に悪用します。「Block security tool drivers (セキュリティツールのドライバーをブロック)」という関連設定は、同じ原則に基づいてこれらを阻止します。つまり、ドライバーが既知のものであり、フィンガープリントは変更不可であるため、読み込まれる前にブロックされます。改ざん防止機能は、脆弱なドライバーを悪用する EDR キラーに対抗する、カーネルレベルでの防御機能を Sophos Endpoint に提供します。
また、Sophos Endpoint は、プログラムによるドライバーの使用状況を監視し、デバイス上で発生している他のすべてのアクティビティと照らし合わせて評価します。そのため、セキュリティソフトウェアに対して署名済みドライバーを悪用しようとする試みは、ドライバーの識別情報だけでなく、その動作に基づいて判断されます。
デバイスの監視機能を無効化しようとするすべての試みが、ドライバーを経由するわけではありません。一部の攻撃者は保護機能を動作させたまま記録機能を標的とし、Event Tracing for Windows (ETW) を改ざんします。ETW とは、Windows が生成するイベントのストリームであり、Sophos Endpoint を含むセキュリティソフトウェアはこれに基づいて状況を把握しています。Sophos Endpoint の「Prevent ETW tampering (ETW 改ざんの防止)」設定は、こうした試みをブロックするため、攻撃を受けている間もデバイスは状況を報告し続けます。
攻撃者が試みを繰り返すと、保護機能はさらに強化されます。EDR キラーによって繰り返される動作は、Adaptive Attack Protection (適応型攻撃防御) を自動的に有効にするシグナルの 1 つであり、攻撃が進行している間、そのデバイス上でより厳格な防御が有効になります。そして、Sophos Endpoint のランサムウェア対策機能である CryptoGuard は、通常 EDR キラーが終了を試みるエンドポイント保護プロセスとは別に、カーネル内のフィルタードライバーとして動作します。そのため、先行する防御層を突破した攻撃者であっても、データを確実に暗号化することはできません。2024 年、RansomHub 攻撃を試みた攻撃者は、EDRKillShifter と呼ばれる EDR キラーを使用して、ソフォスの保護機能を無効化しようとしました。しかしこのツールは失敗に終わり、次に実行されたランサムウェアも CryptoGuard をトリガーしたため失敗しました。
一部の組織では、ドメインコントローラーやその他のサーバーなど、変更頻度の低いデバイスについて、さらに強固な対策を行いたいと考えています。そのようなデバイス向けに、Sophos Endpoint には「Detect new kernel drivers (新しいカーネルドライバーの検知)」設定が用意されています。この設定を有効すると、デバイスにインストールされた新しいカーネルドライバーがすべてイベントとして記録されます。管理者はそれらのイベントとカスタム検知ルールを組み合わせて、アラートを発信したり、ドメインコントローラー上に新たなドライバーが出現した際などに高深刻度のケースを作成したりするなどの対応が可能となります。通常使用するワークステーションでは、新しいドライバーのインストールは日常茶飯事であり、それらのイベントがノイズになってしまうため、この設定はデフォルトでオフになっています。しかし、変更されるべきではないデバイスにおいては、新しいドライバーは確認する必要があります。
実例: 7 回の試みと 7 回のブロック
ソフォスのお客様企業で最近発生したインシデントでは、これらの防御層が連携して機能していることが証明されています。
攻撃者は、正規に署名されているものの脆弱性のあるドライバーを、保護対象デバイスに読み込もうとしました。読み込みがブロックされた攻撃者は、ファイルを通常の Windows コンポーネントに見えるように改名し、何度も試みを繰り返しました。76 分の間に、同じドライバーが 7 つの異なる Windows 風のファイル名で提示されました。
しかし、すべての試みはブロックされました。ファイル名は 7 回変更されましたが、ドライバーのフィンガープリントは一度も変わらなかったため、デフォルトで有効になっているポリシーによってすべて検知されました。
試みが繰り返されたことで、当該のデバイスでは Adaptive Attack Protection が自動的に有効化されました。その後、攻撃者はレジストリを変更して Microsoft Defender を無効にするという別の手法を試みましたが、これもブロックされました。
脆弱なドライバーが読み込まれることはありませんでした。最終的な偵察が行われた後、そのデバイスでは悪意のあるアクティビティは確認されませんでした。
結論
攻撃者はまず、セキュリティソフトウェアを標的にします。なぜなら、目的の操作を実行するには、誰からも監視されていない状態が必要であるからです。Sophos Endpoint はこの点を念頭に置いて設計されています。既知のツールは見つけ次第阻止され、既知の脆弱なドライバーやペネトレーションテストツール付属のドライバーはブロックされ、ドライバーの悪用はその動作で判定され、さまざまな保護製品が依存する記録機能は保護されます。また、攻撃が継続すると防御が強化され、最も重要な保護機能は、EDR キラーが標的とするプロセスとは切り離されて動作します。サーバーに対してより厳格なセキュリティポスチャを希望する場合には、新たに現れるすべてのドライバーにフラグを立てることができます。
エンドポイント保護ソリューションの評価を検討される際には、正規に署名されたドライバーが悪用された場合にどのように対処するのかをベンダーに確認してください。
Sophos Endpoint の詳細や無料トライアルについては、sophos.com/endpoint をご覧ください。

