Take a Product Tour Request a Demo Cybersecurity Assessment Contact Us

Blogs

The latest cybersecurity trends, best practices, security vulnerabilities, and more

Trellix XDR によるラテラル移動攻撃の検出と可視化

エグゼクティブ サマリー

ネットワークとエンドポイントに複数のセキュリティ制御とソリューションを配備している組織の場合、アナリストが脅威アクティビティの全体を確認するために、複数のソースからの脅威イベントを相関させてコンテキストを得ようとすれば大きなギャップが生じます。完全にコンテキストに基づいた脅威情報がなければ、アナリストやインシデント対応チームは、攻撃シーケンスを理解するために、別のエンドポイント製品やネットワーク ソリューションに切り替えなければなりません。さらに、多様なセキュリティ ソリューションから大量の脅威イベントが発生しているため、アナリストが異なる製品によるさまざまなアラートの点と点を結ぶような作業から、結果的かつ実用的な攻撃情報をまとめることは非常に困難になっています。そのため、トリアージ、脅威のハンティング、対応アクションの適用を効果的に行う能力に大きな影響を及ぼします。これは、インフラストラクチャ内のネットワークと重要な資産を保護するために幅広いセキュリティ ソリューションを利用している組織にとって大きな課題の 1 つです。

このブログでは、ラテラル移動に焦点を当てたさまざまな攻撃シナリオを紹介します。たとえば、脆弱なサービス権限を悪用したコードの実行、Active Directory からの認証情報のダンプや持ち出しなどです。各シナリオでは、 Trellix eXtended Detection and Response (XDR) がラテラル移動を検出し、一元的なビューにより可視化し、アナリストが状況を完全に評価できるようにする仕組みを紹介します。

はじめに: XDR とラテラル移動の検出

攻撃経路が正確に可視化されておらず、アラートを相関させるために複数のセキュリティ製品を使用していたのでは、ラテラル移動攻撃の検出と対応は困難になります。攻撃のラテラル移動フェーズでは、攻撃者はさまざまなツールやテクニックを駆使して、1 つのシステムから別のシステムへと次々に移動しようとします。攻撃者の目標は、Active Directory などの重要な資産に到達し、ドメインを広範囲に侵害することです。

Trellix XDR は、エンドポイントに焦点を当てた従来のアプローチ以上の機能を提供します。XDR は、複数のセキュリティ ソリューションにまたがる脅威アクティビティを相関させ、アナリストが攻撃者の挙動をより詳細に把握できるようにするものです。XDR は、エンドポイント、ネットワーク、メール、ID などのセキュリティ スタックからのアラートを統合し、アナリストが攻撃に関するコンテキストを得られる統合ビューを提供します。これにより、アラートのトリアージと調査の能力が向上し、修復アクションを適用できるようになります。XDR は、さまざまな製品のプレイブックとセキュリティ制御を緊密に統合することで、特定されたフィッシング メールの完全削除、悪意のあるファイルの隔離、侵害されたユーザー アカウントの無効化、特定の感染資産からのネットワーク アクセスのブロックなどの対応アクションを備えています。

安全でないサービス権限の悪用

Windows には、Windows サービスを含むファイルやレジストリなどのオブジェクトへのアクセスを制御するための権限と特権があります。ラテラル移動フェーズでは、脆弱な Windows サービスや、設定の誤った Windows サービスを悪用することが、リモート システムで悪意のあるペイロードを実行するために攻撃者が使用する多くの特権昇格手法の 1 つです。この手法が登場したのは何年も前のことですが、安全でない権限を使って Windows 上で実行されているサービスを見つける攻撃は、依然としてごく一般的です。サービスは SYSTEM レベルの権限で実行されます。この手法と脆弱なサービス バイナリ権限を組み合わせると、攻撃者の制御下にある実行ファイルを参照するようにサービスの実行ファイルのパスを変更することができます。そのため、サービスを再起動すると、昇格された特権でコードが実行されます。脆弱な権限は、MITRE ATT&CK Enterprise フレームワークで定義されているように、いくつかのカテゴリに分類されます。

図 1: 安全でない、または脆弱なサービス権限のテクニック
図 1: 安全でない、または脆弱なサービス権限のテクニック

Windows のサービス コントロール マネージャー (SCM) は、リモート プロシージャ コール (RPC) インターフェースを提供します。これにより、認証されたユーザーは SCM に接続し、リモート マシン上の構成やサービス実行ファイルなどのサービス パラメーターを操作できます。サービス オブジェクトが作成されると、こちらで説明されているように、SCM がサービス オブジェクトに対する特定のアカウントのアクセス権を作成し ます。サービス パラメーターを変更するには、認証されたユーザーが SCM に接続し、RPC 呼び出し OpenSCManager を使用してハンドルを開き、サービスへのアクセス権を要求します。RPC 呼び出し QueryServiceConfig では、認証されたユーザーが、binpath や imagepath などのサービス構成を照会できます。RPC 呼び出し QueryServiceObjectSecurity では、認証されたユーザーが、サービス オブジェクトに関連付けられたセキュリティ記述子のコピーを取得できます。

サードパーティのソフトウェア コンポーネントの多くは、設定の誤ったサービスを実行するため、標的になる可能性があります。攻撃者は、脆弱なサービスを標的にしてドメイン内に足掛かりを作り、 SERVICE_ALL_ACCESS または SERVICE_CHANGE_CONFIG の権限をもつサービスを列挙します。これらのサービス権限により、権限の低い認証済みユーザーでも、ChangeServiceConfig を使用してサービス パラメーター (サービス バイナリ パスを含む) を変更できます。

図 2: サービス権限の確認
図 2: サービス権限の確認

攻撃フロー – 脆弱なサービス権限の悪用 (MITRE TID: 1574.011)

図 3 は、ラテラル移動攻撃のシナリオを示しています。この例では、被害者は、ドライブバイダウンロード攻撃またはフィッシング キャンペーンの標的になっています。悪意のある URL にアクセスすると、侵害されたシステムに追加のマルウェアがダウンロードされ、攻撃者はシステムを完全に制御できるようになります。既知の脆弱性やゼロデイ脆弱性を悪用して、標的のシステムを制御する場合もあります。ネットワーク内でラテラル移動を行うために、攻撃者は、重要なネットワーク リソースへのパスを定義するための認証情報、特権、および複数のピボット システムへのアクセス権を必要とします。

図 3: 攻撃フロー
図 3: 攻撃フロー

このラテラル移動攻撃フローをまとめると、Trellix では、攻撃者が標的型攻撃キャンペーンを使用して内部システムの 1 つを侵害したと想定しています。攻撃者は、ピボット システムにアクセスするためのドメイン認証情報を取得したため、特権を昇格させることができるようになります。リモート サービスを悪用するために、攻撃者は偵察を行い、サービスの権限と構成を確認しています。これは、Sysinternal の accesschk.exe または同様のツールを使用して実行できます (図 4 参照)。

図 4: サービス権限の列挙
図 4: サービス権限の列挙

図 5 では、sc.exe を使用した標的サービスの構成の確認が LocalSystem アカウントで実行されていることを示しています。これは高度な特権をもつアカウントで、そのトークンには、NT AUTHORITY\SYSTEM および BUILTIN\ADMINISTRATORS の SID が含まれます。SCM のセキュリティ コンテキストを継承するほとんどのシステム オブジェクトにアクセスできます。ただし、侵害されたユーザーが権限の低いユーザーである場合でも、標的のサービスにおいて認証されたユーザーに書き込み権限があれば、攻撃者はサービス バイナリへのパスを変更することができます。

図 5: サービス構成の確認
図 5: サービス構成の確認

攻撃者が、必要な権限を用いて標的サービスの情報を入手すると、SCShell などのサービス操作フレームワークや同様のツールを使用して、サービスのバイナリ パスを変更できるようになります。SCShell は、前述の API セットを使用し、PRC 呼び出し ChangeServiceConfigA を使用してサービスの実行パスを変更します。

この手法は、ペイロードがリモート システムのディスクにドロップされない限り、ファイルレスのラテラル移動手法としても使用できます。この API の引数の 1 つは BinaryPathName です。これは、任意の実行ファイルへのパスを指定できるため、攻撃者にとって有益です。

図 6 – ChangeServiceConfig のパラメーター
図 6 – ChangeServiceConfig のパラメーター

図 7 の攻撃フローで示されているように、収集した認証情報 (NTLM ハッシュ) を SCShell で使用してリモート サービスを開き、このパラメーターを悪用して、リモート マシンに管理者ユーザーを追加できるコマンドを指定することができます。指定されたバイナリ パスが変更されると、RPC 呼び出し StartServiceA でサービスが再起動されます。実行ファイルがサービス DLL ではないため、この API はエラーを返しますが、指定されたコマンドは実行されます。この時点で、ペイロードが実行されます。

図 7: ローカル管理者ユーザー アカウントをリモート システムに追加する攻撃フロー
図 7: ローカル管理者ユーザー アカウントをリモート システムに追加する攻撃フロー

検出 - Trellix XDR のインサイトとアラートの相関

Trellix XDR には、攻撃のさまざまな段階に関するインサイトを提供するさまざまなアラートが表示されます。図 8 では、Sysinternal の accesschk64.exe ツールを使用してサービスの権限が列挙され、標的にするサービスが特定された際に、Trellix Endpoint Detection and Response (EDR) により提供された詳細なアラートを示しています。また、このアクティビティにおいてエンドポイントで確認されたテクニックを含むプロセス ツリーも示しています。

図 8: サービス権限チェックに対する EDR アラート
図 8: サービス権限チェックに対する EDR アラート

図 9 は、図 3 に示した攻撃フローの一部として実行されたアクティビティにおいて標的のエンドポイントで生成されたイベントの一部を示しています。

図 9: 標的エンドポイントでの EDR アラート
図 9: 標的エンドポイントでの EDR アラート

しかし、これらのイベントをさらに詳しく調べると、ロー イベントが SCShell ユーティリティを介して実行された net user add コマンドを正確にキャプチャしていることがわかりました。このキャプチャはかなり成功しました。標的のサービスのサービス レジストリが複数回変更されたからです。図 10 ではこれを示しています。

図 10: net user コマンドの詳細アラート ビュー
図 10: net user コマンドの詳細アラート ビュー

エンドポイントだけでなく、ネットワークに対してもこうした可視性を共有することが重要です。ネットワーク上で SCM RPC 呼び出しを使用してサービスの変更が行われているため、図 11 のように、ネットワーク アラートが確認できます。

図 11: ネットワーク セキュリティ アラート
図 11: ネットワーク セキュリティ アラート

攻撃経路が正確に可視化されておらず、複数のセキュリティ ツールが使用されている場合、ラテラル移動攻撃の検出と対応は困難になります。図 12 では、XDR がこうした情報を 1 か所にまとめる仕組みを示しています。アラートと、ネットワーク上でアクティビティが最初に特定された方法、関連する資産、それらに関連するアラートの統合ビューが表示されます。

図 12: ラテラル移動経路の可視化
図 12: ラテラル移動経路の可視化

Active Directory の Ntds.dit ファイルのダンプと持ち出し (MITRE TID : T1003.003)

New Technology Directory Services のディレクトリ情報ツリー ファイル (ntds.dit) は、プライマリ データベース ファイルとして機能します。Ntds.dit は、ユーザー、グループ、コンピューターなど、ドメイン オブジェクトに関連するすべての情報を保存・整理します。これは Active Directory (AD) のバックボーンとして機能し、ユーザー アカウント情報、パスワード、グループ メンバーシップ、その他のオブジェクト プロパティなどの重要なデータを保存します。さらに、このファイルにはすべてのドメイン ユーザーのパスワード ハッシュも含まれています。これらのハッシュを入手したサイバー犯罪者は、Mimikatz などのツールを使用して Pass-the-Hash (PtH) 攻撃を実行したり、Hashcat などのプログラムを使用してオフライン パスワード クラッキングを実行したりすることができます。実際に、ハッシュを取得すると、攻撃者はドメイン上で任意のユーザー、さらにはドメイン管理者を装うことができます。

ドメイン コントローラーの場合、Ntds.dit ファイルは通常、C:\Windows\NTDS\Ntds.dit にあります。ただし、この場所は、固有のニーズや設定に合わせて AD のインストール プロセス中に変更できます。

図 13: NTDS ファイルの場所
図 13: NTDS ファイルの場所

攻撃者は、オペレーティング システムやアプリケーションから認証情報をダンプし、アカウントのログイン情報や認証情報、通常はハッシュまたは平文のパスワードなどを取得しようとします。これらの認証情報を使用して、ラテラル移動を実行したり、制限された情報にアクセスしたりできます。図 14 に示すように、OS 認証情報のダンプは、MITRE ID が割り当てられた複数のカテゴリに分類されます。

図 14: OS 認証情報ダンプ手法
図 14: OS 認証情報ダンプ手法

OS 認証情報ダンプでは、NTDS の攻撃者が Active Directory ドメイン データベースにアクセスする、またはコピーを作成し、認証情報やその他の情報、たとえばデバイス、ユーザー、アクセス権などを盗み出す可能性があります。ドメイン コントローラー上での NTDS ファイル (Ntds.dit) のデフォルトの場所は、%SystemRoot%\NTDS\Ntds.dit です。攻撃者は、稼働中のドメイン コントローラーで NTDS ファイルを検索するだけでなく、同じデータまたは類似のデータを含むバックアップも検索することができます。

攻撃フロー – 侵害されたエンドポイントからのデータ窃取: Active Directory Ntds.dit ファイルのダンプと持ち出し

図 15 は、OS 認証情報ダンプ攻撃のシナリオを示しています。ドライブバイダウンロード攻撃やフィッシング キャンペーンの被害者が悪意のある URL にアクセスすると、侵害されたシステムにマルウェアがダウンロードされる可能性があります。そうすると、攻撃者はシステムの完全な制御を取得できます。また、既知の脆弱性やゼロデイ脆弱性を悪用して、標的システムを制御する場合もあります。前述のように、攻撃者がネットワーク内でラテラル移動を行うには認証情報が必要です。AD サーバーにリンクしている侵害されたシステムへのアクセスに成功すると、攻撃者はツールを使用して Ntds.dit ファイルをダンプし、外部サーバーにエクスポートしたり、ローカルまたはリモートでパスワード ハッシュを解読したりすることができます。

図 15: NTDS ダンプ、レジストリ ハイブのダンプ、持ち出し攻撃フロー
図 15: NTDS ダンプ、レジストリ ハイブのダンプ、持ち出し攻撃フロー

ステップ 1 - パスワード ハッシュを盗む

ネットワークへのアクセスに成功した攻撃者は、DCSync などの手法を使ったり ntds.dit からハッシュを抽出したりして、パスワード ハッシュを取得することができます。図 16 では、lsass.exe プロセス メモリーからハッシュを抽出する方法を示しています。このメモリーは、システムにログイン中のユーザーのハッシュを格納するものです。この方法を用いるには、管理者特権をもつユーザーを侵害する必要があります。図 16: mimikatz を使用した認証情報ダンプ

図 16: mimikatz を使用した認証情報ダンプ
図 16: mimikatz を使用した認証情報ダンプ

ステップ 2 - 盗んだパスワードハッシュを使用して認証する

次に、攻撃者は Pass the Hash アプローチ (MITRE ID: T1550.002) を使用し、盗んだパスワード ハッシュの 1 つを使用してユーザーとして認証します。図 17 は、盗んだパスワード ハッシュを使用して cmd.exe を起動する方法を示しています。このハッシュは、NTLM 認証をサポートするネットワーク リソースへのアクセスにも使用できます。

mimikatz sekurlsa::pth を使用して pass-the-hash を実行する際には、次の引数が指定されます。

  • /user - ハッキングされたユーザーのユーザー名とドメイン。
  • /Domain — ドメイン アカウントを使用している場合は、ドメインの FQDN。または ".", (ローカル アカウントを使用している場合)。
  • /ntlm、 /aes128、または /aes256 — NTLM、AES-128 または AES-256 の盗まれたパスワード ハッシュ。
図 17: Mimikatz を使用した Pass-the-Hash
図 17: Mimikatz を使用した Pass-the-Hash

ステップ 3 - 他のリソースにアクセスする

最後に、攻撃者は新たに得た強みを利用して目標を達成する場合があります。図 18 は、PSExec ツールを使用し、リモート システムでコマンドを実行してフットプリントを拡大し、ますます多くのシステムで認証情報の窃取とラテラル移動のサイクルを繰り返す方法を示しています。

図 18: PSExec を使用したアクセス
図 18: PSExec を使用したアクセス

ステップ 4 - ntds.dit をダンプして情報を持ち出す

攻撃者がドメイン コントローラーのファイル システムへのアクセスに成功すると、ntds.dit と HKEY_LOCAL_MACHINE\SYSTEM レジストリ ハイブを持ち出すことができます。これらは、ntds.dit ファイルを復号するためのブート キーの取得に必要なものです。Active Directory は、実行中の ntds.dit ファイルに対するファイル システム ロックを維持するため、このファイルをコピーしようとすると失敗します。攻撃者は、次のようなさまざまな方法でこの制約を回避できます。

  • ボリューム シャドウ コピー サービス (VSS) を使用してボリュームのスナップショットを取得し、そのスナップショットから ntds.dit ファイルを抽出する。
  • PowerSploit の Invoke-NinjaCopy などの PowerShell ユーティリティを使用して、使用中にファイルをコピーする。
  • DSDBUtil.exe や NTDSUtil.exe などの組み込みプログラムを使用して、Active Directory インストール メディア ファイルを作成する。
図 19: Ntds.dit ファイルのダンプ
図 19: Ntds.dit ファイルのダンプ

検出 - Trellix XDR のインサイトとアラートの相関

Trellix XDR は、攻撃フローの複数の段階に関するインサイトを提供するさまざまなアラートを表示することができます。図 20 は、侵害されたシステムで認証情報がダンプされた場合に EDR が示す詳細なアラートを示しています。また、このアクティビティにおいてエンドポイントで確認されたテクニックを含むプロセス ツリーも示しています。

図 20: 認証情報アクセスのアラート
図 20: 認証情報アクセスのアラート

図 21 は、図 15 に示した攻撃フローとして実行されたアクティビティにおいて標的のエンドポイントで生成されたイベントの一部を示しています。

図 21: 認証情報アクセス イベント
図 21: 認証情報アクセス イベント

図 22 と図 23 は、侵害されたシステムで ntds.dit および SYSTEM ハイブのファイルがドロップされた場合に EDR が生成する詳細なアラートを示しています。 図 22: NTDS コピーの作成とダンプのアラート
図 22: NTDS コピーの作成とダンプのアラート

図 23: NTDS コピーの作成とダンプのアラート
図 23: NTDS コピーの作成とダンプのアラート

図 24 は、Network Security からのアラートを示しています。ネットワーク上での NTDS の持ち出しの試行があれば確認できます。

図 24: ネットワーク アラート
図 24: ネットワーク アラート

図 25 では、攻撃者が ntds.dit と SYSTEM ハイブのファイルを外部サーバーにアップロードしようとすると、データ損失防止 (DLP) が重大度高のアラートを生成します。

図 25: NTDS 持ち出しの試行に対する DLP アラート
図 25: NTDS 持ち出しの試行に対する DLP アラート

攻撃経路が正確に可視化されておらず、複数のセキュリティ ツールが使用されている場合、ラテラル移動攻撃の検出と対応は困難になります。図 26 では、XDR がこうした情報を 1 か所にまとめる仕組みを示しています。アラートと、ネットワーク上でアクティビティが最初に特定された方法、関連する資産、それらに関連するアラートの統合ビューが表示されます。

図 26: ラテラル移動の攻撃経路
図 26: ラテラル移動の攻撃経路

まとめ

製品エコシステムにおいては、アラートを相関させて、アナリストに統合されたビューを提供することが重要です。Trellix XDR は、セキュリティ スタック上のデータと製品を統合し、アナリストにネットワーク上の脅威、分析、対応アクションの詳細なビューを提供します。Trellix XDR はラテラル移動の脅威を検出し、適切な対応アクションを可能にする新たな機能を搭載しながら継続的に進化しています。さらに、 Trellix XDR を使用してアナリストはアラートの優先順位を付け、関連するアラートをグループ化して全体の一部として分析することができます。Trellix Automated Response のアクションにより、アナリストは反復的で複雑なアクションを簡単に実行できます。

最新情報を入手する

サイバー セキュリティは私たちの得意とするところです。とはいえ、私たちは新しい会社です。
これから進化してまいりますので、最新情報をお見逃しなきよう、お願いいたします。

有効な電子メール アドレスを入力してください。
迷惑メールゼロ。配信はいつでも停止できます。