目次
- 1 エグゼクティブサマリー
- 2 マカフィー製品での保護と対策
- 3 ラテラルムーブメント–はじめに
- 4 資格情報窃取攻撃
- 5 LSASSプロセスメモリから資格情報を盗む
- 6 Security Accounts Manager(SAM)データベースからの資格情報の盗用
- 7 Windowsクレデンシャルマネージャー(CredMan)から資格情報を盗む
- 8 Kerberoastingを介してサービスアカウントの資格情報を盗む
- 9 Active Directoryドメインサービス(ntdis.dit)ファイルからの資格情報の盗用
- 10 DCSync攻撃による資格情報の盗用–ドメインユーザーからドメイン管理者へ
- 11 ネットワーク詐欺による資格情報窃取攻撃の検出
- 12 ネットワーク欺瞞の重要な側面
- 13 基本的なおとりネットワークのセットアップ
- 14 基本的なおとりシステムのセットアップ
- 15 ネットワーク詐欺の図解と達成
- 16 MITER ATT&CK テクニック:
- 17 結論
エグゼクティブサマリー
近年、企業は増え続ける脅威に対抗するために、ネットワークエントリーポイントでの境界防御から、エンドユーザーのマシンに配備されたホストベースのセキュリティソリューションに至るまで、多層的なセキュリティ対策を行う傾向にあります。これには、ネットワークのアクセス層やディストリビューション層に導入されたインラインのトラフィックフィルタリングやセキュリティ管理ソリューション、およびIDベースのネットワークアクセスを提供し、重要なネットワークリソースへのユーザーのアクセスの可視性を高めるためのNAC、SIEM、ユーザー行動分析などのアウトオブバンドのソリューションが含まれます。ただし、階層化されたセキュリティ防御は、既知の動作に大きく依存しているため、新たな悪用技術を検出するという大きな課題に繰り返し直面しています。さらに、エンタープライズネットワークが直面するもうひとつの重要な課題は、侵害された後の活動を検出することです。
最初の侵害後、目的の攻撃を実行するためには、攻撃者は資格情報を窃取してネットワーク内を横方向に移動し、重要なネットワーク資産にアクセスして最終的にデータを流出させる必要があります。攻撃者は内部偵察や重要なリソースでのリモートコード実行を行うために、いくつかの洗練された技術を使用します。これは、正当なネットワーク資産を発見するための正規のオペレーティングシステムツールの使用から、ターゲット上での新しいコード実行技術まで多岐にわたります。そのため企業ネットワークにおいては、Windowsの内部ツールやサービスの正当な利用と悪意のある利用を区別することが最優先事項になります。
横方向への移動を検知するというこの長年の問題に取り組むために、企業ネットワークは、攻撃者が重要なネットワークリソースにアクセスするのを効果的に防ぐために、ネットワーク内のプロアクティブな防御戦略を策定する必要があります。ネットワーク・ディセプションは、資格情報を窃取する攻撃を検知するための効果的なソリューションとなる可能性を秘めた防御方法のひとつです。ディセプションを用いて資格情報を盗む攻撃を検出するには、おとりのシステムを本番環境と同じネットワーク内に配置し、おとりのコンテンツを設定して攻撃者をおとりのマシンおよびサービスに誘導することにより、必要なインフラストラクチャを構築する必要があります。ディセプティブ・ネットワークを正確に設定及び調整することで、攻撃者の横方向の移動経路をディセプティブサービスに向けることができ、その結果、攻撃者はディセプティブ・ネットワークに引き込むことができ、企業の本番環境の保護に役立ちます。
MITERが積極的な防御技術のために維持している知識ベースであるMITRE Shieldは、攻撃者との攻防における多くの方法を浮き彫りにします。ネットワークの欺瞞に関してMITRE Shield Matrixによって説明されている手法のいくつかを以下に示します。
MITRE Shield |
Description |
ATT&CK Technique |
Decoy Account – DTE0010 |
おとりアカウントは、防御的または欺瞞的な目的で作成される。おとりアカウントを使用して、システム、サービス、またはソフトウェアをよりリアルに見せたり、アクションを促したりすることができる。 |
Account Discovery, Reconnaissance |
Decoy Credentials – DTE0012 |
防御的または欺瞞的な目的で使用するユーザー資格情報(ユーザー名/パスワード、ブラウザートークン、その他の形式の認証データなど)を作成する。 |
Credential Access, Privilege Escalation |
Decoy Diversity – DTE0013 |
さまざまなオペレーティングシステムとソフトウェア構成を備えたおとりシステムを展開する。 |
Reconnaissance |
Decoy Network – DTE0014 |
防御的または欺瞞的な目的で使用できる複数のターゲットネットワークを作成する。 |
Initial Access |
Decoy Persona – DTE0015 |
ユーザーに関する背景情報を確立するために使用される。敵に彼らが実際の目標に対して活動していると信じさせるため。 |
Initial Access, Discovery, Reconnaissance |
Decoy System – DTE0017 |
積極的な防御を支援するために敵に提示されるコンピューティングリソースを構成する。 |
Reconnaissance |
この調査結果では、侵害後に攻撃者によって実行された、広範囲に渡る資格情報窃取攻撃のいくつかについて説明し、次に、上記のMITRE Shield攻撃に対する防御手法と、それらを効果的に使用してネットワーク内の不正な資格情報の使用を検出する方法について説明します。
ネットワーク デセプション–積極的なネットワーク内防御アプローチ
- 標的型攻撃のほとんどは、攻撃者が資格情報を使用してネットワーク内の他のシステムにピボットするため、特定の時点でシステムから資格情報を盗むことを伴います。ゴールデンチケット攻撃のような資格情報を盗むテクニックのいくつかは、横方向の移動機能を備えた複数のランサムウェアで使用されていることがわかっています。
- MITERシールドマトリックスによって記述されたアクティブなネットワーク内防御戦略は重要であり、ネットワークでの資格情報の乱用を検出する上で重要な役割を果たします。
- Network Deceptionは、これらのアクティブな防御技術を使用して、攻撃者の横方向の移動パスをリダイレクトし、重要な本番システムに触れることなくおとりサービスに関与させる可能性のある、偽りのネットワークインフラストラクチャを構築します。
- これには、Decoy system、Decoy credential、およびDecoy contentsを本番ネットワーク全体に配置し、本質的にトラップに変換して、攻撃を軽減する上で重要な役割を果たします。
マカフィー製品での保護と対策
- McAfee MVISION Endpoint Securityには、ATPルール511を介したLSASSプロセスメモリからの資格情報抽出などの資格情報窃取攻撃から保護する機能があります。ポリシーの構成とデモの詳細については、こちらをご覧ください。
- McAfee MVISION Endpoint Detection and Response(EDR)には、Mimikatzなどのツールからの資格情報アクセスを検出する機能があります。
- McAfee MVISION EDRおよびENSとAttivoのネットワークおよびエンドポイントデセプションセンサーとの統合により、McAfeeはエージェントを管理し、ePOおよびEDRでの検出に関するアラートを受信できます。
ラテラルムーブメント–はじめに
ラテラルムーブメントとは、攻撃者が最初のアクセスを取得した後、企業ネットワーク内で足場を徐々に拡大するために使用するツールと手法を指します。次の図に示すように、横方向の移動アクティビティは、資格情報の窃取、ターゲットの列挙と検出、特権の昇格、ネットワークリソースへのアクセスの取得、最終的にはターゲットでのリモートコード実行から始まり、攻撃を成功させるためにデータを盗み出すまでのいくつかの段階で構成されます。ネットワーク内に入ると、攻撃者は最終目標を達成するために、横方向の動きの各段階でさまざまな手法を展開します。攻撃者がネットワーク内を横方向に移動するときに直面する主な課題の1つは、検出されないようにするために最小限の量の正当なログを生成することにより、攻撃者の活動を一目で隠すことです。これを実現するために、攻撃者は悪意のある実行可能ファイル内にツールを埋め込むか、オペレーティングシステムの内部の正当なツールとサービスを使用して横方向の移動操作を実行することを選択する可能性があり、その結果、このネットワークトラフィックを区別しにくくなります。
ベライゾン DBIRレポート2020によると、データ侵害の80%以上は、資格情報窃取攻撃を伴います。資格情報の窃取は、攻撃者がエクスプロイト後およびターゲットマシンの初期制御を取得した後に実行する必要がある主要なタスクの1つです。これは通常、攻撃者が特権を高めて他のネットワークリソースへのアクセスを取得できるようにする、ラテラルムーブメントの戦略への第一歩になります。前に示したように、攻撃者は長い間、SMB、RPC over SMB、Windows Management Instrumentation、Windows Remote Management、およびその他の多くの機能などのWindowsの正当な機能を悪用してラテラルムーブメントの活動を実行してきました。下の図1は、ラテラルムーブメントが攻撃チェーンとそのさまざまな段階のどこにあるかを示しています。よりステルスを維持するために、これらの活動は数週間から数ヶ月に及ぶ期間にまたがります。
図1-ラテラルムーブメントの段階
これらの組み込みサービスの許容される使用と悪意のある使用を区別できるようにするには、組織が高度な脅威検出ソリューションを展開することが非常に重要です。このブログでは、横方向の動きの際に敵が使用するさまざまな資格情報の窃取手法について説明します。また、ネットワーク内でこれらの手法を効果的に検出するために使用できるアプローチについても説明します。
資格情報窃取攻撃
攻撃者は、さまざまなツールと手法を使用して、資格情報の窃取攻撃を実行します。これらのツールの多くはオープンソースであり、インターネットですぐに利用できます。Windowsなどのオペレーティングシステムはシングルサインオン(SSO)機能を実装しており、ユーザーの資格情報をメモリに保存する必要があります。これにより、OSは、ユーザーに資格情報の再入力を繰り返し要求することなく、ネットワークリソースにシームレスにアクセスできます。さらに、ユーザー資格情報は、NTLMハッシュ、可逆的に暗号化されたプレーンテキスト、Kerberosチケット、PINなどのさまざまな形式でメモリに保存され、サポートされている認証メカニズムに応じてサービスへの認証に使用できます。これらの資格情報は、攻撃者が適切な資格情報ストレージ構造を解析するか、Windows資格情報列挙APIを使用して、メモリから取得できます。その結果、これらの攻撃は、特にドメイン環境で、攻撃者が特権資格情報にアクセスし、それを再利用して重要なネットワークリソースにアクセスできる場合に、セキュリティ上の大きな懸念を引き起こします。次のセクションでは、Windowsオペレーティングシステムに関して、マルウェアによって使用される広く採用されている資格情報を盗む手法のいくつかについて説明します。同様の資格情報を盗む手法は、他のオペレーティングシステムでも使用できます。
LSASSプロセスメモリから資格情報を盗む
ローカルセキュリティ機関サブシステムサービス(LSASS)プロセスは、アクティブなWindowsセッションを持つすべてのユーザーの資格情報を管理および保存します。LSASSプロセスメモリに保存されているこれらの資格情報により、ユーザーは、資格情報を再度要求することなく、ファイル共有、電子メールサーバー、その他のリモートサービスなどの他のネットワークリソースにアクセスできます。LSASSプロセスメモリは、可逆的に暗号化されたプレーンテキスト、NTLMハッシュ、Kerberosチケット(チケット付与チケットなど)を含む多くの形式で資格情報を保存します。これらの資格情報は、ユーザーがコンソールログオンやRDPなどのマシンへの対話型ログオンを開始したとき、スケジュールされたタスクを実行したとき、またはリモート管理ツールを使用したときに生成され、LSASSプロセスのメモリに保存されます。資格情報の暗号化と復号化は、LsaProtectMemoryを使用して行われます。およびLsaUnProtectMemoryであるため、これらのAPIを使用する復号化ツールは、LSASSメモリバッファを復号化して抽出することができます。ただし、マルウェアがLSASSプロセスメモリにアクセスできるようにするには、ローカル管理者権限で実行し、現在のプロセスで「SeDebugPrivilege」を有効にする必要があります。
以下は、有名な資格情報を窃取するツールの1つであるMimikatzからのコードスナップショットであり、資格情報をダンプする前に、呼び出し元のスレッドで必要な特権を有効にします。
図2–必要な特権の確認
ユーザーの資格情報のNTLMハッシュが明らかになり、以下に示すように、これをブルートフォースオフラインにすることができます。SMBなどの多くのWindowsサービスはNTLM認証をサポートしており、NTLMハッシュを認証に直接使用できるため、クリアテキストのパスワードは不要です。
図3–オフラインでのNTLMハッシュのクラッキング
攻撃者は、AVによって簡単に検出されるため、Mimikatzなどの無料で入手可能なツールをターゲットマシンで直接使用して資格情報を収集することを避けます。代わりに、ノイズを回避するために最小限の機能で再コンパイルされたクローンを使用します。以下は、マルウェアが最小限の必要な機能で再コンパイルされたMimikatzコードを埋め込む例の1つです。
図4–悪意のある実行可能ファイル内に埋め込まれた資格情報抽出ツール
検出は、多くのエクスプロイト後のフレームワークで利用可能ないくつかの「土地から離れた」メカニズムを使用して、バイナリがディスクに書き込まれないリフレクティブPEインジェクションを使用してメモリから直接資格情報を取得するツールを実行することによっても回避できます。さらに別のアプローチは、プロセスダンプツールを使用してLSASSプロセスメモリをダンプし、ダンプを抽出して、資格情報をオフラインで抽出することです。Microsoftは、資格情報の侵害を防ぐことができる追加のLSASSプロセス保護を構成する複数の方法を文書化しています。
Security Accounts Manager(SAM)データベースからの資格情報の盗用
SAMデータベースは、Windowsコンピューター上のすべてのローカルアカウントの資格情報を格納するローカルハードドライブ上のファイルです。ローカル管理者の資格情報ハッシュを含む、ローカルマシン上のすべてのアカウントのNTハッシュは、SAMデータベースに保存されます。SAMデータベースファイルは%SystemRoot%system32 / configにあり、資格情報のハッシュはレジストリHKLM \ SAM内にあります。攻撃者は、SAMデータベースから資格情報にアクセスできるようにするために、昇格された特権を取得する必要があります。以下の例は、SAMデータベースの資格情報を単純なMeterpreterセッションで明らかにする方法を示しています。
図5–SAMデータベースのダンプ
Windowsクレデンシャルマネージャー(CredMan)から資格情報を盗む
Windows Credential Managerは、ユーザーがWindowsマシンに保存することを選択した場合、ユーザーのWebおよびSMB / RDP資格情報を保存します。これにより、認証メカニズムが後続のログインでこれらのパスワードを再度要求するのを防ぎます。これらの資格情報は、現在のユーザーのログオンセッションまたは生成されたマスターキーを使用して、 Windowsデータ保護API(DPAPI)CryptProtectDataで暗号化され、ローカルハードドライブに保存されます。したがって、ログインしたユーザーのコンテキストで実行されているプロセスは、CryptUnProtectDataを使用して資格情報を復号化できます。DPAPI。ドメイン環境では、攻撃者はこれらの資格情報を使用して、ネットワーク内の他のシステムにピボットすることができます。データ保護APIは、資格情報とキーを安全に保存するために使用できる暗号化機能を提供します。これらのAPIは、ブラウザー(IE / Chrome)、証明書、その他の多くのアプリケーションなど、他のいくつかのWindowsコンポーネントでも使用されます。以下は、Mimikatzなどの資格情報ダンプツールを使用して、保存されているChrome資格情報をダンプする方法の一例です。
図6–ブラウザの資格情報のダンプ
DPAPIはさまざまな方法で悪用される可能性があります。Active Directoryドメインに参加している環境では、他のユーザーが侵害されたマシンにログインしている場合、マルウェアが昇格された特権で実行されていると、LSASSメモリから他のユーザーのマスターキーを抽出し、それを使用してシークレットを復号化できます。以下は、資格情報のダンプツールを使用してマスターキーを抽出する方法のスクリーンショットです。
図7–DPAPIマスターキーの抽出
マルウェアはまた、Windows内で利用可能な資格情報列挙APIの複数のバリアントを使用する傾向があります。これらのAPIは、Windows CredentialManagerから資格情報を抽出できます。以下は、CredEnumerateW APIを使用して資格情報を取得し、他のシステムへのピボットに使用するターミナルサービスのパスワードを検索するマルウェアの1つのインスタンスです。
図8– WindowsAPIを使用した資格情報の抽出
Kerberoastingを介してサービスアカウントの資格情報を盗む
ドメインに参加している環境では、Kerberosプロトコルは、認証およびサービスとアプリケーションへのアクセスの要求に関して重要な役割を果たします。エンタープライズネットワーク内の複数の共有リソースにアクセスするためのシングルサインオン機能を提供します。Active DirectoryのKerberos認証メカニズムには、キー配布サーバー(KDC)(通常はドメインコントローラー)によってサポートされるチケット許可チケット(TGT)やチケット許可サービス(TGS)などの複数の要求と応答が含まれます。認証が成功すると、ユーザーはそれぞれのサービスにアクセスできるようになります。
ドメインに参加しているシステムにアクセスする攻撃者は、通常、Active Directoryコントローラー、データベースサーバー、SharePointサーバー、Webサーバーなどの価値の高い資産を探し、これらのサービスは特定のサービスプリンシパル名(SPN)でドメインに登録されます。)values。これは、ドメイン内のサービスアカウントの一意の識別子です。これらのSPN値は、クライアントがそれぞれのサービスに対して認証できるように、インスタンスをログオンアカウントにマップするためにKerberosによって使用されます。よく知られているSPN値はここにリストされています。攻撃者は、ドメインユーザーの資格情報で認証され、ドメイン内のサービスのSPN値に関する情報を取得すると、指定されたSPN値を使用してKey Distribution ServerへのKerberosチケット許可サービス要求(TGS – REQ)を開始できます。SPN値が登録され、Kerberos認証で使用される方法の詳細は、ここに記載されています。KDCからのTGS応答には、サービスアカウントのハッシュで暗号化されたKerberosチケットが含まれます。このチケットはメモリから抽出でき、ブルートフォースオフラインでサービスアカウントの資格情報を取得できるため、ドメインユーザーはサービスへの管理者レベルのアクセス権を取得できます。
Kerberoastingは、MITRE ATT&CKにリストされている十分に文書化された攻撃手法であり、本質的にKerberos認証を悪用して、攻撃者が有効なサービスアカウントのTGSチケットを要求し、ブルートフォースでチケットをオフラインにしてサービスアカウントのプレーンテキストの資格情報を抽出できるようにします。ドメインユーザーからドメイン管理者に権限を昇格させるためにそれらを使用します。この横方向の移動手法の最初のステップとして、攻撃者は内部偵察を実行して、ドメインに登録されているサービスに関する情報を取得し、SPN値を取得します。以下に示すように、Active Directory PowerShellモジュールをインポートした後の単純なPowerShellコマンドは、LDAPクエリを開始して、SPN値が設定されたドメインコントローラーからすべてのユーザーアカウントに関する情報を取得できます。
図9–LDAPクエリを生成するPowerShellコマンド
攻撃者は、Kerberos認証に使用される登録済みのSPN値を使用して、ドメインでMSSQLサービスをスキャンすることを具体的に選択できます。GetUserSPNなどのPowerShellスクリプトは、Discover-PSMSSQLServersまたはInvoke-Kerberoastスクリプトを使用して、ドメイン内のすべてのユーザーSPNまたはドメインに登録されているMSSQLサービスをスキャンできます。スクリプトからの出力例を次に示します。
図10–PowerShellスクリプト出力のKerberoasting
攻撃者がSQLサービスのSPN値を取得すると、そのSPN値を使用してドメインコントローラーに対してKerberosチケット付与サービスチケット要求(TGS-REQ)を開始できます。これは、以下に示すように、KRB-TGS-REQを生成するいくつかのPowerShellコマンドによって実行できます。
図11– KerberosTGS要求
その結果、ドメインコントローラーはサービスアカウントのチケットとともにTGS-RESPを送信します。このチケットはメモリにキャッシュされ、Mimikatzなどのツールを.kirbiドキュメントとしてダンプすることで抽出できます。これは、tgsrespcrackによってブルートフォースオフラインにされる可能性があり、攻撃者が昇格された特権でサービスに無制限にアクセスできるようにします。
Active Directoryドメインサービス(ntdis.dit)ファイルからの資格情報の盗用
先に述べたように、攻撃者がドメインネットワークに侵入すると、ActiveDirectoryコントローラーなどの重要な資産を標的にする方向に進むのは自然なことです。ActiveDirectoryデータベースサービスADDS Ntds.ditファイルは、ドメイン環境で最も見過ごされている攻撃ベクトルの1つですが、攻撃者がドメイン管理者権限を取得して完全なドメイン侵害につながる場合、重大な影響を与える可能性があります。
Ntds.ditファイルは、ドメインに参加している環境内のすべてのユーザーの資格情報の信頼できるストアであり、ユーザー、グループ、およびメンバーシップに関するすべての情報を格納します。これには、ドメイン内のすべてのユーザーの資格情報(NTハッシュ)と履歴パスワードが含まれます。ユーザーのDPAPIバックアップマスターキー。ドメイン管理者権限を持つ攻撃者は、Ntds.ditファイルをダンプして盗み出すことにより、ドメインコントローラーのファイルシステムにアクセスし、ハッシュ、Kerberosチケット、およびドメインに参加しているすべてのユーザーのその他の可逆的に暗号化されたパスワードなどの資格情報を取得できます。攻撃者はこれらの資格情報を使用して、ネットワーク内でPTHなどの攻撃手法を使用してリソースにさらにアクセスできます。これは、他の共有リソースで使用される資格情報が同じである可能性があるためです。
複数の手法を使用して、ドメインコントローラーからローカルおよびリモートでNtds.ditファイルをダンプし、ドメインに参加しているすべてのユーザーのNTLMハッシュ/ DPAPIバックアップキーを抽出できます。手法の1つは、vssadminコマンドラインユーティリティを使用してボリュームシャドウコピーサービスを使用し、次に示すように、ボリュームシャドウコピーからNtds.ditファイルを抽出することです。
図12–Cドライブのボリュームシャドウコピーのダンプ
Active Directoryの機密データは、SYSTEMレジストリハイブに格納されているブートキー(Syskey)で暗号化され、SYSTEMレジストリハイブをダンプすることも、すべての資格情報を抽出できるようにするための前提条件です。
DSInternalsなどの公開されているActiveDirectory監査フレームワークは、SYSTEMレジストリハイブからSyskeyを抽出し、Ntds.ditファイルからすべての資格情報を抽出するPowerShellコマンドレットを提供します。
Ntds.ditは、Active Directoryドメイン内の強力なサービスアカウントであるKRBTGT(Key Distribution Center Serviceアカウント)へのアクセスを提供することもできます。このアカウントのNTLMハッシュを取得すると、攻撃者はゴールデンチケット攻撃を実行して、ドメインに参加しているシステム上のサービスへの無制限のアクセスで完全なドメイン侵害を引き起こす可能性があります。
DCSync攻撃による資格情報の盗用–ドメインユーザーからドメイン管理者へ
DCSync攻撃は、攻撃者がドメインコントローラーになりすますことを可能にする資格取得の方法であり、その結果、ユーザーがDCにログオンしたり、Ntds.ditファイルをダンプしたりすることなく、すべてのActiveDirectoryオブジェクトを偽装クライアントにリモートで複製できます。ドメインコントローラーになりすますことにより、攻撃者はKRBTGTサービスアカウントのNTLMハッシュを取得し、ドメインに参加している環境内のすべての共有リソースとアプリケーションにアクセスできるようにする可能性があります。この資格情報を盗む手法を実行できるようにするには、攻撃者は、以下に示すように、必要な権限、具体的にはDS-Replication-Get-ChangesおよびDS-Replication-Get-Changes-Allでユーザーアカウントを侵害する必要があります。
図13–特権を持つユーザー
攻撃者が必要な権限でユーザーアカウントを侵害すると、Pass-The-Hash攻撃を実行して、偽造されたログオンセッションでコマンドシェルを生成できます。Mimikatzのような資格情報ダンプツールは、すべてのユーザーログオンセッションを列挙し、現在のログオンセッションでユーザー資格情報を盗まれたユーザー名と提供されたNTLMハッシュに置き換えることによってこれを行います。舞台裏では、これは現在のプロセスのアクセストークンを複製し、複製されたアクセストークンが指すユーザー資格情報を置き換え、続いて変更されたアクセストークンを使用して、ネットワーク認証に使用される盗まれた資格情報で新しいプロセスを開始することによって実行されます。これは、たとえばユーザー「DCPrivUser」のように以下のようになります。
図14–パスザハッシュ攻撃
さらに、以下に示すように、ログオンセッションからの後続のNTLM認証では、盗まれた資格情報を使用して、ActiveDirectoryコントローラーなどのドメインに参加しているシステムを認証します。
攻撃者は、Directory Replication Servicesリモートプロトコル(DRSUAPI)を使用して、ドメインコントローラーへのADユーザーオブジェクトのレプリケーション要求を開始できるようになりました。DRSUAPIは、ADオブジェクトのレプリケーションに使用されるRPCプロトコルです。DCERPCはDRSUAPIに要求をバインドすると、へのRPC呼び出しDSGetNCChangesを偽装し、クライアントにすべてのユーザーのADオブジェクトを複製します。攻撃者は通常、KRBTGTアカウントを標的にします。これは、このアカウントのNTLMハッシュを取得すると、ゴールデンチケット攻撃を実行できるようになり、ドメインサービスやアプリケーションへのアクセスが制限されなくなるためです。
図15–DCSync攻撃
前に示したように、KRBTGTアカウントのNTLMハッシュを使用して、攻撃者は偽造されたKerberosチケットを現在のセッションに挿入することにより、ゴールデンチケット攻撃(Pass-the-Ticket)を開始できます。チケットの受け渡しをサポートします(たとえば、DBサーバー、PsExecなどへのsqlcmd.exe接続)
図16–偽造されたKerberosチケットを使用したゴールデンチケット
ネットワーク詐欺による資格情報窃取攻撃の検出
前のセクションで説明した資格情報窃取の手法は、氷山の一角にすぎません。攻撃者は、他の多くの高度な資格情報を盗む手法を使用して、システムの設定ミスや正当な管理ツールやプロトコルを利用すると同時に、長期間検出されないままにすることができます。SIEMを使用した他の多くのイベント管理ソリューションを他のネットワークセキュリティソリューションと組み合わせて使用すると、管理者にとって、正当なツールやサービスの悪意のある使用と横方向の動きを区別することが課題になります。境界ソリューションには、攻撃者がネットワーク境界を越えてドメイン環境内に入ると、可視性の点で制限があります。組織にとって、ドメインコントローラーなどの重要なネットワーク資産を保護および監視することは非常に重要です。データベースサーバー、Exchangeサーバー、ビルドシステム、その他のアプリケーションまたはサービス。これらのシステムを危険にさらすと、重大な損害が発生します。したがって、エンタープライズネットワークは、資格情報を盗む攻撃を検出するソリューションを展開する必要があります。これは、攻撃者が価値の高いターゲットへの攻撃パスを確立すると、ネットワーク上の他のシステムにピボットして横方向に移動するために使用できるためです。ネットワークのクリティカルゾーン内にソリューションを展開することで、攻撃者がターゲットに到達する前に盗まれた資格情報の使用を検出できる場合でも、クリティカルな資産が危険にさらされるのを防ぐことができます。エンタープライズネットワークは、資格情報を盗む攻撃を検出するソリューションを展開する必要があります。これは、攻撃者が価値の高いターゲットへの攻撃パスを確立すると、ネットワーク上の他のシステムにピボットして横方向に移動するために使用できるためです。ネットワークのクリティカルゾーン内にソリューションを展開することで、攻撃者がターゲットに到達する前に盗まれた資格情報の使用を検出できる場合でも、クリティカルな資産が危険にさらされるのを防ぐことができます。エンタープライズネットワークは、資格情報を盗む攻撃を検出するソリューションを展開する必要があります。これは、攻撃者が価値の高いターゲットへの攻撃パスを確立すると、ネットワーク上の他のシステムにピボットして横方向に移動するために使用できるためです。ネットワークのクリティカルゾーン内にソリューションを展開することで、攻撃者がターゲットに到達する前に盗まれた資格情報の使用を検出できる場合でも、クリティカルな資産が危険にさらされるのを防ぐことができます。
ネットワーク詐欺は、MITREシールド技術を使用するドメイン環境内でのそのような展開の1つです。おとりシステムやネットワークのように、おとりの資格情報、おとりのアカウント、おとりの内容は、標的資産への敵の攻撃経路の早い段階で横方向の動きを検出するのに役立つ可能性があり、同時に、著しく低い誤検出率を報告します。欺瞞のアイデアは、数十年前のハニーポットシステムに由来しますが、それらとは異なり、信頼を築き、敵に彼らが探しているものを与えることに依存しています。組み込みのプロアクティブ性により、攻撃者を欺瞞的なシステムに誘導するように構成されています。次の図に示すように、Network Deceptionは、ドメインネットワーク内、特に重要な資産が配置されているネットワーク内に配置された、本物のように見えるおとりシステムで構成されています。これらのおとりシステム(仮想マシンの場合もあります)は、アプリケーションまたはサービスが構成された本格的なOSであり、ドメインコントローラー、Exchange、DBサーバーなどの重要なサービスや、これらのシステムにつながる可能性のあるその他のおとりマシンを複製できます。以下の画像は、ネットワーク欺瞞の主要な基本的側面を強調しています
図17–ネットワークの欺瞞
ネットワーク欺瞞の重要な側面
上の図で視覚化されているように、ネットワーク詐欺は、ドメインに参加している環境での展開に関して、次の重要な基本的な事実で構成されています。
- 展開の一環として、おとり/欺瞞的なマシンが、本番システムや重要な資産とともにネットワーク内に配置されます。これらのおとりシステムは、実際のシステムとうまく調和するために必要なセットアップを備えた実稼働グレードのオペレーティングシステムを備えた実際のシステムまたは仮想システムである可能性があります。
- 重要な側面の1つとして、欺瞞的なマシンは、攻撃者を本番サービスではなくおとりサービスに誘導するように構成されているため、攻撃者のターゲット資産への横方向の移動経路を逸らしたり誤解させたりします。
- おとりマシンの多くは、ドメインコントローラー、DBサーバー、Exchange / SharePointサーバー、およびデータセンター内の他の重要なサービスやアプリケーションなどの重要なサービスを複製できます。
- 正当なドメインユーザーは、修正が必要なネットワークの設定ミスがない限り、設定されたおとりマシンへのトラフィックを生成したり、設定されたおとりマシンと通信したりしないでください。
基本的なおとりネットワークのセットアップ
資格情報の窃取は標的型攻撃の成功に重要な役割を果たすため、欺瞞は基本的に、OS内の複数の場所にある本番エンドポイントとおとりエンドポイントに偽の資格情報を配置し、これらの資格情報を使用して他のシステムにピボットすることを監視することに重点を置いています。ネットワークのセットアップに関して、以下が重要な側面ですが、このリストは網羅的ではなく、さらに多くのものを追加することができます。
- おとりマシンを使用した重要なネットワーク資産とサービスの複製:Active Directory、DBサービスなどの重要なネットワークサービスを複製することは、これらがネットワークで最もターゲットを絞ったシステムであるため、より理にかなっています。おとりのActiveDirectoryは、欺瞞的なADオブジェクト(ユーザー、グループ、SPNなど)で構成する必要があります。他の複製されたサービスの欺瞞的な内容で。
- 本物の外観のおとりマシンを本番ネットワークに配置する:前述のように、これらのおとりマシンは、重要なインフラストラクチャの本番システムと一緒に配置された本番グレードのOSを備えた実マシンまたは仮想マシンである可能性があります。これらのおとりマシンは、おとりADに参加し、システムへの正常なログオン試行を監視するために、欺瞞的なユーザーアカウントで構成する必要があります。
- 本番エンドポイントへの不正な資格情報の挿入:本番エンドポイントには、LSASSプロセスメモリ、資格情報マネージャー、ブラウザーの資格情報などの複数の場所に欺瞞的な資格情報を注入して、これらの資格情報が取得され、ネットワーク。これらのエンドポイントは、公開されているマシンまたはそのレプリカである可能性もあります。
- おとりマシンは、おとりサービスを指すクライアントアプリケーションを実行します。おとりマシンは、欺瞞的な資格情報を使用してクライアントを実行し、おとりサービスを指すように構成されている場合があります。これらは、DB / FTP / Eメールクライアントおよびその他の複製されたおとりサービスである可能性があります。
- おとりシステムを「着陸禁止ゾーン」としてマークする:欺瞞の重要な展開の側面の1つは、すべてのおとりシステムとサービスを「着陸禁止ゾーン」としてマークすることです。つまり、正当なドメインユーザーがおとりにアクセスしたり、これらにアクセスしようとしたりすることはできません。システムは綿密に監視する必要があります。
欺瞞の効果的な展開に必要な他のセットアップのいくつかは、以下に要約されています。
図18–欺瞞的なネットワークのセットアップ–基本的な要件
基本的なおとりシステムのセットアップ
不正な資格情報の使用を検出するには、おとりマシンのセットアップもソリューションの重要な部分です。主に、おとりマシンは、攻撃者が横方向の移動フェーズ中に持っていることを望んでいるアクセスを可能にする必要があります。デコイは、関連する監査サービスがイベントを生成できるように構成する必要もあります。たとえば、次の場合、アカウントのログオンイベントを監査できます。
デコイマシンは、生成されたアクセスログを収集して相関サーバーに転送できるログコレクタエージェントを実行するように設定する必要があります。ただし、ドメインに参加している環境では、誤検知を最小限に抑えるために、関連するログのみを相関サーバーに転送するようにデコイマシンを調整することも不可欠です。
以下は、効果的な相関関係のためにおとりシステムで有効にする必要がある監査の一部を示しています。
図19–基本的なおとりのセットアップ
ネットワーク詐欺の図解と達成
次のセクションでは、ドメインネットワークで欺瞞を実現する方法の例と、資格情報の窃取を検出する方法を視覚化して説明します。
ネットワークの欺瞞–例1:NETONLYクレデンシャルをLSASSプロセスメモリに挿入する
LSASSプロセスメモリは、さまざまな資格情報をキャッシュするため、攻撃者の主要なターゲットの1つであり、横方向の移動機能を備えたマルウェアでもあります。LSASSプロセスからの資格情報の抽出には、EDR製品によって綿密に監視されているプロセス自体への読み取りハンドルを開く必要がありますが、それを回避するためのよりステルスな方法があります。
資格情報のデセプションを達成するための主要なタスクの1つは、LSASSプロセスメモリに欺瞞的な資格情報をステージングすることです。これは、指定された細工された資格情報でCreateProcessWithLogonW Windows APIを使用する簡単な資格情報インジェクションコードを実行することにより、本番システムとおとりシステムで実行できます。CreateProcessWithLogonWは、呼び出し元のプロセスアクセストークンを使用して新しいログオンセッションを作成し、指定された不正な資格情報のセキュリティコンテキストでパラメータとして指定されたプロセスを生成し、プロセスがバックグラウンドで実行されるまでLSASSメモリにステージングされます。以下は、指定された資格情報を使用してAPIを呼び出すサンプルコードを示しています。これは、資格情報がMimikatzで抽出されたときにも表示されます。
図20–LSASSメモリへの資格情報の挿入
CreateProcessWithLogonWのパラメーターの1つは「dwLogonFlags」です。これは、上記のコードに示すように、LOGON_NETCREDENTIALS_ONLYとして指定する必要があります。これにより、指定された資格情報がネットワーク上でのみ使用され、ローカルログオンには使用されないことが保証されます。さらに、ログオンセッションの作成に使用されるNETONLY資格情報は、システムによって検証されません。以下は、資格情報を取得するツールMimikatzからのコードスナップショットであり、同様のアプローチを使用してログオンセッションを偽造し、Pass-the-Hash攻撃の実行中に資格情報を提供されたものに置き換えます。
Figure 21 – Mimikatz code for PTH attack
ネットワーク詐欺–例2:おとりVMの欺瞞的なホスト名を構成する
ネットワーク内を横方向に移動する攻撃者またはマルウェアは、nbtstat / nbtscanを介して興味深いホスト名の偵察を行う可能性があります。横方向の移動パスを偏向させるために、実稼働システムと一致する実際のホスト名を使用しておとりシステムを構成できます。これらのホスト名は、以下に示すようにNetBIOSスキャンで表示されます。
図22–おとりマシンを指す欺瞞的なホスト名
これらのおとりシステムは、ネットワーク内のおとりドメインコントローラーに向けられた認証を使用して、おとりサービスを指す関連するクライアントアプリケーションを実行することもできます。この攻撃パスの検出ははるかに早い段階で行われますが、おとりネットワークの設定により、攻撃者の関与が維持され、管理者がツールとテクニックを研究するのに役立ちます。
図23–おとりサービスを指すクライアントを実行しているおとりマシン
保存された資格情報がドメイン内のおとりアプリケーションとサービスを指すことができるブラウザに対しても、同様の欺瞞の設定を行うことができます。たとえば、Chromeは、前のセクションで説明したように、DPAPIを使用して復号化できるSQLite形式で資格情報をディスクに保存します。以下の例は、おとりサービスに敵を誘惑する可能性のある欺瞞的なブラウザの資格情報を示しています。
図24–欺瞞的なブラウザの資格情報の挿入
上で説明したいくつかの手法、および前のセクションで強調した他の多くの手法に加えて、欺瞞の設定には、誤検知を最小限に抑えるためのおとりシステムのはるかに高度な構成が含まれ、悪意のあるアクティビティを正確に識別するために環境に合わせて調整する必要があります。欺瞞はまた、偵察や標的発見を含む横方向の動きの活動の他の複数の段階に対処するように構成することもでき、本質的に敵をリダイレクトし、標的への道を与えます。以下は、おとりネットワークがドメイン環境のように見える方法の高レベルの視覚化です。
図25–欺瞞ネットワークのセットアップ
ドメインに参加しているシステムまたは公開されているシステムの1つが侵害された場合、ネットワーク内の他のドメインに参加しているシステムに対して認証が試行されます。認証が試みられ、おとりシステムのいずれかにアクセスしてログオンした場合、これらの植え付けられた欺瞞的な資格情報の使用は危険信号であり、調査する必要があります。以下の視覚化は、おとりシステムの1つにアクセスする際に管理者に送信されるフローとイベントを示しています。
図26–ドメインでの認証のための不正な資格情報の使用
おとりシステムに正常にログオンするそのようなイベントの例の1つは、次のとおりです。
図27–不正な資格情報の使用に関する管理者へのアラート送信
MITER ATT&CK テクニック:
ここで説明する資格情報の窃取攻撃は、MITREによって次のようにマッピングされます。
Technique ID |
Technique名 |
Description |
T1003.001 |
LSASS Process Memory |
攻撃者は、LSASSプロセスメモリにアクセスして、さまざまな資格情報を保存しているため、資格情報を抽出しようとする可能性がある。プロセスメモリにアクセスするには、管理者権限が必要。 |
T1003.002 |
SAM Database |
SAMデータベースから資格情報にアクセスするには、システムレベルの権限が必要。マシン上のすべてのローカルユーザーアカウントの資格情報を保存する。 |
T1003.003 |
NTDS.dit file |
すべてのドメインユーザーの資格情報が含まれる。ファイルはDCに存在し、このファイルにアクセスするにはドメイン管理者権限が必要。 |
T1003.006 |
DCSync |
攻撃者は、ドメインコントローラーになりすまして、DCから資格情報を抽出し、DRSUAPIプロトコルを使用してDCから資格情報を複製できる。 |
T1558.001 |
Golden Ticket |
KRBTGTアカウントの資格情報を取得する攻撃者は、ゴールデンチケットと呼ばれるKerberosチケットを偽造して、ドメイン内の任意のシステムに無制限にアクセスできるようにすることができる。 |
T1558.002 |
Silver Ticket |
攻撃者がKerberos認証を悪用して、サービスアカウントへの管理者レベルのアクセスを取得できるようにする。 |
T1558.003 |
Kerberoasting |
攻撃者がサービスアカウントのKerberosチケットをメモリから抽出し、ブルートフォースオフラインで資格情報を取得できるようにする。 |
図28-MITREATT&CKマッピング
結論
攻撃者の横方向の動きは、資格情報を窃取する攻撃が重要な役割を果たすため、防御側のネットワーク内防御としても重要な役割を果たします。攻撃者の横方向の動きの戦術が進化し、よりステルスになっているため、防御側は重要なネットワーク資産を防御する革新的な方法に適応する必要があります。デセプションのようなネットワーク内の防御戦略は、データ窃取攻撃の検出と軽減に向けた有望で前向きなアプローチであることが証明される可能性があります。本番ネットワーク内におとりのシステムを戦略的に配置し、エンドポイントとおとりのシステムにおとりの資格情報とコンテンツを挿入します。SIEMを介してロギングと相関を正確に設定して、おとりのコンテンツの使用を監視することで、横方向の動きのライフサイクルの早い段階で攻撃を検出し軽減することができます。
User Entity Behavior Analytics(UEBA)やEndpoint Detection and Response(EDR)などのエンドポイントソリューションも、欺瞞インフラストラクチャの構築に重要な役割を果たす可能性があります。たとえば、UEBAソリューションが有用であることが証明できる方法の1つは、ユーザーの行動をベースライン化し、システム上の資格情報ストアへのアクセスを監視することです。UEBA / EDRは、偽造されたKerberosチケットがメモリに挿入されると危険信号を発する可能性があります。これにより、SIEMと統合すると、ユーザーレベルの可視性が大幅に向上し、資格情報の窃取攻撃を軽減する上で重要な役割を果たします。
※本ページの内容は2021年9月23日(ET時間)更新の以下のMcAfee Enterprise Blogの内容です。
原文:Detecting Credential Stealing Attacks Through Active In-Network Defense
著者:Chintan Shah