Définition de Mimikatz
Mimikatz est un outil de post-exploitation de premier plan qui vide les mots de passe de la mémoire, ainsi que les hachages, les épingles et les tickets Kerberos. D’autres attaques utiles qu’il permet sont le pass-the-hash, le pass-the-ticket ou la construction de tickets Kerberos dorés. Cela facilite le mouvement latéral post-exploitation au sein d’un réseau pour les attaquants.
Mimikatz, décrit par l’auteur comme « un petit outil pour jouer avec la sécurité Windows », est un outil de sécurité offensive incroyablement efficace développé par Benjamin Delpy. Il est utilisé par les testeurs de pénétration et les auteurs de logiciels malveillants. Le malware destructeur NotPetya 2017 a déployé des exploits de la NSA comme EternalBlue avec Mimikatz pour obtenir un maximum de dégâts.
Conçu à l’origine comme un projet de recherche par Delpy pour mieux comprendre la sécurité de Windows, Mimikatz comprend également un module qui décharge le Dragueur de mines de la mémoire et vous indique où se trouvent toutes les mines.
Mimikatz n’est pas difficile à utiliser, et Mimikatz v1 est livré en tant que script meterpreter dans le cadre de Metasploit. La nouvelle mise à niveau de Mimikatz v2 n’a pas encore été intégrée à Metasploit à ce jour.
Le nom « mimikatz » vient de l’argot français « mimi » qui signifie mignon, donc « chats mignons. » (Delpy est français et il blogue sur Mimikatz dans sa langue maternelle.)
Comment fonctionne Mimikatz?
Mimikatz exploite la fonctionnalité d’authentification unique (SSO) de Windows pour récolter les informations d’identification. Jusqu’à Windows 10, Windows utilisait par défaut une fonctionnalité appelée WDigest qui charge les mots de passe cryptés en mémoire, mais charge également la clé secrète pour les déchiffrer. WDigest a été une fonctionnalité utile pour authentifier un grand nombre d’utilisateurs sur un réseau d’entreprise ou de gouvernement, mais permet également à Mimikatz d’exploiter cette fonctionnalité en vidant de la mémoire et en extrayant les mots de passe.
En 2013, Microsoft a permis de désactiver cette fonctionnalité à partir de Windows 8.1, et elle est désactivée par défaut dans Windows 10. Cependant, Windows est toujours livré avec WDigest, et un attaquant qui obtient des privilèges d’administration peut simplement l’activer et exécuter Mimikatz.
Pire, tant de machines héritées à travers le monde exécutent des versions plus anciennes de Windows que Mimikatz est toujours aussi incroyablement puissant et le restera probablement pendant de nombreuses années à venir.
Historique de Mimikatz
Delpy a découvert la faille WDigest dans l’authentification Windows en 2011, mais Microsoft l’a balayé lorsqu’il a signalé la vulnérabilité. En réponse, il a créé Mimikatz — écrit en C — et a lancé le binaire sur Internet, où il a rapidement gagné en popularité parmi les chercheurs en sécurité, sans parler de l’attention indésirable des gouvernements du monde entier, entraînant la publication éventuelle du code source sur GitHub.
Mimikatz a été presque immédiatement utilisé par des attaquants d’État-nation, le premier cas connu étant le piratage en 2011 de DigiNotar, l’autorité de certification néerlandaise aujourd’hui disparue, qui a fait faillite à la suite de l’intrusion. Les attaquants ont émis de faux certificats pour Google et les ont utilisés pour espionner les comptes Gmail de plusieurs centaines de milliers d’utilisateurs iraniens.
L’outil de sécurité a depuis été utilisé par les auteurs de logiciels malveillants pour automatiser la propagation de leurs vers, y compris l’attaque NotPetya susmentionnée et l’épidémie de ransomware BadRabbit de 2017. Mimikatz restera probablement un outil de sécurité offensif efficace sur les plates-formes Windows pendant de nombreuses années à venir.
Comment se défendre contre Mimikatz
Se défendre contre l’utilisation post-exploitation de Mimikatz par un attaquant est un défi. Étant donné qu’un attaquant doit avoir un accès root sur une boîte Windows pour utiliser Mimikatz, le jeu est déjà terminé à certains égards. La défense devient donc une question de contenir les dégâts et de limiter le carnage qui en résulte.
Réduire le risque qu’un attaquant disposant de privilèges d’administrateur n’accède aux informations d’identification en mémoire à l’aide de Mimikatz est possible et en vaut la peine, cependant. La grande chose à retenir est de limiter les privilèges d’administrateur aux seuls utilisateurs qui en ont réellement besoin.
Mise à niveau vers Windows 10 ou 8.1, au moins, est un début et atténuera le risque qu’un attaquant utilise Mimikatz contre vous, mais dans de nombreux cas, ce n’est pas une option. Le renforcement de l’Autorité de sécurité locale (LSA) pour empêcher l’injection de code est une autre stratégie éprouvée pour atténuer le risque.
La désactivation des privilèges de débogage (SeDebugPrivilege) peut également être d’une efficacité limitée, car Mimikatz utilise des outils de débogage Windows intégrés pour vider la mémoire. La désactivation manuelle de WDigest sur les anciennes versions non corrigées de Windows ralentira un attaquant pendant, oh, une minute ou deux — cela vaut toujours la peine d’être fait, cependant.
Une pratique malheureusement courante est la réutilisation d’un seul mot de passe administratif dans une entreprise. Assurez-vous que chaque boîte Windows a son propre mot de passe administrateur unique. Enfin, sous Windows 8.1 et supérieur, l’exécution de LSASS en mode protégé rendra Mimikatz inefficace.
Détecter la présence et l’utilisation de Mimikatz sur un réseau d’entreprise n’est pas non plus une panacée, car les solutions de détection automatisées actuelles ne présentent pas un taux de réussite élevé. La meilleure défense est probablement une bonne attaque: Testez régulièrement vos propres systèmes avec Mimikatz et ayez une activité de surveillance humaine réelle sur votre réseau.