Introduction
Le protocole HTTPS, basé sur SSL (voir la fiche SSL
pour plus d'explication), apporte la confidentialité, l'intégrité et l'authentification des échanges de données
entre un site Web et un navigateur. Contrairement à toutes les indications de ces mêmes sites dit sécurisés,
l'utilisation de ce protocole n'est pas infaillible et ne doit pas empêcher d'être vigilant. En effet, il existe
un attaque, le Man in the Middle, applicable au HTTPS. Succinctement, ce type d'attaque consiste pour un
pirate à ce mettre entre le client qui utilise son navigateur et le site Web en question :
La conséquence immédiate est la perte des trois critères précédemment cités, à savoit que le pirate a la
possibilité de lire en clair et/ou de modifier les données échangées. WinSSLMiM met en oeuvre cette attaque dite
du Man in the Middle SSL (ou HTTPS plus précisément)
Ce type d'attaque est connue maintenant depuis plusieurs années et les outils adéquates sont déjà disponibles
sur Linux (sslmim, sslsniff ou webmitm du package dsniff). Il existe biensûr un moyen de détecter une attaque de
ce genre. Grâce au SSL, le serveur Web est authentifié via un certificat X509 (l'équivalent d'une identité
numérique). Ce certificat est signé par une autorité de certification (Certification Authority ou CA) reconnue
internationalement et surtout par les navigateurs. Ainsi lorsqu'un certificat n'est pas conforme ou signé par
une CA connue, le navigateur émet une alerte de ce type :
Dans le cas de l'attaque, le pirate doit substituer son propre certificat (signé par lui même et non par une
CA) à celui du vrai serveur. Le navigateur alerte donc l'utilisateur sur la non conformité de ce certificat. La
sécurité du mécanisme repose alors uniquement sur le clique de souris de l'utilisateur sur le bouton "non". Pour
le certificat de notre pirate, il est assez logique de répondre "non" après l'avoir affiché :
Lors d'une véritable attaque, il n'est pas aussi simple de voir la supercherie. Des techniques avancées ont
été implémentées dans les outils sous Linux. En ce qui concerne WinSSLMiM, il a l'avantage de fonctionner sous
Windows 9x/2000 et de réunir les principales fonctionnalités avancées liées à cette attaque.