samedi 24 mai 2008

Cain, HTTPS et MITM, une vrai histoire d'amour.

Vu que le we était quelque peu moyen niveau météo, rien ne vaut un peu de lecture. Je parcours le dernier hors-série de Hacking et sur le CD présent avec le magazine, il y a une vidéo présentant l'attaque Man-in-the-Middle avec Cain&Abel. Sachant comment cela fonctionne au niveau des protocoles non cryptés (http, ftp, telnet, ...) je me suis demandé comment ça réagissait avec le protocole https sur la récupération des trames en clair mais aussi comment le Web browser réagissait face à l'usurpation d'identité (prochainement je ferais des tests avec sftp et ssh).

Et c'est parti pour la mise en place ... 2 PC (un gentil, un méchant) et ma box Internet. Le gentil PC tourne sous Windows avec IE7, Firefow2.0 et 0pera9.5.
Le méchant lance sont ARP poisoning pour rediriger les flux.
(Gentil) <------->(Méchant)<-------->(Box)<----->(Web)

Trafic en clair
Hormis le changement dans le cache ARP aucun autre changement de comportement n'est à noter. Les mots de passe des communications non cryptées sont interceptés sans aucune difficulté.


Trafic crypté
Concrètement, Cain réalise un faux certificat pour se faire passer pour le site distant et conserver l'url en "https://". Allons faire un tour sur https://gmail.com

  • Avec Firefox
Bon clairement avec Firefox, l'utilisateur ne peut se connecter au site. L'accès lui est refusé, c'est clair c'est net. Et aucune option ne peut contourner le blocage.







  • Avec IE7
Hormis le message habituel "Etes-vous sûr de vouloir continuer?" et la barre d'adresse en rouge, aucun autre avertissement n'est à noter. L'utilisateur se connecte quand même au site.













  • Avec Opéra
Une boîte de dialogue apparait pour prévenir que le site en question n'est pas connu (gmail...? personne connait...???). Mais il est quand même possible de se connecter au site Web.




















Conclusion
Ce test a été réaliser sur un site "connu" et reconnu par une entité tiers. Lors d'une tentative de connexion à un site qui n'est pas authentifié par un tiers les messages sont identiques hormis pour Firefox qui cette fois demande une validation de l'utilisateur. Donc impossible de savoir si vous subissez une attaque type MITM.

En gros le vainqueur face à ce type d'attaque est Firefox.

Concernant une éventuelle protection contre ce genre d'attaque, entrer en "dur" l'association IP <-> MAC peut être une solution. Sinon en cas d'un cache dynamique, la mise en place d'un test de différence sur les entrées ARP signalant tout changement peut être une bonne technique. Bien évidement ces deux solutions fonctionnent si l'adresse MAC du "méchant" diffère de celle de la "box".
Next step: avec sftp et ssh.

Aucun commentaire:

Enregistrer un commentaire