Documente Academic
Documente Profesional
Documente Cultură
Ce polycopi de cours de The Hackademy a pour objectif de contribuer une meilleure comprhension des risques de scurit lis l'usage de l'outil informatique, et ainsi, permettre de s'en protger plus efficacement. Il sera utile aux administrateurs systme et rseau, aux dveloppeurs, et tout professionnel travaillant avec Internet. Si vous tes soucieux de comprendre comment un pirate pourrait tenter de vous attaquer afin d'tre mme de djouer ses tentatives, ce cours vous est destin. Cependant aucune garantie n'est donne que ce contenu va vous permettre de vous protger de manire totale, mais vous donnera les lments pour mettre en place une politique de management scurit efficace. De plus, ce cours ne peut avoir pour vocation de couvrir l'ensemble des sujets lis la scurit de manire exhaustive : nous vous dtaillons les mthodes d'attaque courantes, et vous fournissons les lments pour vous en protger. The Hackademy et DMP ne sauraient tre tenus pour responsable des dommages ventuels causs par une application des mthodes prsentes ici sur un systme. Il est formellement interdit par la loi d'appliquer les techniques d'attaque prsentes dans cette formation sur un systme que vous ne possdez pas. Vous pouvez cependant les appliquer sur vos systmes informatiques des fins de tests de vulnrabilit, en gardant l'esprit que cela reprsente toujours des risques pour la stabilit des systmes audits.
Avertissement
Il est essentiel de comprendre que si ces mthodes sont ici prsentes, c'est avant tout dans une optique de comprhension gnrale de la scurit et des moyens mis en oeuvre par les pirates, et ce dans le seul et unique but, de pouvoir lutter contre ce danger. De plus, ces mthodes de protection s'appliquent autant aux entreprises qu'aux particuliers. En effet, en dehors du nombre de documents privs que vous possdez sur votre ordinateur, un ventuel pirate pourrait vouloir se servir de votre systme comme d'une passerelle dans le but de ne pas tre retrouv. Dans ce cas, se serait vous, en tant que personne physique ou morale, de prouver votre innocence. De plus, une politique de scurit convenable est de rinstaller entirement votre systme en cas de piratage, avec la perte de temps et de finance que cela implique.
Auteurs
Nous tenons remercier pour leur participation l'laboration de cette formation et l'criture de ce cours :
CrashFr (crashfr@thehackademy.net)
The Hackademy
DMP
-2/52-
SYSDREAM
SOMMAIRE
Introduction Chapitre 1 : Les normes 1. Rsum des normes 2. Les diffrentes normes A) Le bluetooth (802.15) B) WiMax (802.16) C) Hiperlan D) WiFi (802.11) 3. Qu'est-ce que le Wi-Fi ? Chapitre 2 : Le matriel 1. Les points d'accs 2. Les cartes 3. Les antennes 4. Les amplificateurs Chapitre 3 : Les modes 1. Ad-Hoc 2. Infrastructure 3. Monitor 4. Master 5. Point to point 6. Point to multipoint 7. Repeater Chapitre 4 : Installation 1. Configuration d'un point d'accs 2. Configuration d'une carte sous WindowsXP 3. Configuration d'une carte sous Linux
The Hackademy DMP -3/52SYSDREAM
Chapitre 5 : Attaques 1. Dtection des rseaux WiFi 2. Sniffing rseau 3. Falsification d'adresse MAC 4. Mapping rseau 5. Cracking WEP A) Attaque passive B) Attaque active 8. Cracking WPA 9. Hijhacking 10.D.O.S Chapitre 6 : Scurisation 1. Porte du point d'accs 2. Desactivation SSID 3. Filtrage d'adresses MAC 4. Cryptage des donnes A) 802.1x B) WPA C) WPA2 D) VPN 5. Leurre AP 6. Portail captif
The Hackademy
DMP
-4/52-
SYSDREAM
INTRODUCTION
The Hackademy
DMP
-5/52-
SYSDREAM
The Hackademy
DMP
-6/52-
SYSDREAM
The Hackademy
DMP
-7/52-
SYSDREAM
WLAN (Wireless Local Area Networks) : IEEE 802.11, Hiperlan WPAN (Wireless Personal Area Network) : Bluetooth WMAN (Wireless Metropole Area Network) : IEEE 802.16 GSM et UMTS : Tlphones cellulaires
grce au WEP (Wired Equivalent Privacy) pour que les informations qui transitent par le rseau ne puissent tre lues avec un simple outil informatique (sniffer). En France, le 802.11b est autoris dans un cadre et un lieu priv, mais est interdit dans le domaine du public (lieux publics : rue...) mais l'ART a chang sa politique le 7 octobre 2002 et a autoris l'utilisation du 802.11b dans les lieux publics titre exprimental et gratuit grce des licences attribues sur une priode de 3 ans donc si vous tes une association et que vous voulez dvelopper un rseau sans fil dans votre ville, dposez votre dossier pour en avoir l'autorisation. Le 802.11b permet d'avoir un vitesse raisonable et cette norme est peu coteuse. 802.11a Cette norme fonctionne dans la bande de frquence des 5 Ghz et peut atteindre un dbit maximum de 54 Mbps. Ce qui rend l'extension 802.11a beaucoup plus rapide que l'extension 802.11b. Du fait, que cette norme ai t approuve en 1999, elle est beaucoup moins utilise que la norme 802.11b mais cela devrait changer dans les prochaines annes venir... Dans le commerce cette norme est appele: WiFi5 et commence voir le jour en France car l'ART l'autorise depuis peu en intrieur. 802.11g Extension haut dbit (54 Mbps) dans la bande des 2,4 Ghz. C'est donc une extension de la norme 802.11b. C'est d'ailleurs pour cela que les points d'accs 802.11g dans le commerce sont compatibles avec les cartes 802.11b. Il existe aussi plusieurs groupes techniques chargs d'amliorer la norme 802.11 : Note : - 802.11e : amlioration de la prise en compte par la norme 802.11 de la qualit de service - 802.11f : standardisation des protocoles entre points d'accs - 802.11h : gestion du spectre pour la norme 802.11a - 802.11i : amlioration des fonctions de scurit - 802.11n : amlioration des performances au niveau de la couche MAC
The Hackademy
DMP
-9/52-
SYSDREAM
The Hackademy
DMP
-10/52-
SYSDREAM
CHAPITRE II LE MATERIEL
The Hackademy
DMP
-11/52-
SYSDREAM
Les clients peuvent passer d'AP en AP s'il en existe plusieurs de connects sur la mme branche du rseau cbl, sans quitter le rseau (roaming), permettant ainsi de crer des rseaux sans fil trs tendus. Ainsi un client peut passer de l'AP1 l'AP2 si les 2 ont le mme SSID et mettent sur le mme canal :
The Hackademy
DMP
-12/52-
SYSDREAM
Il cote environ 100 euros et se connecte via Ethernet votre rseau local. Son bas prix est d au fait qu'il ne supporte que le 802.11b et que depuis quelques mois on voit apparatre les points d'accs 802.11g dans le commerce.
2. Les cartes
Ensuite il faut quiper les PC qui serviront de clients avec des cartes PCMIA pour les portables, PCI ou USB pour les PC fixe. Ces cartes peuvent tre compares des cartes ethernet dans un rseau cbl. Voici une carte PCMCIA pour ordinateur portable :
Cette carte cote environ 35 euros, compatible 802.11b, dbit thorique de 11Mbps, WEP, supporte sous Linux et Windows. Je vous conseille tout de mme une carte Orinoco (802.11b) ou autre carte permettant de connecter une antenne externe si vous dsirez faire ce que l'on appelle du War-driving.
The Hackademy
DMP
-13/52-
SYSDREAM
Pour mettre une carte PCMCIA sur votre PC fixe vous devrez acheter un adaptateur. Il faut faire attention en achetant l'adaptateur PCI car il est propre chaque carte PCMCIA. Vous ne pourrez pas faire fonctionner votre carte Orinoco en utilisant l'adaptateur PCI Belkin par exemple. Vous pouvez aussi trouver la place de la carte PCMCIA et son adaptateur, une carte PCI en un seul bloc :
Je vous conseille tout de mme l'adaptateur PCI avec la carte PCMCIA si jamais vous avez besoin d'utiliser la carte sur un ordinateur portable.
3. Les antennes
Il existe diffrents types d'antennes. Pour permettre l'utilisation d'une antenne, il vous faudra absolument une carte ayant un connecteur externe comme sur les cartes Orinoco, o viendra se fixer le pigtail. Ci-dessous le connecteur externe d'une carte Orinoco.
Antenne Omnidirectionnel :
Cette antenne permet de capter les diffrents rseaux se trouvant aux alentours sur une surface formant un cercle ayant comme centre la tige de l'antenne.
The Hackademy
DMP
-14/52-
SYSDREAM
L'antenne directionnelle, comme son nom l'indique doit tre pointe vers la direction o l'on dsire mettre ou recevoir. Cette antenne permet d'avoir une rception plus leve qu'une antenne omnidirectionnelle, elle sera utilise pour cibler un rseau particulier. Il existe d'autres types d'antennes que vous pourrez fabriquer vous mme : http://wireless-fr.org/contributions/antenne-yagi/Antenne-directionnelle.html Pour acheter des antennes dj montes : http://www.fab-corp.com/ Pour ces 2 antennes, il vous faudra ce que l'on appelle un pigtail. Le pigtail, est tout simplement un adaptateur "sortie antenne externe / connecteur antenne de la carte PCMCIA" qui est propre chaque constructeur de carte. Voici un pigtail Orinoco :
4. Les amplificateurs
Les amplificateurs sont malheureusement interdits en France... Ces amplis permettent d'amplifier le signal en sortie de votre antenne. Les amplis sont trs utiliss pour le hijhacking.
The Hackademy
DMP
-15/52-
SYSDREAM
The Hackademy
DMP
-16/52-
SYSDREAM
Chaque carte peut fonctionner en plusieurs modes, en gnral 2 (Ad-Hoc, Infrastructure) mais nous verrons qu'en faisant fonctionner une carte comme un accs point, nous pourrons utiliser d'autres modes.
The Hackademy
DMP
-17/52-
SYSDREAM
3. Le mode Monitor
Ce mode est identique au mode promiscious d'une carte ethernet. Il va permettre d'intercepter tous les paquets transitant dans l'air qui ne sont pas forcment destination de notre machine. Pour activer ce mode, il faudra en gnral appliquer un patch au pilote de votre carte WiFi.
4. Le mode Master
Ce mode dsigne le mode de fonctionnement d'un point d'accs. Nous allons voir la suite du cours que sous Linux nous aurons la possibilit de transformer une carte PCMCIA en point d'accs avec certains modules / pilotes.
The Hackademy
DMP
-18/52-
SYSDREAM
7. Le mode Repeater
Ce mode permet un point d'accs de transmettre les communications provenant des clients vers un autre point d'accs au lieu de les transmettre vers le rseau cbl. Donc un point d'accs en mode repeater n'a pas besoin d'tre connect au rseau local via un cble RJ45.
The Hackademy
DMP
-19/52-
SYSDREAM
CHAPITRE IV INSTALLATION
The Hackademy
DMP
-20/52-
SYSDREAM
En effet, chaque rseau sans fil de type 802.11 est associ un SSID (Service Set Identifier) et un canal qui lui permet de se diffrencier des autres et qui permet ainsi d'avoir dans la mme zone plusieurs rseaux sans fil. Suivant le pays ou vous vous trouvez, vous aurez accs plus au moins de canaux suivant la norme utilise (14 canaux au total, 4 autoriss en France de 10 13 pour le 802.11b et g). Il va falloir maintenant configurer le ct LAN (filaire) de notre AP. Si vous possdez un serveur DHCP vous pouvez demander votre AP de rcuprer une IP auprs de celui-ci. Dans le cas contraire, vous devrez lui fixer une adresse IP fixe comme ci-desous :
The Hackademy
DMP
-21/52-
SYSDREAM
Ensuite vous pouvez modifier le login / password par dfaut pour viter que quelqu'un du rseau s'amuse modifier la configuration de votre point d'accs :
Dans un premier temps, enregistrez vos paramtres et essayez de vous connecter dessus avec un de vos clients Wi-Fi. Si la connection s'ffectue correctement vous pouvez essayer d'activer le WEP pour encrypter les donnes transistant entre les clients et le point d'accs. Un point d'accs peut utiliser 2 authentifications diffrentes par dfaut pour autoriser ou non un client se connecter au rseau :
Avant d'tudier en dtail ces 2 mthodes, voici comment un client communique avec un point d'accs : 1. Le client envoie en broadcast des requtes de sonde (probe request) sur chacun des canaux. 2. Le point d'accs rpond aux requtes sonde qu'il reoit sur son canal par une rponse sonde (probe response). response) 3. Le client vrifie grce la rponse sonde renvoye par les AP, quel est celui qui le meilleur signal et lui envoie une requte d'authentification (authentication request). 4. Le point d'accs lui renvoie une rponse d'authentification (authentication response). 5. Si l'authentification s'est correctement droule, le client envoie une requte d'association (association request). 6. Le point d'accs rpond par une rponse d'association (association response). 7. Le client peut dsormais envoyer des donnes vers le point d'accs.
Les requtes sonde permettent au client de connatre les diffrents points d'accs disponibles pour le SSID recherch et la vitesse de transmission qu'il supporte. En gnral, les points d'accs envoient ce que l'on appelle des Beacon Frames qui indiquent au client qu'un point d'accs ayant un SSID est disponible dans la zone dans laquelle il se trouve. Mais certains points d'accs permettent de dsactiver l'envoi du SSID, c'est pour cela que les clients envoient des requtes sonde.
The Hackademy
DMP
-22/52-
SYSDREAM
Une fois le point d'accs optimal trouv, le client essaye de s'authentifier auprs de celui-ci. Comme nous l'avons dit plus haut, la premire mthode d'authentification est l'authentification ouverte. Lorsque le point d'accs utilise cette mthode, il n'attend qu'une requte d'authentification avec le bon SSID et rien d'autre. C'est--dire, que le point d'accs n'a aucun moyen de vrifier si ce client rellement le droit d'accder au rseau ou pas, il suffit juste que le client ait le bon SSID pour tre authentifi. Si le WEP est activ en utilisant cette mthode et que le client n'a pas la bonne cl WEP, ses donnes ne seront pas transmises. Le seconde mthode, qui est l'authentification cl partage oblige le client spcifier une cl WEP statique qui sera identique celle spcifie au niveau du point d'accs. Voici comment se droule la phase d'authentification avec une cl partage : 1. Le client envoie une requte d'authentification cl partage 2. Le point d'accs renvoie un challenge sous forme de texte en clair 3. Le client encrypte le challenge au format texte avec sa propre cl WEP et renvoie le rsultat au point d'accs. 4. Le point d'accs va alors dcrypter le message et le comparer sa version en clair. Si cela correspond, c'est--dire que le client la mme cl que le point d'accs, le point d'accs renvoie une rponse valide au client lui permettant d'accder au rseau.
Le problme avec cette mthode d'authentification, c'est qu'un pirate pourrait sniffer le challenge et sa version encrypte et donc, en dduire le KeyStream que nous verrons dans la chapitre ddi aux attaques sur le protocole WEP. Lorsque vous activez le WEP vous pourrez prdfinir 4 cls soit sous un format ASCII ou hexadcimal. hexadcimal Une cl hxadcimale 64 bits est compose de 10 caractres. Une cl hexadcimale 128 bits est compose de 26 caractres. Une cl hexadcimale 256 bits est compose de 58 caractres. Nous verrons dans le chapitre consacr au WEP que les cl sont en ralit compos de la cl hexadecimal + un vecteur d'initialisation de 24 bits.
The Hackademy
DMP
-23/52-
SYSDREAM
En cliquant sur cette alerte, il devrait vous afficher tous les rseaux disponibles (sous XP avec le SP2) :
The Hackademy
DMP
-24/52-
SYSDREAM
Les rseaux avec un petit cadenas indique que le rseau utilise le WEP. Dans ce cas, la cl vous sera demande la slection du rseau. XP gre le wifi avec une liste de rseaux prfrs. C'est--dire que votre machine se connectera en priorit ces rseaux par ordre de prfrence. Vous pourrez modifier cet ordre en cliquant sur Modifier l'ordre des rseaux prfrs . Si vous dsirez vous connecter un nouveau rseau, slectionnez le sur la partie de droite du panneau et cliquez sur modifier les paramtres avancs .
Dans les paramtres avancs vous pourrez configurer le type d'authentification, activer ou non le cryptage et la cl WEP. Si vous utilisez le 802.1x (Chapitre Scurisation) vous devrez cocher la case la cl m'est fournie automatiquement . N'oubliez pas aussi, de modifier les paramtres TCP/IP de votre carte Wi-Fi pour qu'ils correspondent au rseau auquel vous dsirez vous connecter.
- chargement de modules. Activez les 3 options qui se trouvent dans "Loadable module support" - le support pour le wireless. Activez l'option "Wireless LAN (non-hamradio)" qui se trouve dans "Network device support --> Wireless LAN (non-hamradio)". N'activez pas les pilotes se trouvant en
The Hackademy DMP -25/52SYSDREAM
dessous car il seront inclus dans pcmcia-cs (paquetage PCMCIA externe). - le support PCMCIA. Dsactivez les options "PCMCIA/Carbus support" et "Cardbus support (NEW)" se trouvant dans "General Setup --> PCMCIA/Carbus support". Sauvegardez votre configuration et recompilez votre noyau. Maintenant nous allons installer "pcmcia-cs" qui est un module permettant de dtecter les diffrentes cartes insres dans un de nos ports PCMCIA et de charger le bon pilote correspondant la carte insre. pcmcia-cs-3.2.1.tar.gz --> http://sourceforge.net/projects/pcmcia-cs patch orinoco (pcmcia-cs-3.2.1-orinoco-patch.diff)--> http://airsnort.shmoo.com/orinocoinfo.html Ce patch est trs utile, car il permet d'activer le mode monitor de la carte Orinoco. Ce mode monitor permet de capturer tous les paquets 802.11 sans association au rseau cible. Si vous n'activez pas le mode monitor, vous ne pourrez pas capturer de paquet tant que vous ne serez pas associ au rseau a sniffer et vous ne verrez pas les Beacon Frames (et autres paquets de management) envoys par les points d'accs. Ce mode est entre autre utilis par Airsnort comme nous le verrons plus loin, pour sniffer les paquets crypts transitant sur un rseau sans fil de type 802.11. La premire chose faire est de patcher les pilotes de notre carte Orinoco se trouvant dans les sources de notre module pcmcia-cs. Dcompressez pcmcia-cs grce la commande : $ tar zxvf pcmcia-3.2.1.tar.gz Pour patcher le pilote, copiez le patch Orinoco (fichier .diff) dans le rpertoire source du pcmcia-cs et appliquez le : $ patch -p0 < pcmcia-cs-3.2.1-orinoco-patch.diff Aprs avoir appliquer le patch il ne vous reste plus qu' compiler votre module pcmcia-cs : $ make config $ make all $ make install Relancez votre systme et si tout s'est bien pass votre carte Orinoco devrait tre reconnue. Pour le vrifier, installez "wireless-tools" : http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html Cet outil permet de configurer votre carte Wireless. Insrez votre carte et tapez "iwconfig", vous devriez voir apparatre les diffrentes options de votre carte, comme ceci pour une carte Orinoco:
The Hackademy
DMP
-26/52-
SYSDREAM
Vous remarquez que cette commande ressemble "ifconfig" pour un rseau filaire (ethernet) et elle s'utilise de la mme manire (exemple: iwconfig eth1 essid nom_de_mon_reseau_wifi channel 3 mode managed key icila_cle_wifi) bien sre, cette ligne ne sert que d'exemple, vous devrez la modifier selon vos besoins/dsirs, pour cela consultez la page man de la commande iwconfig (man iwconfig). Vous trouverez aussi la commande iwlist qui permet de lister les options de votre carte. Par exemple, si vous voulez connatre les diffrentes vitesses de transmission de votre carte :
Pour les cartes PCMCIA ou PCI dont le chipset est de type Prism2 utilisez linux-wlan : http://www.linux-wlan.com/linux-wlan/ Il inclut les pilotes pour les cartes Prism2 et un outil permettant d'activer le mode monitor. Pour configurer notre carte Prism2 nous n'utiliserons plus la commande "iwconfig" mais la commande "wlanctl-ng" fournie avec linux-wlan. Vous pouvez tout de mme utiliser "iwconfig" pour vrifier que votre carte est bien reconnue par "pcmcia-cs" :
Ensuite, vous devez configurer votre /etc/pcmcia/config.opts (Debian) et ajouter les lignes de configuration dans /etc/pcmcia/wireless.opts selon les options que vous choisirez, par contre, pour les cartes PCI ou Airbus vous devez aller dans /etc/network/interfaces.
The Hackademy
DMP
-27/52-
SYSDREAM
CHAPITRE IV ATTAQUES
The Hackademy
DMP
-28/52-
SYSDREAM
Aprs avoir export le rsultat au format summary, il est possible de cartographier ces rsultats en utilisant Stumverter combin avec Mappoint, dont voici une capture (les rseaux crypts sont affichs en rouge):
The Hackademy
DMP
-29/52-
SYSDREAM
2. Sniffing rseau
Pour le sniffing, nous utiliserons Ethereal car la libpcap qu'il utilise, interprte le 802.11 et elle nous permettra de lire les fichiers dump produits par Kismet. Si vous lancez le sniffer sans activer le mode monitor, vous remarquerez qu'il ne vous affichera pas les Beacon frames mais juste ce qui se trouve au dessus de la couche physique. Voici les commandes pour activer le mode monitor : iwpriv eth1 monitor 2 1 wlanctl-ng wlan0 lnxreq_wlansniff channel=1 enable=true active le mode monitor pour la carte orinoco (eth1) sur le canal 1 active le mode monitor pour la carte Prism2 (wlan0) sur le canal 1
Vous pouvez le vrifier avec la commande ifconfig en regardant l'adresse MAC de votre carte. Elle devrait tre dans un format incorrect :
Voici le rsultat d'une capture sous Ethereal avec le mode monitor d'activ :
The Hackademy
DMP
-30/52-
SYSDREAM
Comme vous pouvez le constater, nous recevons bien les Beacon frames qui indiquent la prsence de divers AP autour de nous. http://www.ethereal.com (ethereal) (ethereal) http://www.tcpdump.org (libpcap pour linux) http://winpcap.polito.it/install/default.htm (winpcap pour windows)
The Hackademy
DMP
-31/52-
SYSDREAM
Sous Windows : Comme sous Linux, nous devrons dans un premier temps dsactiver notre interface avant de modifier son adresse MAC avec SMAC. Pour cela aller dans vos connexions rseau et faites un clique droit sur votre interface et cliquez sur dsactiver.
Ensuite lancez SMAC, dcochez la case Show Only Active Network Adapters pour afficher toutes vos interfaces. Slectionnez la carte modifier, spcifiez la nouvelle adresse MAC et cliquez sur Update MAC :
Il ne vous reste plus qu'a ractiver l'interface et faire un ipconfig /all pour verifier que l'adresse MAC a bien t modifie :
La seule diffrence avec macchanger, c'est que l'adresse est modifi de faon permanente, il faudra relancer SMAC pour ratribuer l'adresse MAC d'origine. http://www.klcconsulting.net/smac/ http://www.alobbs.com/macchanger
The Hackademy
DMP
-32/52-
SYSDREAM
4. Mapping rseau
Thcrut permet de dtecter les autres machines prsentes sur le rseau en envoyant diffrents types de requtes (ARP, DHCP, etc...) mais il permet aussi de faire du fingerprinting. Prenons par exemple le cas o le pirate a russi se connecter au rseau mais qu'il ne connat pas la plage de celui-ci. Il pourrait utiliser thcrut pour dcouvrir les machines prsentent sur le rseau et donc la plage. Il pourra utiliser thcrut pour dcouvrir la plage 192.168.x.x ou autres plages de rserves aux rseaux locaux en utilisant les requtes ARP :
http://www.thc.org/thc-rut/
5. Cracking WEP
La principale faille des rseaux sans fil, est la libre circulation des donnes, ces donnes peuvent ne pas tre cryptes, donc lisible par une personne malveillante, pour remdier cela on peut utiliser le WEP qui crypte vos donnes grce des cls de cryptage statiques au niveau du point d'accs et de chacun des clients avant de les transmettre par les ondes. Le WEP peut utiliser un cryptage 64 bits (en ralit 40), 128 bits (104), 256 bits (232). Bien-sre, la cl la plus grande est conseille car plus longue cracker pour un pirate. Le WEP (Wired Equivalent Privacy) est un protocole de scurit se trouvant sur la couche liaison du rseau 802.11b. Le WEP utilise l'algorithme RC4, qui a t dvelopp par la RSA Security. Cet algorithme est bas sur les permutations alatoires des octets. Voici de faon simple comment RC4 encrypte les donnes pour le WEP :
- K est la cl partage sur le rseau (cl WEP statique) - IV un vecteur d'initialisation sur 24 bits. Ce vecteur (transmis en clair) permet de modifier le Keystream pour qu'il soit diffrent chaque trame transmise sur le rseau sans fil. Cela permet de rendre le TXTcrypt diffrent dans le cas o le mme TXT clair a t transmit plusieurs fois. - KeyStream est gnr avec les 2 variables ci-dessus par la formule : RC4(IV,K) - TXTclair est le texte encrypter
The Hackademy DMP -33/52SYSDREAM
- TXTcrypt est le texte crypt - ICV est le contrle d'intgrit (qui se trouve la fin de TXTcrypt) Datagramme simplifi d'un paquet WEP :
A) ATTAQUE PASSIVE : Ceci n'est que de la thorie mais 3 hommes (Fluhrer, Mantin et Shamir) ont rvl 2 types d'attaques possibles : - La premire nomme "invariance weakness" est d une faiblesse du RC4 qui permet, quand la cl est de faible taille, de pouvoir dterminer de nombreux bits. - La seconde nomme "known IV attack" se fait grce la connaissance de IV, comme il circule en clair sur le rseau il est facilement rcuprable en sniffant et permet ainsi de rcuprer 2 paquets utilisant le mme KeyStream. Ce qui va lui permettre de dduire le XOR des 2 TXTclair pour effectuer une attaque statistique pour retrouver la cl WEP utilise. Plus le nombre de paquets utilisant le mme Keystream est captur, plus rapide sera l'attaque statistique. Les logiciels utilisant ces 2 attaques sont airsnort, aircrack et wepcrack. B) ATTAQUE ACTIVE : Comme nous l'avons vu ci-dessus, le WEP effectue un XOR avec le KeyStream pour obtenir le texte encrypt. C'est ce mcanisme qui va permettre au pirate d'effectuer des attaques actives pour gnrer un maximum de paquets encrypts et ensuite effectuer une attaque passive. 1. Initialization Vector Replay Attacks Pour mettre en place cette attaque le pirate devra sniffer en continu le rseau Wifi encrypt qu'il dsire cracker. Ensuite viennent une srie d'tapes : - Le pirate envoie par le net un message en clair dont il connat le contenu et sa taille (ex : email) - Le pirate sniff le rseau la recherche du message encrypt reprsentant le message en clair envoy qu'il peut dterminer grce sa taille.
The Hackademy DMP -34/52SYSDREAM
- Le pirate rcupre la frame qui correspond son message encrypt et en dduit le KeyStream.
- Le pirate peut augmenter la taille du KeyStream en utilisant la mme paire IV/WEP que la frame rcupre. Pour augmenter la taille du Keystream la taille dsire le pirate devra : - Forger un paquet (trame) contenant un octet supplmentaire par rapport la taille du KeyStream dduit prcdemment. Cette trame contiendra un ICMP echo request car si la trame est correctement forge, la machine vers laquelle ce paquet sera envoy, renverra un ICMP echo reply . - L'octet rajout au KeyStream est facilement dductible car il n'y a que 256 possibilits. Donc le pirate va essayer toutes les combinaisons les une aprs les autres. - Si la bonne combinaison est trouve, un ICMP echo reply sera renvoy. - Ce processus est rpt jusqu' avoir la taille du KeyStream voulu.
The Hackademy
DMP
-35/52-
SYSDREAM
Le pirate pourra ainsi envoyer n'importe quel type de paquet encrypt mais ne pourra pas dcrypter de suite les paquets qui lui seront envoys. Il devra donc effectuer une attaque passive pour rcuprer le cl WEP du rseau. 2. Bit-Flipping Attacks
Le pirate capture une trame encrypte sur le rseau Il inverse certains bits du payload et modifie le ICV
Il transmet la trame modifie Celui qui reoit la trame, calcul le ICV Le destinataire compare le ICV qu'il a calcul celui contenu dans la trame reue Le destinataire accepte la trame modifie Il dsencapsule la trame et la transmet la couche 3 A cause des inversions de bits, la checksum de la couche 3 n'est pas valide La pile IP du destinataire produit une erreur prvisible Le pirate sniff le rseau la recherche de l'erreur encrypte
The Hackademy
DMP
-36/52-
SYSDREAM
Cette attaque est possible car il y a une vulnrabilit au niveau de ICV. Alors comment le hacker peut-il modifier correctement ICV alors que celui-ci est encrypt dans la trame ?
Une trame crypte (t1) a un ICV (c1) Une nouvelle trame est gnre (t2) de la mme longueur que t1 mais avec les bits inverser sur la trame finale Une nouvelle trame est calcule (t3) partir d'un XOR sur t1 et t2. C'est cette trame que le hacker va envoyer. L'ICV (c2) est cacul partir de t2 Le nouveau ICV (c3) de t3 est dduit partir d'un XOR sur c1 et c2
Crackeur WEP
Airsnort Airsnort permet de retrouver la cl WEP utilise pour crypter les donnes d'un rseau sans fil. Pour cracker la cl WEP, airsnort besoin de capturer un certains nombre de paquets (5 millions environ pour une cl 64 bits). Plus le trafic sur le rseau sera lev, plus rapide sera la dcouverte de la cl WEP et plus le nombre de bits de cl sera lev, plus le nombre de paquets capturer sera lev. Pour que Aisnort puisse fonctionner correctemment, vous devez activer le mode monitor au pralable. Voici une capture de celui-ci en pleine activit : http://airsnort.shmoo.com/
The Hackademy
DMP
-37/52-
SYSDREAM
Aircrack Plus puissant que Airsnort ce logiciel permet de cracker les cls WEP encore plus rapidement en implmentant l'attaque de Korek. http://www.cr0.net:8040/code/network/aircrack/
Weptools Ce nom regroupe deux outils. Un pour cracker les cls WEP, l'autre pour dcrypter les paquets. Pour cracker les cls WEP, wep_crack utilise l'attaque par dictionnaire ou par brutforce. wep_decrypt va servir decrypter les paquets WEP une fois que la cl a t trouve. Weptools fonctionne partir des fichiers dump provenant des sniffers utilisant pcap (ethereal, kismet, etc...). http://www.lava.net/~newsham/wlan/ Wepattack Voici un autre logiciel permettant d'effectuer des attaques par dictionnaires sur les dumps au format libpcap, donc nous pouvons directement lui fournir les paquets capturs par kismet. http://wepattack.sourceforge.net/
Weplab Logiciel regroupant les attaques statistiques et les attaques par dictionnaires. http://weplab.sourceforge.net/
6. Cracking WPA
Il existe actuellement un logiciel permettant de cracker les cls WPA si la passphrase est de trop faible qualit et si le WPA fonctionne en mode authentification par cl partage . Ce logiciel est disponible sur http://www.tinypeap.com qui fourni aussi un firmware modifi pour les routeurs linksys permettant d'avoir un serveur RADIUS en local evitant aussi la mise en place d'un serveur RADIUS ddi. Mais le logiciel qui nous interesse pour cette partie du cours est wpa_cracker qui permet de faire un attaque par dictionnaire passive sur le dump d'une authentification par cl partage. Aprs avoir fait une capture de l'authentification d'un client en WPA nous pouvont donner celle-ci wpa_cracker en lui spcifiant quelques informations par rapport au rseau cracker. Ethereal nous sera d'une grande utilit pour les informations supplmentaires concernant l'authentification EAPOL en 4 poigns de main. En effet, wpa_cracker a besoin d'un certain nombre d'informations (SSID, ANONCE, SONCE, MAC, etc..) contenu dans le protocole EAPOL. Voici le rsultat Ethereal avec les 4 paquets qui nous interessent :
The Hackademy DMP -38/52SYSDREAM
Pour une explication dtaill du fonctionnement de wpa_cracker et des informations qu'il necesite veuillez consulter : http://www.tinypeap.com/docs/WPA_Passive_Dictionary_Attack_Overview.pdf . Pour avoir plus de chance de russite, il faudra modifier le dictionnaire (en.dic) ainsi que le fichier de definition d'attaque (password.def) qu'il utilise pour retrouver la bonne cl partage.
7. Hijhacking
Pour dtourner les clients d'un rseau sans fil, il suffit de mettre en place un autre point d'accs ayant la meme configuration (SSID, WEP, etc...) que le rseau dtourner et un signal plus puissant que celui o se trouvent les victimes. En effet, par dfaut les clients se connectent toujours sur le rseau ayant le signal le plus fort. Pour crer son propre point d'accs il existe : Hostap Hostap est un pilote permettant d'activer le mode master sur une carte base de chipset Intersil Prism2/2.5/3. Ce pilote va donc nous permettre de transformer notre carte en point d'accs sous Linux. http://hostap.epitest.fi Ce pilote est livr avec hostapd un daemon qui une fois combin avec le pilote hostap, permet d'utiliser plusieurs options suplmentaires comme l'authentification 802.1x, WPA, RADIUS, etc... HermesAP Hermesap est un ensemble de pilote/patch sous Linux permettant d'activer le mode master sur une carte base de chipset Hermes (Orinoco). http://hunz.org/hermesap.html Dans notre exemple, nous utiliserons Hostapd avec un carte Netgear MA401 (PCMCIA) base de chipset Prism2. Pour installer Hostapd, vous devrez rcuprer les sources de hostap-driver et taper les commandes qui suivent : $tar zxvf hostap-driver-0.2.4.tar.gz $cd hostap-driver-0.2.4 Si le module PCMCIA a t compil en dehors du kernel, vous devrez indiquer dans le Makefile le rpertoire o se trouve les sources de PCMCIA. $make
The Hackademy DMP -39/52SYSDREAM
$make install Vrifiez que le fichier /etc/pcmcia/hostap_cs.conf contient bien le modle de votre carte.
$/etc/init.d/pcmcia restart Insrez votre carte et normalement, elle devrait tre reconnue et associe au driver hostap_cs. Voil ce que vous devriez voir apparatre en tapant : $iwconfig
Comme vous pouvez le remarquer l'interface wlan0 est bien en mode Master et associ au SSID test. Nous allons configurer notre carte pour dtourner les clients qui voudraient s'associer au rseau ayant le SSID hackademy sur le canal 10. $iwconfig wlan0 essid hackademy $iwconfig wlan0 channel 10 $ifconfig wlan0 192.168.0.100 Voil, vous avez un point d'accs oprationnel et disponible pour tous les clients se trouvant aux alentours. Voici le rsultat sous kismet :
The Hackademy
DMP
-40/52-
SYSDREAM
8. D.O.S
Il existe plusieurs D.O.S qui permettent de dconnecter les clients d'un rseau sans fil, de ralentir un AP ou de bloquer compltement le rseau. 1. Canal flooding Cette attaque est bas sur la saturation de la bande frquence pour provoquer un maximum de colision et provoquer des erreurs CRC. Pour cela il suffit simplement de mettre plusieurs point d'accs sur le meme canal, jusqu'a saturation. 2. Dsautentification flooding Envois des paquets de dsauthentification en spoofant le BSSID se qui a pour consquence de dconnecter les clients authentifis. 3. Authentification flooding Envois des paquets d'authentification vers le point d'accs en spoofant les adresses MAC se qui a pour consquence dans certains cas de rendre l'accs au rseau impossible (l'AP refuse de nouvelles authentifications) ou de bloquer le point d'accs. 4. WPA flooding Il est possible de rentre inactif le WPA en envoyant 2 paquets de donnes non autoriss en moins d'une second. Ce qui rend le rseau inaccessible pour les clients WPA lgitimes. Void11 est un logiciel implmentant 2 D.O.S : - deauth, qui implmente le dsauthentification flooding - auth, qui implmente l'authentification flooding Void11 utilise Hostap pour gnrer les paquets et ncessite la version 0.1.3 sinon vous ne pourrez pas le compiler. Une fois compil, vous devez activer votre carte en mode master : $iwconfig wlan0 mode master
Ensuite il faut activer le daemon de hostap : $iwpriv wlan0 hostapd 1 Il ne vous manque plus qu' lancer gvoid11 :
The Hackademy
DMP
-41/52-
SYSDREAM
The Hackademy
DMP
-42/52-
SYSDREAM
CHAPITRE IV SECURISATION
The Hackademy
DMP
-43/52-
SYSDREAM
2. Desactivation SSID
Si votre point d'accs vous le permet, il est conseill de dsactiver le SSID du rseau, ce qui rendra la tache plus difficile au pirate car le SSID ne sera plus envoy dans les Beacon Frames . Il sera donc oblig de le rcuprer d'une autre faon (sniffing client <--> AP). Il faut aussi eviter de laisser le SSID par dfaut pour eviter les attaques par brute force.
The Hackademy
DMP
-44/52-
SYSDREAM
L'authentification 802.1x se droule en 4 phases : - Lorsqu'un client s'associe au point d'accs, l'authenticator (AP) envoie une requte EAP-Response au serveur d'authentification (RADIUS). - Le serveur d'authentification renvoie l'authentificateur un challenge qui est transmis au supplicant au format EAOP. - Le supplicant renvoie la rponse au challenge l'authentificateur qui la transmet au serveur d'authentification - Si le supplicant s'est correctemment authentifi, le serveur d'authentification renvoie un message valide pour permettre au client (supplicant) d'accder au rseau ainsi qu'une cl WEP gnre par l'authentificateur. Dans le cas contraire, un message d'erreur est renvoy et le client ne peut pas accder au rseau. Certains point d'accs (dlink DWL6000AP par exemple) n'ont pas forcment besoin d'un serveur RADIUS pour authentifier les clients car ils implmentent un RADIUS en local. Vous pourrez donc directement spcifier les pseudo/password des utilisateurs qui on le droit d'accder au rseau :
The Hackademy
DMP
-45/52-
SYSDREAM
Comme vous pouvez le remarquer vous devez spcifier une longueur de cl WEP. En effet, le 802.1x au niveau wireless gnre automatiquement la cl WEP qui sera utilise par tous les clients du rseau. Il vous faudra ensuite configurer chacun de vos clients pour se connecter au rseau en utilisant le protocole 802.1x avec EAP ou PEAP pour plus de scurit (Le 802.1x est implment de base dans WinXP) et lui indiquer que la cl WEP vous est fournie automatiquement. Pour Win2000 vous devrez tlcharger un patch sur le site de Microsoft pour qu'il puisse supporter le 802.1x ou installer le dernier service pack (SP4) : http://support.microsoft.com/default.aspx?scid=kb;fr-fr;313664 Voici un bon tutorial si vous dsirez mettre en place un serveur radius : http://www.tldp.org/HOWTO/8021X-HOWTO/index.html B) WPA (Wi-Fi Protected Access) : Le WPA fonctionne actuellement sous Windows XP en appliquant un patch que vous pouvez tlcharger sur le site de Microsoft ou en installant le SP2 mais attention, certaines carte ne supportent pas le WPA au niveau hardware donc vous serez oblig de changer de carte. Sur les postes clients Linux vous pourrez utiliser wpa_supplicant (supporte aussi le 802.1x) disponible sur : http://hostap.epitest.fi/wpa_supplicant/ Le WPA est une solution intermdiaire avant que le protocole 802.11i soit finalis. Cette solution vise amliorer 2 faiblesses du protocole 802.11, le cryptage des donnes et l'authentification des utilisateurs. Pour le cryptage des donnes, le WPA se base sur le protocole TKIP (Temporal key integrity protocol) qui inclut un vecteur d'initialisation de 48 bits, un contrle d'intgrit renforc MIC (Message integrity code) pour empcher la modification des donnes la vol, ainsi qu' un nouveau systme de gnration de cls (mixage, regnration). En effet, le TKIP utilise une cl temporaire de 128 bits qui est regnre tous les 10000 paquets changs. Vous pouvez faire fonctionner le WPA en 2 modes distincts : - Le mode Authentification par utilisateur : Ce mode est plutt destin aux entreprises car il combine le 802.1x donc la possession d'un serveur RADIUS pour l'authentification des utilisateur et le cryptage WPA pour la transmission des donnes aprs authentification. - Le mode Authentification par cl partage (PSK) : Ce mode est plutot distin aux particuliers ayant un petit rseau local car il ne ncessite pas de serveur RADIUS pour authentifier les utilisateurs.
The Hackademy
DMP
-46/52-
SYSDREAM
Voici un exemple de configuration WPA (PSK) avec un point d'accs Lynksys et une carte client Orinoco sous Linux. Au niveau du point d'accs vous avez besoin de lui indiquer : - la passphrase utiliser (la passphrase doit au minimum faire 8 caractres pour gnr une cl de 256 bits) - l'algorithme (TKIP ou AES) - le temps en milliseconde de renouvellement de la cl
Comme vous pourrez le remarque, le fichier contient non pas une passphrase mais son equivalent en 256 bits. Pour gnrer l'quivalent, vous devrez utiliser wpa_passphrase livr avec wpa_supplicant (dans cet exemple le SSID du rseau est hackademy ) :
Vous n'avez plus qu'a assigner une adresse IP, passerelle votre carte wifi (ath0 dans mon cas), lancer wap_supllicant et le tour est jou : $ ifconfig ath0 192.168.0.10 $ wpa_supplicant -B -i ath0 -c /etc/wpa_supplicant.conf
The Hackademy DMP -47/52SYSDREAM
$ route add default gw 192.168.0.1 $ ping www.google.fr C) WPA2 : Fonctionnement exactement comme le WPA mais utilise un algorithme plus puissant qui est AES au lieu de RC4. Le protocole AES est plus fort mais ncessite donc une puissance CPU beaucoup plus importante. D) VPN : Les VPN sont une autre solution au problme de scurit. Il vont vous permettre de crer des rseaux privs virtuels d'une machine une autre, d'un rseau un autre ou d'un client un rseau en utilisant des canaux crypts. La mise en place de VPN est un cours lui tout seul, pour cela nous ne l'aborderont pas dans ce cours et c'est une solution trs peu utilise en sans fil, car difficilement grable quand il y a beaucoup de clients.
5. Leurre AP
Fake AP permet de simuler la prsence de plusieurs AP en envoyant des Beacon Frames avec diffrents SSID et adresses MAC. Cet outil permet de rendre la tche plus difficile au pirate, en effet, il pensera qu'il existe plusieurs AP alors qu'en ralit il en existe qu'un voir aucun... Pour pouvoir utiliser fakeap vous aurez besoin d'installer hostap. http://www.blackalchemy.to/project/fakeap/ Fakeap se prsente sous forme de script Perl. Pour le configurer il vous suffit de l'diter aprs l'avoir dcompress :
$tar zxvf fakeap-0.3.1.tar.gz $cd fakeap-0.3.1 $vi fakeap.pl Voici les informations importantes paramtrer :
IWCONFIG indique le chemin o se trouve iwconfig IFCONFIG indique le chemin o se trouve ifconfig CRYPTCONF indique le chemin o se trouve le fichier hostap_crypt_conf @words indique les faux SSID que fakeap doit mettre @vendors indique les faux id vendeurs (3 premiers octets des adresses MAC) que fakeap doit mettre
The Hackademy DMP -48/52SYSDREAM
Une fois votre fakeap.pl configur vous devrez l'activer : $ifconfig wlan0 up $perl fakeap.pl --interface wlan0 Voici le rsultat sous kismet quand fakeap est actif :
6. Portail captif
Nocat est ce que l'on nomme un portail captif (OpenSource), dans le sens ou ds que le client s'est authentifi auprs du point d'accs il est automatiquement redirig vers une page HTML lui demandant de s'identifier avec un login/password auprs d'un serveur RADIUS en gnral (802.1x). Ce genre de portail est trs souvent utilis dans les HotSpot (borne wifi public) pour vrifier si le client pay son accs au Web car le client n'a pas besoin de configuration spcial mais juste d'un navigateur en tat de marche. Une fois le client authentifi auprs de Nocat, les rgles de firewalling sont modifies pour permettre la machine de se connecter internet. http://nocat.net
7. Conclusion
Comme vous l'aurez remarqu en lisant ce cours, il existe plusieurs protocoles permettant de combler les failles du WEP mais lequel utiliser au final ? En faite, cela va dependre du matriel que vous avez disposition. Si tout votre matriel (point d'accs et carte clientes) vous permet d'utiliser le WPA et que vous avez disposition un serveur Radius, vous pourrez dans ce cas implmenter une trs forte scurit en utilisant le WPA/RADIUS en mode Authentification par utilisateur . Actuellement, c'est le top pour les rseaux sans fil mais le plus dur mettre en place cause du serveur RADIUS. Si vous n'avez pas de serveur RADIUS activez le WPA en mode Authentification cl partag et dfinissez une passphrase la plus compliqu possible. Si votre matriel ne vous permet pas d'utiliser le WPA, verifier si votre AP supporte un radius en local pour eviter le deploiement de celui-ci et utilisez le 802.1x comme protocole d'authentification. Cette solution est trs bien pour empcher un intru de se connecter au rseau mais n'empechera pas le cracking de la cl WEP par une personne motive, sauf si vous rgnrez rgulirement de nouvelles cls WEP (ce que je vous conseille biensur). Si jamais votre AP ne supporte ni le 802.1x, ni le WPA, vous serez oblig d'utiliser le WEP. Dans ce cas, je vous conseil de mettre en place un portail captif, de dfinir une cl de 256 bits et de la renouveller le plus souvent possible. Voila... le cours arrive sa fin. N'hesitez pas me contacter pour tout problme de configuration, scurisation, comprhension, etc... sur mon adresse email : crashfr@thehackademy.net
The Hackademy
DMP
-49/52-
SYSDREAM
Contact
The Hackademy
DMP
-50/52-
SYSDREAM
theHACKADEMY,c'estaussi:
The hackadermy Journal, The hackademy manuel et d'autres numros spciaux!!!!!
The Hackademy
DMP
-51/52-
SYSDREAM
Cre par les formateurs de l'hackademy, SYSDREAM est une SSII spcialise en scurit informatique. Nous apportons aux entreprises notre expertise pour assurer aux entreprises la fiabilit et la scurit de leur infrastructure informatique.
Audit de scurit: il permet de faire une expertise globale de votre systme (test intrusif, audit technique, audit de vulnrabilit). Les produits Systech scurit: Des solutions matrielles destines renforcer la scurit de votre infrastructure, et assurant un suivi performant de tout type d'vnement rseau ou systme. Le dvelopement d'applications: De la matrise d'oeuvre la conception technique, nous pouvons intervenir ou vous conseiller dans toutes les phases du dveloppement de votre application.
www.sysdream.com
The Hackademy
DMP
-52/52-
SYSDREAM