tux-secu.pngPetit à petit nos équipements intègrent des piles IPv6. Comme ça le jour où nous nous déciderons à y passer...
Récemment, je suis tombé sur un article de Tux-planet qui traitait d'une faille dans les implémentations du Neighbor Discovery Protocol (NDP) des piles IPv6 de differents systèmes d'exploitation. Serait touchés, entre-autres, Windows 7, Vista et les XP qui contiennent une pile IPv6 (ce qui n'est pas le cas par défaut).
L'article explique comment tester cette faille avec un outil d'attaque IPv6. Je reprends ici l'exemple pour télécharger, compiler et utiliser cet outil sous ubuntu :

 

sudo apt-get install libpcap0.8-dev libssl-dev
wget http://freeworld.thc.org/releases/thc-ipv6-1.4.tar.gz
tar zxvf thc-ipv6-*.tar.gz && rm -f thc-ipv6-*.tar.gz
cd thc-ipv6-*
make
sudo ./flood_router6 eth0

J'ai donc testé tout ça et effectivement les postes sous windows 7 (je n'ai testé que ceux là) ralentissent au point de ne plus être utilisables du tout. Dans l'exemple on floode des adresses de routeurs, quand on regarde la partie passerelle(s) en faisant un ipconfig, on a bien un nombre *très* conséquent de passerelles. Si j'ai bien compris, pour chacune d'elle NDP est lancé et windows meurt . Sous linux le système tient la route et on surfe convenablement du moment que l'on essai pas d'atteindre un hôte qui est aussi accessible en IPv6 car là le nombre élevé de passerelles pénalise le temps de réponse (mais c'est pas le même problème).

Un souci me tarabuste cependant, NDP permet, entre autres, aux postes clients de découvrir les routeurs qui sont situés sur le réseau local, via, si je me souviens bien, l'adresse multicast qui va bien. Mais (comme on le voit lors de l'attaque) les routeurs peuvent aussi s'annoncer (Router Advertisement) et là on rencontre un peu le même problème qu'avec DHCP, comment gérer les routeurs (ou serveurs pour DHCP) illégitimes ? En entreprise il serait peut être possible (?) de filtrer sur les commutateurs les annonces multicast qui ne proviendraient pas d'un routeur légitime. Toutefois tout le monde de dispose pas de ressource de ce genre. Je ne suis pas très compétent sur IPv6 mais cela me semble problématique.
En cherchant un peu j'ai trouvé deux méthodes permettant de prévenir ce genre de souci :

En attendant que les équipements/OS intègrent, tous, ces spécifications, il faudra rester sur nos gardes !