Outils pour utilisateurs

Outils du site


openssl-heartbleed

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

openssl-heartbleed [2016/02/02 07:59]
arkinar
openssl-heartbleed [2016/07/04 08:34]
Ligne 1: Ligne 1:
-**Faille OpenSSL:** 
  
-{{ :​heartbleed.png?​nolink&​100 |}} 
- 
-**Heartbleed** est une faille SSL/TLS qui permet de lire une partie de la mémoire du serveur (plus exactement 64k). 
- 
-Il s'agit d'un trou de sécurité dans OpenSSL, une librairie qui gère les échanges entre un client et le serveur en chiffrant les informations à l'aide de certificat. 
- 
-__D'​où vient le nom Heartbleed ?__ 
- 
-Le mot "​heartbeat"​ qui signifie "​battement de cœur",​ désigne en informatique une façon pour un système de vérifier la présence d'un autre, sous la forme d'un envoi et d'une réponse rappelant le battement du cœur. La faille survient dans l'​implémentation de cet échange, où un système pouvait demander à l'​autre de ne pas renvoyer une simple validation de sa présence, mais jusqu'​à 64 000 caractères (ou 64 k). D'où le nom "​Heartbleed",​ qui signifie "​saignement du coeur"​. 
- 
-**Schéma du fonctionnement de la faille** 
- 
-{{ :​heartbleed2.png?​nolink&​300 |}} 
-[[http://​www.heartbleed.fr/​images/​heartbleed.png]] 
- 
-**Exploitation** 
- 
-Comme vous pouvez le constater c'est relativement embêtant. 
- 
-__Première technique d'​exploitation__ 
- 
-Un outil Python nommé Heartbleed.py a été développé (les informaticiens sont généralement très inventif quand il s'agit de donner des noms) 
- 
-Je vous le met à disposition [[http://​wikisecu.fr/​tools/​heartbleed.py]] 
- 
-{{ :​hb.png?​nolink |}} 
- 
-Utilisation : 
- 
-python heartbleed.py nom_du_site_web 
- 
-Si le port ssl n'est pas spécifié , par défaut le port 443 est utilisé 
- 
-Pour spécifier un autre port , utilisez l'​option -p 
- 
-Vous devriez obtenir cela : 
- 
-{{ :​heartbleed-example-593x250.png?​nolink |}} 
- 
- 
-Vous pouvez obtenir des informations précieuses lors d'un test d'​intrusion. 
- 
- 
-__Seconde technique d'​exploitation :__ 
- 
-Si vous analysez une capture d'un trafic réseau, il se peut que vous aillez été confronté à des trames chiffrées en https. Si vous n'avez pas le certificat impossible de lire le contenu des paquets. 
- 
-Un outil à été développé sur [[https://​github.com/​robertdavidgraham/​heartleech]] par Robertdavidgraham , il permet d'​aspirer le certificat du site qui chiffre les connexions grâce à la librairie OpenSSL 
- 
-Une fois le certificat récupéré il suffit de l'​ajouter à Wireshark pour déchiffrer les paquets ​ 
-(Si il y a des intéressés,​ je ferais un article plus détaillé dessus.) 
- 
- 
-__ 
-Pousser un peu plus loin la technique:​__ 
- 
-**Avec NMAP :** 
- 
-Il existe un script nse (script pour nmap) dédié pour heartbleed. (tuto sur kali linux) 
- 
-Vous pouvez le télécharger : 
- 
-[[ https://​svn.nmap.org/​nmap/​scripts/​ssl-heartbleed.nse]] (le script) 
- 
-[[https://​svn.nmap.org/​nmap/​nselib/​tls.lua]] (la librairie nécessaire pour le script) 
- 
-Copier coller le .nse dans le dossier /​usr/​share/​nmap/​scripts/​ 
- 
-Il faudra lui ajouter sa librairie que l'on va copier dans /​usr/​share/​nmap/​nselib/​ 
- 
-On va mettre à jour la base de donnée des scripts nmap : 
- 
-<​code>​nmap --script-updatedb</​code>​ 
- 
-Pour l'​utilisation : 
- 
-<​code>​nmap -p 443 --script ssl-heartbleed </​code>​ 
- 
-exemple: 
- 
-<​code>​nmap -p 443 --script ssl-heartbleed www.yahoo.com </​code>​ 
- 
-Si le site est vulnérable,​ la réponse devrait être: 
- 
--- PORT    STATE SERVICE 
- 
--- 443/tcp open  https 
- 
---  ssl-heartbleed:​\r\n 
- 
---    VULNERABLE: 
- 
---    The Heartbleed Bug is a serious vulnerability in the popular OpenSSL cryptographic software library. It allows for stealing information intended to be protected by SSL/TLS encryption. 
- 
---      State: VULNERABLE 
- 
---      Risk factor: High 
- 
---      Description:​ 
- 
--- |       ​OpenSSL versions 1.0.1 and 1.0.2-beta releases (including 1.0.1f and 1.0.2-beta1) of OpenSSL are affected by the Heartbleed bug. The bug allows for reading memory of systems protected by the vulnerable OpenSSL versions and could allow for disclosure of otherwise encrypted confidential information as well as the encryption keys themselves. 
- 
--- 
- 
-Sources: 
- 
-[[https://​cve.mitre.org/​cgi-bin/​cvename.cgi?​name=CVE-2014-0160]] 
- 
-[[http://​www.openssl.org/​news/​secadv_20140407.txt]] 
- 
-[[http://​cvedetails.com/​cve/​2014-0160/​]] 
- 
- 
-**Avec Metasploit:​** 
- 
-Un module auxiliaire à été développé,​ vous le trouverez dans : 
- 
-auxilary/​scanner/​ssl/​openssl_heartbleed 
- 
-{{ :​metasploit-hb.png?​nolink |}} 
- 
-Il permet de scanner un host pour savoir si il est vulnérable. 
openssl-heartbleed.txt · Dernière modification: 2016/07/04 08:34 (modification externe)