Attaquer un réseau sans fil Wi-Fi protégé par WEP PDF Imprimer Email
Articles - Tutoriels
Écrit par Jean-Bernard KONDOSZEK   
Lundi, 02 Juin 2008 13:21

Après avoir conclu sur l'inefficacité du WEP à protéger les réseau sans fil Wi-Fi, il peut être tentant de passer de la théorie à la pratique en tester les capacités de protection de son réseau Wi-Fi personnel. Voyons un peu pas à pas comment tester et mettre à genoux le WEP.

 

/!\ ATTENTION /!\
Avant d'entreprendre quelle qu'action que ce soit, il est très important de rappeler la loi française et de définir le cadre pédagogique de ce tutoriel. En effet il s'agit ici de tester la protection d'un réseau qui m'appartient. Du point de vue de la loi, je peux faire ce que je veux avec mon réseau. Cependant, il est strictement interdit d'utiliser ce tutoriel dans le but de s'introduire dans un réseau étranger, que ce soit le voisin ou une entreprise, etc. Une telle action constituerait un délit et serait puni d'après les articles suivants du code pénal :
« Art.323-1. (Ordonnance nº 2000-916 du 19 septembre 2000 art. 3 Journal Officiel du 22 septembre 2000 en vigueur le 1er janvier 2002). (Loi nº 2004-575 du 21 juin 2004 art. 45 I Journal Officiel du 22 juin 2004). Le fait d'accéder ou de se maintenir, frauduleusement, dans tout ou partie d'un système de traitement automatisé de données est puni de deux ans d'emprisonnement et de 30000 euros d'amende. Lorsqu'il en est résulté soit la suppression ou la modification de données contenues dans le système, soit une altération du fonctionnement de ce système, la peine est de trois ans d'emprisonnement et de 45000 euros d'amende.
Art.323-2. (Ordonnance nº 2000-916 du 19 septembre 2000 art. 3 Journal Officiel du 22 septembre 2000 en vigueur le 1er janvier 2002). (Loi nº 2004-575 du 21 juin 2004 art. 45 II Journal Officiel du 22 juin 2004). Le fait d'entraver ou de fausser le fonctionnement d'un système de traitement automatisé de données est puni de cinq ans d'emprisonnement et de 75000 euros d'amende.
Art. 323-3. (Ordonnance nº 2000-916 du 19 septembre 2000 art. 3 Journal Officiel du 22 septembre 2000 en vigueur le 1er janvier 2002). (Loi nº 2004-575 du 21 juin 2004 art. 45 III Journal Officiel du 22 juin 2004). Le fait d'introduire frauduleusement des données dans un système de traitement automatisé ou de supprimer ou de modifier frauduleusement les données qu'il contient est puni de cinq ans d'emprisonnement et de 75000 euros d'amende.
Art.323-4. (Loi nº 2004-575 du 21 juin 2004 art. 46 II Journal Officiel du 22 juin 2004). La participation à un groupement formé ou à une entente établie en vue de la préparation, caractérisée par un ou plusieurs faits matériels, d'une ou de plusieurs des infractions prévues par les articles 323-1 à 323-3-1 est punie des peines prévues pour l'infraction elle-même ou pour l'infraction la plus sévèrement réprimée.
Art. 323-5. Les personnes physiques coupables des délits prévus au présent chapitre encourent également les peines complémentaires suivantes :
1º L'interdiction, pour une durée de cinq ans au plus, des droits civiques, civils et de famille, suivant les modalités de l'article 131-26 ;
2º L'interdiction, pour une durée de cinq ans au plus, d'exercer une fonction publique ou d'exercer l'activité professionnelle ou sociale dans l'exercice de laquelle ou à l'occasion de laquelle l'infraction a été commise ;
3º La confiscation de la chose qui a servi ou était destinée à commettre l'infraction ou de la chose qui en est le produit, à l'exception des objets susceptibles de restitution ;
4º La fermeture, pour une durée de cinq ans au plus, des établissements ou de l'un ou de plusieurs des établissements de l'entreprise ayant servi à commettre les faits incriminés ;
5º L'exclusion, pour une durée de cinq ans au plus, des marchés publics ;
6º L'interdiction, pour une durée de cinq ans au plus, d'émettre des chèques autres que ceux qui permettent le retrait de fonds par le tireur auprès du tiré ou ceux qui sont certifiés ;
7º L'affichage ou la diffusion de la décision prononcée dans les conditions prévues par l'article 131-35.
Art.323-6. Les personnes morales peuvent être déclarées responsables pénalement, dans les conditions prévues par l'article 121-2, des infractions définies au présent chapitre. Les peines encourues par les personnes morales sont :
1º L'amende, suivant les modalités prévues par l'article 131-38 ;
2º Les peines mentionnées à l'article 131-39.L'interdiction mentionnée au 2º de l'article 131-39 porte sur l'activité dans l'exercice ou à l'occasion de l'exercice de laquelle l'infraction a été commise.
Art. 323-7. (Loi nº 2004-575 du 21 juin 2004 art. 46 II Journal Officiel du 22 juin 2004). La tentative des délits prévus par les articles 323-1 à 323-3-1 est punie des mêmes peines. »

Avant d'entrer dans le vif du sujet, il est nécessaire de présenter un minimum la configuration du réseau ainsi que le matériel utilisé dans ce tutoriel. Le but est de s'introduire dans le réseau Wi-Fi contrôlé par un modem-routeur de type "box" du provider (F.A.I. en français) Free sur lequel a été activé le Wi-Fi ainsi que le protocole WEP avec une clé d'une taille de 128 bits. Le SSID a été masqué pour augmenter la sécurité et un filtrage d'adresses MAC mis en place. Du côté du pirate informatique, on utilise un ordinateur portable de marque Asus, modèle M6ne, sur lequel repose une distribution Linux orientée sécurité et réseaux, la BackTrack 2.0 (version 3.0 actuellement en beta) en tant que système d'exploitation. Bien que ce portable possède déjà une carte Wi-Fi (certification centrino), on utilisera une autre carte, sur port PCMCIA, la NetGear WAG511 basée sur un chipset Atheros au lieu d'Intel pour la carte d'origine. L'unique raison est que le support BackTrack pour les Centrino ne permet pas l'utilisation avancée requise de la carte réseau pour ce tutoriel. De plus, un minimum de connaissances sur les systèmes Linux serais un avantage non négligeable qui faciliterais la compréhension. Maintenant passons aux choses sérieuses !

Pour se connecter à un réseau Wi-Fi, on a besoin de connaître le nom du réseau sans fil (SSID, masqué ici) et de la clé WEP. Dans notre cas, il va falloir en plus changer l'adresse MAC de notre portable en une adresse autorisée et donc, il faut en "emprunter" une. Débutons par le SSID. Pour cela, on utilise l'outil Kismet. Son installation faisait l'objet de nombreux tutoriels très bien réalisés sur Internet, je me contenterais uniquement d'expliquer son utilisation. Pour commencer je vais associer ma carte Wi-Fi à tous les réseaux sans fil et la lancer en mode monitor pour qu'elle écoute passivement les réseaux avec les deux commandes suivantes :

bt ~ # iwconfig ath1 essid any
bt ~ # iwconfig ath1 mode monitor
Ici "ath1" désigne le nom de l'interface réseau de ma carte Wi-Fi, à remplacer par la votre.

Il suffit de lancer maintenant kismet et d'attendre quelques instants pour voir la liste des réseaux actuels :

Name              T W Ch  Packts Flags IP Range
stephwifi         A O 003    113       0.0.0.0
wi-free01         A Y 011  92002  A4   0.0.0.0

Il y a donc deux réseaux actifs dans les parages : le premier est celui de mon voisin qui est crypté (couleur verte) par un codage autre que le WEP (colonne W, valeur O) et il s'agit d'un point d'accès (colonne T, valeur A). Le deuxième réseau me concerne puisque c'est celui de ma borne Wi-Fi. La couleur bleue indique que le SSID n'est pas diffusé mais il a quand même été obtenu. Enfin, le cryptage est le WEP (valeur Y). Si je selectionne mon réseau et que j'appuie sur C, j'obtiens la liste complète des clients connectés à celui-ci :

T MAC               Manuf   Data Crypt  Size IP Range
F 00:E0:4C:XX:XX:XX Realtek 1209     0  234k 192.168.1.10

On obtiens directement les informations sur les clients connectés, dont notamment l'adresse MAC (partiellement masquée par les XX intentionnellement) dont on a besoin pour contourner le filtrage d'adresse. On peut donc commencer l'opération pour trouver la clé WEP. Pour cela il faut stocker un maximum de paquets afin de récupérer les vecteurs d'initialisations (IV) car ce sont grâce à eux qu'un autre utilitaire va décrypter la clé WEP. Beaucoup de paquets sont donc nécessaires, plus de 1.000.000 dans notre cas (pour une clé de 128 bits). L'utilitaire airodump-ng va se charger de capturer dans un fichier tous les paquets du réseau :

bt ~ # airodump-ng --write capturePaquetTest.cap -channel 11 --bssid XX:XX:XX:XX:XX:XX ath0

Par cette ligne de commande, on demande de lancer airodump-ng en enregistrant dans le fichier capturePaquetTest.cap tous les paquets qu'il capte. Le canal indiqué est celui de la borne, et le BSSID, totalement masqué ici, correspond à l'adresse MAC de ma Freebox (vous pouvez obtenir celui de votre borne toujours avec Kismet en appuyant sur I au lieu de C dans la liste des réseaux). Enfin le dernier paramètre coorespond à l'interface de ma carte Wi-Fi. Maintenant, pour faciliter l'obtention de paquets, on va augmenter le trafic en faisant une réinjection ARP, c'est-à-dire qu'on va relancer les paquets du protocole ARP captés sur le réseau, obligeant ainsi les différents clients à dialoguer pour conclure la communication ARP. L'utilitaire qui permet cette réinjection se nomme aireplay-ng.

bt ~ # aireplay-ng -3 -e wi-free01 -b XX:XX:XX:XX:XX:XX -h 00:E0:4C:XX:XX:XX ath0
The interface MAC (00:14:6C:XX:XX:XX) doesn't match the specified MAC (-h).
         ifconfig ath0 hw ether 00:E0:4C:XX:XX:XX
Saving ARP requests in replay_arp-0010-264119.cap
You should also start airodump-ng to capture replies.
Read 3394 packets (got 1002 ARP requests), sent 996 packets...

On retrouve ici quasiment les mêmes paramètres : le -3 correspond à la réinjection ARP, qui est suivi par le nom du réseau Wi-Fi, puis de l'adresse MAC de la borne, puis l'adresse MAC de mon portable (usurpée au client qui était connecté précédemment) et enfin l'interface de ma carte. Le message qui suit indique que l'adresse MAC donnée n'est pas la même que celle réelle (normal puique j'ai usurpée une autre adresse) et qu'il enregistre tout dans un fichier .cap. On voit également que la réinjection réussi plutôt bien. Dans le cas contraire, on peux utiliser aireplay pour desauthentifier un client connecté (option -0 au lieu de -3) pour générer une requête ARP. Pour plus d'informations, utilisez le manuel d'aireplay (accessible également sur Internet). Une fois que l'on a suffisament de paquets capturés, on peut lancer l'utilitaire aircrak-ng qui se charge de trouver la clé WEP à partir des IVs contenus dans les paquets capturés :

bt ~ # aircrack-ng capturePaquetTest.cap
Le paramètre correspond au nom du fichier de capture de airodump-ng

Aircrack-ng renvoi alors la liste de tous les réseaux qu'il reçoit, il suffit de lui répondre par le numéro qui concerne le nôtre. Aircrack-ng se mets alors au travail. Puis au bout de quelques minutes, avec un peu de chance, il finit par donner la clé :

                                                     Aircrack-ng 0. r214


                                     [00:07:19] Tested 854983 keys (got 1338858 IVs)

KB   depth  byte(vote)
 0   0/  1  C0( 209) FF( 18) 0E( 18) CF( 18) 2C( 18) 8A( 18) F9( 18) F2( 16) 23( 11) B8( 11) 1E(  1) A4(  1)
 1   0/  8  DE(  51) 3B( 25) 6C( 25) EA( 25) 54( 25) B2(  9) 83(  9) D6(  9) 1E(  9) 96(  6) C9(  6) B3(  6)
 2   0/  1  C0( 189) EF( 63) 8A( 63) D3( 44) 9C( 15) DA( 15) F4( 15) C7( 15) 12( 11) A8( 11) 1E( 11) E4( 11)
 3   0/  2  DE(  26) 8C( 10) CC( 10) 61(  4) 27(  4) E6(  4) 87(  4) 7E(  4) 73(  4) 27(  4) 1A(  4) 74(  4)
 4   0/  4  C0(  29) A2( 20) 0A( 19) 28( 19) EC( 19) 86( 14) AA( 14) 81( 14) CC( 14) 8C(  5) EE(  5) CC(  3)
 5   0/  1  DE( 281) DD(169) D5( 40) 4C( 18) 7E( 18) AB( 18) 17( 18) B5( 16) 69( 13) 3A( 11) DA(  6) A7(  1)
 6   0/  1  C0(  68) A1( 31) EC( 19) FF( 19) EC( 19) 8E( 19) D9( 19) 74( 19) C3( 19) BE( 14) 17( 14) FF( 14)
 7   0/ 15  DE( 299) 84( 18) B6( 18) 2D( 25) 2E( 18) 87( 18) E9( 18) FC( 16) 32( 11) 5B( 11) 1B(  1) AF(  1)
 8   0/  2  C0(1039) 6F(681) 29(313) 1C(200) 8B( 78) 7A( 78) BB( 18) B3( 16) E3(  2) 78(  2) C9(  2) A4(  2)
 9   0/  3  DE(  80) 1E( 69) 8B( 38) A3( 38) 57( 18) 38( 18) FE( 18) 62( 16) A2( 11) DD( 11) 1E(  1) FE(  1)
10   0/ 11  C0( 114) BD( 53) 5F( 26) B9( 16) BB( 16) 2C( 16) B3(  6) 71(  6) 84(  6) C8(  3) B2(  3) 46(  3)
11   0/  5  DE( 162) A9( 86) 3C( 55) C7( 55) 77( 28) 93( 28) 49( 28) DC( 16) 99( 11) 88( 10) BD(  1) 64(  1)

         KEY FOUND! [ C0:DE:C0:DE:C0:DE:C0:DE:C0:DE:C0:DE:C0 ]
     Probability : 100%

Il a fallut moins de dix minutes, montre en main, à aircrack-ng pour trouver la clé (avec un peu de chance évidemment). Ce tutoriel confirme bien que le WEP n'est pas une solution de sécurité viable, même associé à d'autres systèmes.

Commentaires (0)Add Comment

Ecrivez un commentaire
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
Réduire l'éditeur | Agrandir l'éditeur

busy