Je me suis connecté dernièrement au réseau sans fil de la bibliothèque, et le soir même tous mes comptes avec lesquels je me suis connecté ont été piratés, pourtant je n’ai pas donné mon mot de passe à qui que ce soit et personne n’était à côté de moi ! …
C’est une histoire qui n’est pas si rare qu’elle en a l’air, il s’agit d’une attaque par sniffing réseau aussi appelée reniflage réseau en français.

Reniflage réseau ?

Le reniflage réseau consiste à écouter les communications réseau afin de récupérer et d’analyser le contenu transmis. Ce contenu peut-être constitué d’informations très sensibles lorsque aucun chiffrement n’est utilisé. Parmi ces informations sensibles, on peut trouver le contenu d’une conversation par mail, les cookies ou encore les fameux mots de passe.

Alors comment trouver un mot de passe ?

Entrons dans le vif du sujet, comment trouver un mot de passe transitant sur le réseau ? Comment un pirate peut-il nous voler un mot de passe en utilisant un simple renifleur réseau ?

Exemple avec Wireshark

Imaginons que cet exemple me permette de me connecter à mon compte sur un forum, sur un blog ou à n’importe quel autre service demandant un login et un mot de passe :
trouver un mot de passe avec wireshark
Si maintenant je commence à capturer le trafic réseau avec Wireshark puis me connecte avec pour login « admin » et pour mot de passe « mdp », je vois aussitôt s’afficher une liste de paquets réseau dont un paquet HTTP, plus précisément je vois les informations envoyées par la méthode POST :
wireshark sniffing réseau
Et comme vous le constatez, mon login et mon mot de passe apparaissent tous les deux ici en clair, dans la partie du milieu (txt=admin&pass=mdp&sub=Envoyer).
La capture a été faîte à partir de ma propre carte réseau, je reçois donc tout ce qui part et arrive vers ma carte.
Je pourrais très bien configurer Wireshark pour écouter sur mon réseau local complet. Il suffit de lui fournir la clé WEP ou WPA de la box si il s’agit d’un réseau wifi.
Cette façon de sniffer un réseau est très facile à mettre en place et ne demande pas de connaissances très spécifiques.

Comment se protéger contre le sniffing réseau ?

Vous comprenez maintenant déjà mieux pourquoi on dit souvent qu’il ne faut pas se connecter dans les cybercafés et autres réseaux publics.
Non seulement vous ne savez pas toujours quels programmes sont lancés sur l’ordinateur que vous utilisez, mais en plus vous pouvez être victime de reniflage réseau.
En fait, la meilleure protection contre ce type d’attaque est d’utiliser un protocole de communication sécurisé comme HTTPS.
Voici une capture d’écran d’une interface de connexion semblable à l’écran précédent mais utilisant cette fois HTTPS :
trouver un mot de passe en https ? non
On ne voit plus en clair les données transmises (Encrypted Application Data) et on ne peut donc plus trouver un mot de passe sans clé de déchiffrement.

Sensibilisation au vol de session

Toujours dans le reniflage réseau, on notera qu’au lieu de trouver un mot de passe, on peut purement et simplement voler la session d’une personne connectée.
En effet, lorsque vous vous connectez à un site comme Facebook, vous donnez votre adresse e-mail et votre mot de passe. Le serveur vérifie ensuite si les informations que vous avez fournies correspondent à un compte existant, et répond avec un joli « cookie » qui sera utilisé par votre navigateur pour toutes les requêtes suivantes.
Les sites protègent très bien votre mot de passe en cryptant la connexion initiale, mais bizarrement ils ne cryptent rien d’autre. Laissant le cookie et donc l’utilisateur vulnérable à un vol de session HTTP. Ce vol de session permet à un pirate qui détient ce cookie de littéralement faire tout ce qu’un utilisateur peut faire sur un site donné. Dans un réseau wifi ouvert, les cookies sont en fait transmis dans l’air, rendant ces attaques très faciles.
C’est ce que l’extension Firefox Firesheep avait démontré il y a quelques années. Il était possible de voler les sessions de toutes les personnes connectées sur un même réseau wifi en 2 clics, littéralement.
Je tire l’exemple suivant du créateur de Firesheep lui-même, on capture le trafic et on observe instantanément les personnes connectées :
trouver un mot de passe avec firesheep
On double clique sur un profil…et…
comment trouver un mot de passe avec firesheep 2
On est instantanément connecté comme si nous étions eux.
C’est un problème pourtant très connu, mais encore beaucoup de sites web très populaires ne protègent toujours pas correctement leurs utilisateurs. La seule méthode efficace pour se protéger contre ces attaques est encore une fois d’utiliser des protocoles de communication sécurisés comme HTTPS.