Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
SharpDPAPI — SharpDPAPI est un port C# d'une partie des fonctionnalités DPAPI de Mimikatz. | Kitploit
Outils/GitHubGitHub/ghostpack/sharpdpapi
Cassage de Mots de PasseOutils de Chiffrement/DéchiffrementMécanismes de PersistanceExploitationExfiltration de DonnéesPost-ExploitationTests d'IntrusionRed TeamingTop en Mécanismes de Persistance n°8
1.4k24922il y a 2 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHub
ghostpack/sharpdpapi

SharpDPAPI

SharpDPAPI est un port C# d'une partie des fonctionnalités DPAPI de Mimikatz.

Voir le dépôt

SharpDPAPI


SharpDPAPI est un portage en C# de certaines fonctionnalités DPAPI du projet Mimikatz de @gentilkiwi.

Je n'ai pas inventé cette logique, il s'agit simplement d'un portage de Mimikatz afin de mieux comprendre le processus et de l'opérationnaliser pour l'adapter à notre flux de travail.

Le sous-projet SharpChrome est une adaptation des travaux de @gentilkiwi et @djhohnstein, en particulier son projet SharpChrome. Cependant, cette version de SharpChrome utilise une version différente de la bibliothèque SQL C# qui supporte l'ouverture sans verrou. SharpChrome est construit comme un projet séparé dans SharpDPAPI en raison de la taille de la bibliothèque SQLite utilisée.

Les navigateurs Chrome et les nouveaux Edge basés sur Chromium peuvent être analysés avec SharpChrome.

SharpChrome utilise également une version minimisée du code BCrypt P/Invoke de @AArnott, publié sous licence MIT.

Si vous n'êtes pas familier avec DPAPI, consultez cet article pour plus d'informations générales. Pour plus d'informations sur les Credentials et les Vaults en lien avec DPAPI, consultez l'entrée wiki de Benjamin sur le sujet.

@harmj0y est l'auteur principal de ce portage.

SharpDPAPI est sous licence BSD 3-Clause.

Table des matières

  • SharpDPAPI
    • Table des matières
    • Contexte
      • Utilisation en ligne de commande de SharpDPAPI
      • Utilisation en ligne de commande de SharpChrome
      • Utilisation opérationnelle
        • SharpDPAPI
        • SharpChrome
    • Commandes SharpDPAPI
      • Analyse utilisateur
        • masterkeys
        • credentials
        • vaults
        • rdg
        • keepass
        • certificates
        • triage
      • Analyse machine
        • machinemasterkeys
        • machinecredentials
        • machinevaults
        • certificates /machine
        • machinetriage
      • Divers
        • ps
        • blob
        • backupkey
        • search
        • SCCM
    • Commandes SharpChrome
      • logins
      • cookies
      • statekeys
      • backupkey
    • Instructions de compilation
      • Cibler d'autres versions de .NET
      • Remarque : Exécution de SharpDPAPI via PowerShell
        • Remarque subsidiaire : Exécution de SharpDPAPI via PSRemoting

Contexte

SharpDPAPI Utilisation en ligne de commande

  __                 _   _       _ ___
 (_  |_   _. ._ ._  | \ |_) /\  |_) |
 __) | | (_| |  |_) |_/ |  /--\ |  _|_
                |
  v1.20.0

Récupérer la clé de sauvegarde DPAPI d'un contrôleur de domaine, avec possibilité de spécifier un DC et un fichier de sortie :

  SharpDPAPI backupkey [/nowrap] [/server:SERVER.domaine] [/file:cle.pvk]

La commande *search* recherche les blobs DPAPI potentiels dans le registre, les fichiers, les dossiers et les blobs base64 :

    search /type:registry [/path:HKLM\chemin\vers\clé] [/showErrors]
    search /type:folder /path:C:\chemin\vers\dossier [/maxBytes:<nbOctets>] [/showErrors]
    search /type:file /path:C:\chemin\vers\fichier [/maxBytes:<nbOctets>]
    search /type:base64 [/base:<chaîne base64>]

Analyse machine/SYSTEM :

    machinemasterkeys       -   analyse tous les fichiers de clé maître machine accessibles (s'élève en SYSTEM pour récupérer le secret LSA DPAPI_SYSTEM)
    machinecredentials      -   utilise 'machinemasterkeys' puis analyse les fichiers Credential machine
    machinevaults           -   utilise 'machinemasterkeys' puis analyse les Vaults machine
    machinetriage           -   exécute les commandes 'machinecredentials' et 'machinevaults'

Analyse utilisateur :

    Arguments pour la commande 'masterkeys' :

        /target:FICHIER/dossier     -   analyse une clé maître spécifique, ou un dossier contenant des clés maîtres (sinon analyse les clés maîtres locales)
        /pvk:BASE64...          -   utilise un fichier de clé privée DPAPI de domaine encodé en base64 pour d'abord déchiffrer les clés maîtres utilisateur accessibles
        /pvk:cle.pvk            -   utilise un fichier de clé privée DPAPI de domaine pour d'abord déchiffrer les clés maîtres utilisateur accessibles
        /password:X             -   déchiffre les clés maîtres de l'utilisateur cible en utilisant un mot de passe en clair (fonctionne à distance)
        /ntlm:X                 -   déchiffre les clés maîtres de l'utilisateur cible en utilisant un hash NTLM (fonctionne à distance)
        /credkey:X              -   déchiffre les clés maîtres de l'utilisateur cible en utilisant une credkey DPAPI (SHA1 de domaine ou local, fonctionne à distance)
        /rpc                    -   demande au contrôleur de domaine de déchiffrer les clés maîtres de l'utilisateur cible
        /server:SERVEUR          -   analyse un serveur distant, en supposant un accès administrateur
        /hashes                 -   affiche les 'hashes' des fichiers de clé maître utilisateur au format JTR/Hashcat (sans déchiffrement)

    Arguments pour les commandes credentials|vaults|rdg|keepass|triage|blob|ps :

        Déchiffrement :
            /unprotect          -   force l'utilisation de CryptUnprotectData() pour les commandes 'ps', 'rdg' ou 'blob'
            /pvk:BASE64...      -   utilise un fichier de clé privée DPAPI de domaine encodé en base64 pour d'abord déchiffrer les clés maîtres utilisateur accessibles
            /pvk:cle.pvk        -   utilise un fichier de clé privée DPAPI de domaine pour d'abord déchiffrer les clés maîtres utilisateur accessibles
            /password:X         -   déchiffre les clés maîtres de l'utilisateur cible en utilisant un mot de passe en clair (fonctionne à distance)
            /ntlm:X             -   déchiffre les clés maîtres de l'utilisateur cible en utilisant un hash NTLM (fonctionne à distance)
            /credkey:X          -   déchiffre les clés maîtres de l'utilisateur cible en utilisant une credkey DPAPI (SHA1 de domaine ou local, fonctionne à distance)
            /rpc                -   demande au contrôleur de domaine de déchiffrer les clés maîtres de l'utilisateur cible
            GUID1:SHA1 ...      -   utilise une ou plusieurs clés maîtres GUID:SHA1 pour le déchiffrement
            /mkfile:FICHIER     -   utilise un fichier contenant une ou plusieurs clés maîtres GUID:SHA1 pour le déchiffrement
Télécharger l’outil