Shadow Credentials
Reading time: 7 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を提出してハッキングトリックを共有してください。
Intro
この技術に関するすべての情報を元の投稿で確認してください。
要約: ユーザー/コンピュータのmsDS-KeyCredentialLinkプロパティに書き込むことができれば、そのオブジェクトのNTハッシュを取得できます。
投稿では、ターゲットのNTLMハッシュを含むユニークなサービスチケットを取得するための公開鍵-秘密鍵認証資格情報を設定する方法が概説されています。このプロセスには、復号可能なPrivilege Attribute Certificate (PAC)内の暗号化されたNTLM_SUPPLEMENTAL_CREDENTIALが含まれます。
要件
この技術を適用するには、特定の条件を満たす必要があります:
- 最低1台のWindows Server 2016ドメインコントローラーが必要です。
- ドメインコントローラーには、サーバー認証デジタル証明書がインストールされている必要があります。
- Active DirectoryはWindows Server 2016ファンクショナルレベルである必要があります。
- ターゲットオブジェクトのmsDS-KeyCredentialLink属性を変更するための委任権を持つアカウントが必要です。
Abuse
コンピュータオブジェクトに対するKey Trustの悪用は、チケット付与チケット(TGT)とNTLMハッシュの取得を超えるステップを含みます。オプションには以下が含まれます:
- 意図したホスト上で特権ユーザーとして機能するためのRC4シルバーチケットを作成すること。
- S4U2Selfを使用して特権ユーザーのなりすましを行うために、サービス名にサービスクラスを追加するためにサービスチケットを変更する必要があります。
Key Trustの悪用の大きな利点は、攻撃者が生成した秘密鍵に制限され、潜在的に脆弱なアカウントへの委任を回避し、削除が難しいコンピュータアカウントの作成を必要としないことです。
Tools
### Whisker
これは、攻撃のためのC#インターフェースを提供するDSInternalsに基づいています。WhiskerとそのPythonの対応ツールであるpyWhiskerは、ターゲットオブジェクトのmsDS-KeyCredentialLink
属性を操作してActive Directoryアカウントを制御することを可能にします。これらのツールは、ターゲットオブジェクトからのキー資格情報の追加、リスト表示、削除、クリアなど、さまざまな操作をサポートしています。
Whiskerの機能には以下が含まれます:
- Add: キーペアを生成し、キー資格情報を追加します。
- List: すべてのキー資格情報エントリを表示します。
- Remove: 指定されたキー資格情報を削除します。
- Clear: すべてのキー資格情報を消去し、正当なWHfBの使用を妨げる可能性があります。
Whisker.exe add /target:computername$ /domain:constoso.local /dc:dc1.contoso.local /path:C:\path\to\file.pfx /password:P@ssword1
pyWhisker
UNIXベースのシステムにWhiskerの機能を拡張し、ImpacketとPyDSInternalsを活用して、KeyCredentialsのリスト、追加、削除を含む包括的なエクスプロイト機能を提供し、JSON形式でのインポートおよびエクスポートも可能です。
python3 pywhisker.py -d "domain.local" -u "user1" -p "complexpassword" --target "user2" --action "list"
ShadowSpray
ShadowSprayは、ドメインオブジェクトに対して広範なユーザーグループが持つ可能性のあるGenericWrite/GenericAll権限を悪用して、ShadowCredentialsを広く適用することを目的としています。これには、ドメインにログインし、ドメインの機能レベルを確認し、ドメインオブジェクトを列挙し、TGT取得とNTハッシュ開示のためにKeyCredentialsを追加しようとすることが含まれます。クリーンアップオプションと再帰的な悪用戦術がその有用性を高めます。
References
- https://posts.specterops.io/shadow-credentials-abusing-key-trust-account-mapping-for-takeover-8ee1a53566ab
- https://github.com/eladshamir/Whisker
- https://github.com/Dec0ne/ShadowSpray/
- https://github.com/ShutdownRepo/pywhisker
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を提出してハッキングトリックを共有してください。