
Extraire les identifiants de lsass à distance
Outil Python pour extraire à distance des identifiants sur un ensemble d'hôtes. Cet article de blog explique son fonctionnement.
Cet outil utilise le projet impacket pour lire à distance les octets nécessaires dans le dump lsass et pypykatz pour extraire les identifiants.
| Chapitres | Description |
|---|---|
| Avertissement | Avant d'utiliser cet outil, lisez ceci |
| Installation | Installation de lsassy |
| Utilisation de base | Utilisation de base de lsassy |
| Utilisation avancée | Utilisation avancée de lsassy avec explication des paramètres |
| Ajouter une méthode de dump | Comment ajouter une méthode de dump lsass personnalisée |
| Remerciements | Remerciements à ces personnes et outils |
| Discord officiel | Serveur Discord officiel |
Bien que j'aie fait tout mon possible pour rendre l'outil stable, des traces peuvent subsister en cas d'erreur.
Cet outil peut laisser des dumps lsass s'il n'a pas réussi à les supprimer (bien qu'il fasse de son mieux) ou laisser une tâche planifiée en cours d'exécution s'il ne parvient pas à la supprimer. Cela ne devrait pas arriver, mais c'est possible. Maintenant, vous savez, utilisez-le avec précaution.
lsassy fonctionne avec python >= 3.7
python3 -m pip install lsassy
python3 setup.py install
lsassy fonctionne immédiatement sur plusieurs cibles (IP, plages, CIDR, noms d'hôte, FQDN, fichiers contenant une liste de cibles)
lsassy [-d domain] -u pixis -p P4ssw0rd targets
lsassy [-d domain] -u pixis -H [LM:]NT targets
Par défaut, lsassy tentera de dumper lsass à distance en utilisant la méthode comsvcs.dll, soit via WMI, soit via une tâche planifiée à distance.
lsassy peut s'authentifier avec Kerberos. Cela nécessite un TGT valide dans la variable d'environnement KRB5CCNAME. Voir utilisation avancée pour plus de détails.
lsassy -k targets
lsassy -d hackn.lab -u pixis -p P4ssw0rd 192.168.1.0/24
lsassy -d hackn.lab -u pixis -p P4ssw0rd 192.168.1.1-10
lsassy -d hackn.lab -u pixis -p P4ssw0rd hosts.txt
lsassy -d hackn.lab -u pixis -p P4ssw0rd 192.168.1.1-192.168.1.10
Différentes méthodes de dump de lsass sont implémentées dans lsassy, et certaines options sont fournies pour donner à l'utilisateur le contrôle sur la façon dont l'outil procédera.
lsassy est divisé en modules
+-----------+
| Writer |
+-----+-----+
|
|
+----------+ +-----+-----+ +---------+
| Parser |------| Core |----| Session |
+----------+ +-----+-----+ +---------+
|
|
+-----------+
| Dump |-+
| Methods | |-+ +----------+
+-----+-----+ | |----| File |
+-----------+ | +----------+
+------------+
|
|
+-----------+
| Exec |-+
| Methods | |-+
+-----+-----+ | |
+-----------+ |
+------------+
Ce module est l'orchestrateur. Il crée la classe lsassy avec les arguments et options fournis, puis appelle les différents modules pour récupérer les identifiants.
Ce module est utilisé pour la journalisation.
Il s'agit d'une couche construite au-dessus d'Impacket pour se comporter comme un objet fichier natif de Python. Il remplace les méthodes telles que open, read, seek, ou close.
Ce module est celui où toute la logique de dump se produit. Selon la méthode utilisée, il exécutera du code sur l'hôte distant pour dumper lsass en utilisant la méthode fournie.
Ce module repose sur pypykatz et utilise le module fichier de lsassy pour analyser à distance le dump lsass.
Ce module gère la partie sortie, soit à l'écran dans différents formats et/ou écrit les résultats dans un fichier.
Cet outil peut dumper lsass de différentes manières.
Méthodes de dump (-m ou --method)
Cette méthode utilise uniquement des fichiers Windows intégrés pour extraire les identifiants distants. Elle utilise la fonction minidump de comsvcs.dll pour dumper le processus lsass.
Cette méthode télécharge procdump.exe de SysInternals pour dumper le processus lsass.
Cette méthode télécharge dumpert.exe ou dumpert.dll de outflanknl pour dumper le processus lsass en utilisant des appels système.
Cette méthode télécharge NativeDump.exe de ricardojoserf pour dumper le processus lsass en utilisant uniquement les API NT.
Cette méthode télécharge ppldump.exe de itm4n pour dumper le processus lsass et contourner PPL.
Cette méthode télécharge Mirrordump.exe de Ccob pour dumper lsass en utilisant un handle déjà ouvert vers lsass via un plugin LSA.
Cette méthode utilise la technique WER utilisée dans PowerSploit.
Pour certaines méthodes de dump, des options sont nécessaires, comme le chemin de procdump ou dumpert. Ces options peuvent être définies en utilisant --options ou -O avec une liste d'options séparées par des virgules sous la forme key=value.
... --options key=value,foo=bar
Par exemple :