Faut-il craquer pour le nouveau RaspberryPi 3 ?

Et voilà, ce lundi 29 février 2016, 4 ans jour pour jour après avoir bouleversé le marché des micro-ordinateurs, la fondation RaspberryPi est revenue avec un nouveau modèle de son ordinateur phare : le RaspberryPi, en version 3 s’il vous plait. Si vous passez de temps en temps sur ce blog vous savez combien j’aime cette bestiole et quand je me suis levé ce lundi matin, la première chose que j’ai faite a été d’en commander un exemplaire !

Maintenant que l’effervescence autour de cette annonce commence gentiment à retomber, il est temps de faire un point sur les différences de cette nouvelle mouture et son intérêt pour le hacker/maker qui sommeille en vous !

Puissance et connectivité sans fil

Si vous vous demandez ce qui change entre le RaspberryPi 2 et le RaspberryPi 3, sachez que la liste des nouveautés est plutôt restreinte :

  • Le processeur passe de 4 coeurs 900 Mhz à une version 4 coeurs à 1200Mhz, ce qui représente suivant les tâches un gain d’environ 30% de rapidité
  • Une puce Wifi et bluetooth 4.1 est désormais directement embarquée sur la carte : vous n’avez plus besoin d’ajouter de clé USB wifi ou bluetooth
  • Les ports USB sont maintenant capables d’alimenter des périphériques gourmands en énergie comme les disques durs externes
  • Enfin, donnée plus technique, le RaspberryPi devient capable de gérer des instructions 32 et 64 bits (contre 32bits uniquement auparavant).

Et c’est à peu près tout ! Le reste des caractéristiques demeure inchangé, ainsi que le form factor de l’appareil. Cela signifie que vous pourrez utiliser vos boîtiers existants avec ce nouveau RaspberryPi 3.

Le RaspberryPi 3 : pas facile de le distinguer de son prédécesseur !
Le RaspberryPi 3 : pas facile de le distinguer de son prédécesseur !

Faut-il acheter ce nouveau RaspberryPi 3 ?

Pas de réponse universelle ici, ça va surtout dépendre de vos besoins. Si c’est la domotique ou doter un objet de capacités connectées qui vous intéresse, vous n’exploiterez pas forcément les éléments différenciants de cette nouvelle version. Si vous avez déjà un RaspberryPi plus ancien pour cet usage il n’est pas forcément utile de le remplacer. Après si ce sont des tâches gourmandes en puissance qui sollicitent votre raspberryPi (utilisation en tant que mediacenter, ou comme console de « retro-gaming » par exemple) là cela peut valoir le coup ! Le gain de performance permettra certainement une amélioration sensible de votre confort utilisateur.

Le RaspberryPi est-il toujours un outil de hacker/maker ?

C’est la question que je me pose. Au début de son histoire, les capacités très limitées de la première version du RaspberryPi (processeur monocore à 700Mhz, avec seulement 256MB de RAM) le cantonnait à des usages « mono-tâche ». Tantôt on l’utilisait comme un NAS, un serveur web, pour connecter une vieille radio ou comme centrale domotique, mais on mixait rarement les usages. Aujourd’hui, le RaspberryPi se rapproche de plus en plus des capacités d’un ordinateur de bureau standard, et je ne serais pas surpris que petit à petit, on puisse opposer l’achat d’un RaspberryPi à un ordinateur de bureau classique pour les usages courants comme la bureautique et le surf sur internet.

En fait, on sent bien que la gamme des RaspberryPi se segmente pour s’adresser à différentes populations : d’un côté on a le modèle B+ qui gagne en puissance et devient capable de couvrir toujours mieux les usages classiques de « l’ordinateur familial », et de l’autre on a les modèles A et Zero qui sont toujours plus compacts, économes en énergie et faciles à intégrer dans des objets divers et variés.

A bien y réfléchir, je pense que cela a du sens et permettra de satisfaire au mieux les besoins de chacun. Si par exemple je devais refaire aujourd’hui ma radio connectée, je pense que je partirai plutôt sur un modèle A+ accompagné d’une clé USB wifi pas chère. Pour la domotique par contre je garderai le modèle B+ pour son port RJ45 et sa puissance, car même si je n’ai pas de scénarios gourmands, ses capacités restent un gage d’évolutivité.

Le RaspberryPi Zero, pour moi le modèle idéal pour les hacks d'objets avec ses dimensions minuscules
Le RaspberryPi Zero, pour moi le modèle idéal pour les hacks d’objets avec ses dimensions minuscules

Nouveau RaspberryPi3 : attention à l’alimentation

Si le nouveau RaspberryPi3 est capable d’alimenter des périphériques plus gourmands en énergie, c’est au prix d’une alimentation plus robuste. En effet si auparavant une alimentation capable de délivrer 1.5A était suffisante, la fondation RaspberryPi recommande désormais l’usage d’une alimentation de 2.5A pour être sûr de pouvoir répondre aux sollicitations du processeur, des puces wifi/bluetooth ainsi que des éventuels périphériques USB connectés.

Un chargeur USB 3A qui devrait contenter les besoins du Raspberrypi3 (qui peut faire des pointes de consommation à 2.5A d'après la fondation RaspberryPi).
Un chargeur USB 3A qui devrait contenter les besoins du Raspberrypi3 (qui peut faire des pointes de consommation à 2.5A d’après la fondation RaspberryPi).

Les accessoires de cette nouvelle génération changent peu

Avec l’ajout de nouvelles capacités sans fil, le RaspberryPi 3 vous dispense de l’achat de la clé USB wifi habituelle. Il reste cependant quelques accessoires incontournables pour utiliser votre nouveau jouet.

Au rayon des périphériques obligatoires

Il vous faudra au minimum :

  • une carte sd classe 10 : c’est ce qui sert de disque dur au RaspberryPi3, et mieux vaut prendre une carte rapide (classe 10) sous peine de ralentir la machine.
  • une alimentation 2.5 Ampères : c’est donc la petite nouveauté avec cette 3ème version du RaspberryPi, cela permet de subvenir au besoin d’énergie de la partie radio et de vos éventuels périphériques USB.

Au rayon des périphériques moins indispensables

On trouvera :

  • un cable RJ45 : si vous ne désirez pas utiliser la puce wifi de la carte pour vous connecter à l’internet mondial
  • un cable HDMI : pour connecter le RaspberryPi à un écran
  • un boitier : pour protéger votre raspberrypi de la poussière… ou des doigts d’enfant :)
  • un clavier sans fil : ça c’est si vous souhaitez interagir avec la machine sans passer par une console SSH. Si vous destinez la machine à un usage de salon, je vous conseille ce clavier qui intègre un trackpad (c’est ce que j’ai), sinon n’importe quel clavier USB fera l’affaire. Vous pouvez aussi avoir besoin d’une souris, là pareil, il suffit qu’elle soit USB.

Comptez donc une quinzaine d’euros minimum en plus de votre micro ordinateur pour pouvoir jouer avec. Voire davantage s’il vous faut des périphériques « bonus ».

Il ne reste plus qu’à trouver des idées de projet

Si j’aime autant cette plateforme, c’est qu’elle représente pour moi une veritable invitation à la créativité! Je vous avoue que si j’ai cédé à la tentation du raspberrypi 3 c’est bien parce que j’ai quelques idées en tête! Promis je les partagerai ici ! Et vous, allez vous craquer pour le RaspberryPi 3 ? Pour en faire quoi ?

Domotique : Partie 7 – Détection de présence grâce au wifi de son téléphone

Cet article fait partie de la série Domotique (18 articles au total)

Un nouvel article domotique aujourd’hui où on ne manipulera pas de matériel ! Ce que je vous propose c’est d’utiliser le smartphone au fond de votre poche pour que votre système domotique prenne conscience de votre présence. Ici pas de détecteur de mouvement, pas de caméra IP, seul votre beau téléphone est nécessaire. A l’heure où j’écris ces lignes, cette astuce ne marche pas avec les iPhones mais promis je vous cherche une alternative ;)

Cet article fait partie d’une série dédiée à la domotique dont vous pourrez trouver le sommaire au bas de cet article.

Le principe de base

Sur mon smartphone, le wifi est toujours allumé. Au grès de mes déplacements, mon téléphone se connectera chez moi, à mon travail, chez certains de mes amis, etc… Étant donné que le wifi a une portée (dans le meilleur des cas) maximale de 100 mètres, on peut donc supposer que si on est connecté à son wifi domestique, alors on peut considérer que l’on est chez soi. Le tuto du jour vous montrera donc comment faire pour que Domoticz vérifie régulièrement si votre téléphone est connecté au wifi ou pas.

Quel intérêt que Domoticz sache si on est là ou pas ?

Cela permet tout simplement de mettre en scène des scénarios plus ou moins complexes pour par exemple :

  • Diminuer le chauffage quand personne n’est à la maison
  • Éteindre les lumières oubliées lors du départ des occupants
  • Simuler une présence à domicile quand personne n’est là
  • Etc…

La mise en œuvre

Pour mettre cette mécanique en œuvre, voici le scénario que nous allons suivre aujourd’hui :

  1. Créer un interrupteur virtuel qui indiquera si oui ou non quelqu’un est présent au domicile
  2. Créer un script qui modifiera l’état de l’interrupteur virtuel en fonction de la présence du téléphone sur le réseau wifi

Les captures d’écrans et les explications sont faites à partir de la version V2.2151 de Domoticz, affichée en anglais.

 1. Création de l’interrupteur virtuel

C’est la première étape, on va créer l’interrupteur qui matérialisera la présence à domicile. Pour cela rien de très compliqué ! Dans Setup > Hardware, cliquer sur le bouton « Create Virtual Sensor » sur le device « Dummy » (si vous ne l’avez pas, ajoutez le via le menu déroulant).

Création de l'interrupteur virtuel
Création de l’interrupteur virtuel
Sélectionnez le type « Switch« 
Sélection du type "Switch"
Sélection du type « Switch »

Après avoir cliqué sur OK, le périphérique sera visible dans l’onglet Setup > Devices où il faudra cliquer sur la petite flèche verte associée.

02_Ajout_interrupteur
On retrouve notre nouvel interrupteur rattaché au matériel « Dummy »

Choisissez lui un petit nom, dans mon cas « Presence » (oui j’ai peur des accents, c’est mon instinct de développeur qui me pousse à les fuir ;) Votre magnifique interrupteur apparaitra alors dans l’onglet « Switches ». Pour des raisons d’esthétisme, j’ai choisi d’en changer le type en « Motion Sensor » et de l’afficher sur mon Dashboard (c’est purement facultatif bien entendu). Voici ce que cela donne :

Mon interrupteur virtuel "Presence" maquillé en capteur de mouvement
Mon interrupteur virtuel « Presence » maquillé en capteur de mouvement

Il va maintenant falloir passer aux choses sérieuses : le script qui va altérer l’état de cet interrupteur.

2. Création du script

Le rôle de ce script est assez simple : exécuté périodiquement, il va essayer de joindre le (ou les) smartphone(s) du foyer. S’il y parvient, il bascule l’interrupteur virtuel à « On » et ne vérifiera que 10 minutes plus tard si le téléphone est toujours là. Si aucun smartphone n’est détecté, le script bascule l’interrupteur virtuel à « Off » et attendra 1 minute avant d’essayer de joindre à nouveau le(s) smartphone(s).

Pré-requis : connaitre l’adresse IP de son téléphone. Si vous ne l’avez pas déjà fait, je vous conseille de paramétrer votre box/routeur pour que cette adresse IP ne change jamais . Elle est généralement de la forme 192.168.xxx.yyy. Dans mon exemple, le script est paramétré pour 2 téléphones.

Le script doit être placé dans le répertoire scripts/lua de Domoticz. Le fichier du script doit obligatoirement commencer par « script_time_ » et porter l’extension « .lua« . J’ai par exemple nommé le mien « script_time_presence.lua« . Voici le contenu du script :

-- Alexandre DUBOIS - 2014
-- Ce script vérifie la présence de 2 téléphones sur le réseau pour savoir si quelqu'un est là.
-- La vérification est effectuée une fois par minute tant qu'aucun téléphone n'est à portée,
-- puis une fois toute les 10 minutes quand au moins un téléphone est connecté pour ne pas trop stresser sa batterie.

commandArray = {}

--Cette fonction calcule la différence de temps (en secondes) entre maintenant
--et la date passée en paramètre.
function timedifference (s)
  year = string.sub(s, 1, 4)
  month = string.sub(s, 6, 7)
  day = string.sub(s, 9, 10)
  hour = string.sub(s, 12, 13)
  minutes = string.sub(s, 15, 16)
  seconds = string.sub(s, 18, 19)
  t1 = os.time()
  t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
  difference = os.difftime (t1, t2)
  return difference
end

--Si le téléphone n'est pas détecté ou qu'il est présent depuis plus de 10 minutes (600 secondes),
--alors on vérifie à nouveau sa présence
if (otherdevices['Presence']=='Off' or (otherdevices['Presence']=='On' and timedifference(otherdevices_lastupdate['Presence']) > 600)) then
	ping_success_tel1=os.execute('ping -c1 192.168.1.20')
	ping_success_tel2=os.execute('ping -c1 192.168.1.21')
	
	if ping_success_tel1 or ping_success_tel2 then
	  commandArray['Presence']='On'
	else
	  if otherdevices['Presence']=='On' then --On ne passe l'interrupteur virtuel à Off que s'il est sur On.
             commandArray['Presence']='Off'
          end
	end
end

return commandArray

Bien sûr il faudra remplacer les adresses IP ligne 26 et 27 de mon script par celles de vos appareils :)

Un cas pratique : simulation de présence en cas d’absence

Histoire d’illustrer l’intérêt de ce « détecteur de présence », voici une implémentation d’un scénario de simulation de présence. Celui-ci n’est pas très évolué mais il « fait le boulot ». Grossièrement : si personne n’est à domicile et que nous somme samedi, on allume les lampadaires du salon vers le crépuscule et on les éteint aux alentours de 23h30 (à chaque fois, on spécifie une fourchette de 15 minutes pour chaque changement d’état).

J’ai utilisé le créateur de scénarios qui est disponible dans le menu via : Setup > More Options > Events

Celui-ci permet de « programmer » sans avoir à écrire de code informatique. On assemble simplement des briques pour indiquer les conditions à tester et actions à effectuer. Une fois terminée, cela donne ça :

Scénario de simulation de présence
Scénario de simulation de présence

Libre à vous de l’adapter ensuite à vos besoins :)

Les limites du système

Cela fait plusieurs mois que j’utilise cette méthode et je suis étonné par sa fiabilité. Cependant quelques ombres au tableau subsistent ! Les iPhones coupent automatiquement leur wifi dès que l’écran s’éteint, ce qui empêche d’utiliser cette astuce. D’autres smartphones font probablement de même ! Qui plus est, ceci fonctionne si chaque habitant de la maison possède un smartphone, ce qui ne sera pas forcément le cas. Enfin, nos beaux terminaux ont un point faible : leur batterie. Attention donc aux scénarios que vous programmez derrière, en cas de panne de batterie vous pourriez avoir de mauvaises surprises !

 

Partager sa connexion internet avec un voisin, ce qu’il faut savoir

Quelqu’un frappe à la porte : une jeune voisine qui souhaiterait profiter de ma connexion internet en échange de quelques euros par mois. Dois-je accepter ? Refuser ? Quels sont les risques ? C’est en substance ce que m’a demandé une amie, hier par sms.

Ce genre de situation vous est peut-être familière si vous habitez en immeuble et je me disais que quelques petits éclaircissements sur le sujet en intéresseraient certainement plus d’un…

D’un point de vue matériel

C’était la préoccupation première de mon amie : « Si je partage ma connexion, va-t-elle ramer ? » En fait ça dépend de deux choses : le débit disponible sur la ligne ADSL et l’utilisation que vous (et votre voisin le cas échéant) en faites.

Tout d’abord, pour connaitre son débit, il suffit de se rendre sur le site de speedzilla qui vous donnera une estimation de votre débit (attention cela peut fluctuer en fonction du moment de la journée). Si vous vous contentez de surfer sur internet (web, mail, streaming audio et un peu de vidéo SD) je considère qu’un débit d’1Mbit/s par personne permet de surfer correctement (donc par exemple 3 personnes se partageant une connexion avec un débit de 3Mbit/s). Après forcément, si certains se mettent à télécharger via du P2P (Emule, bittorent etc…) c’est une autre paire de manches.

D’un point de vue sécurité

En général, quand vous partagez votre connexion avec un voisin, la pratique la plus souvent mise en œuvre est le partage de la clé WEP/WPA de votre réseau wifi. Dans cette configuration, la machine de votre voisin est considérée comme partie intégrante de votre réseau local et a donc accès à toutes les ressources que vous partagez (bibliothèque iTunes, répertoires réseaux partagés, périphériques multimédias DLNA etc…). Notez que cela marche aussi dans l’autre sens :) Par conséquent, faites attention à ce qui « traine » sur votre réseau.

D’un point de vue légal

Là c’est plus simple : c’est illégal. Vous ne pouvez pas fournir une connexion internet à des individus extérieurs à votre foyer sans quoi vous prenez le statut de Fournisseur d’Accès Internet avec toutes les obligations que cela comporte. De plus, généralement, les CGV de votre opérateur interdisent purement et simplement cet usage.

A tout cela s’ajoute le fait qu’avec cette très chère loi Hadopi, si un voisin se fait « flasher » en train de télécharger illégalement avec votre connexion c’est vous qui serez incriminé par la Haute Autorité, et donc vous qui risquez une amende et une suspension de ligne ADSL.

Avant d’envoyer balader votre voisin

C’est sûr, vous êtes sympa, et elle n’a pas l’air méchante cette jeune fille. En dépit de ces avertissements vous lui donnerez peut-être votre clé WEP/WPA pour qu’elle puisse envoyer des e-mails à ses parents. Sachez que si vous changez d’avis, le plus simple restera de changer de clé WEP/WPA pour lui couper tout accès. De plus, si vous avez des doutes sur l’utilisation qui est faite de votre ligne,  vous devez savoir qu’avec les équipements « traditionnels » des FAI français (freebox, neufbox, livebox etc…) vous ne pourrez pas auditer votre connexion (et donc savoir d’où vient le problème) et encore mieux : il serait illégal de surveiller les agissements numériques de votre voisin, quand bien même il s’agirait de votre ligne ADSL ! A bon entendeur…

Ceux qui partagent leur connexion, parfois sans le savoir

Si vous êtes abonnés SFR et Free, vous possédez probablement une Neufbox (pour SFR) ou une Freebox (pour Free). Sachez que par défaut, elles émettent, en plus de votre réseau wifi privé, un réseau wifi public portant le nom FreeWifi (pour Free) et NeufWifi/SFRWifi/NeufWifiFON/SFRWifiFON (pour SFR). Ces réseaux sont accessibles aux autres abonnés du même opérateur qui passeraient dans le coin. Sachez que ces réseaux sont bridés (le P2P est bloqué) et isolés de votre réseau privé, par conséquent ce type de partage ne met pas en péril votre propre réseau. Ces réseaux publics sont également désactivables mais vous perdrez alors la possibilité de vous connecter chez les autres abonnés (normal, non ?).

Tuto : Cracker une clé WEP en 10 minutes avec Backtrack 4r1

Nous y voilà. Nombre de personnes me demandaient « est-ce vrai que l’on peut cracker un réseau wifi  ? ».  La réponse est évidemment oui, et je dirais même que c’est très facile si ce dernier est sécurisé avec du wep…

Si aujourd’hui j’écris ce tuto ce n’est pas pour inciter au piratage mais pour montrer à tout un chacun que même sans grande connaissances en informatique, il est tout à fait possible de pirater un réseau wifi protégé par du wep. Ce tuto est donc plus un coup de gueule contre

  • les FAI qui continuent de distribuer des box « prêtes à l’emploi »sécurisées avec des clés WEP (on est en 2010, la loi Hadopi c’est pour bientôt donc une protection WPA serait un minimum)
  • les constructeurs qui fabriquent des périphériques grand public qui ne supportent que le protocole WEP (et obligent donc les particuliers voulant connecter ces appareils à réduire la protection de leur réseau wifi).

Le principe

Il existe une faille de sécurité dans le protocole WEP et un algorithme particulier permet d’exploiter cette faille pour retrouver la fameuse « clé wep ». Ce tuto est destiné à être appliqué dans un environnement bien précis : vous captez le réseau wifi cible et il y a au moins une machine connectée sur ce réseau au moment de débuter l’attaque.

Ce tuto se découpe en trois parties que voici :

  1. On analyse l’environnement wifi : réseaux à portée, machines connectées. C’est dans cette étape que l’on va déterminer le réseau dont on veut découvrir la clé wep.
  2. On stimule le réseau cible : en se faisant passer pour un équipement autorisé, on va forcer le point d’accès cible à « bavarder » avec notre machine. On récupèrera ainsi un maximum de données émises par le point d’accès wifi.
  3. On déchiffre la clé : grâce aux données collectées à l’étape précédente, notre programme sera capable d’analyser la manière dont le point d’accès wifi « discute » avec nous pour en déduire la clé wep utilisée.

Le mode d’emploi

Je pars du principe que vous êtes capables de télécharger et graver Backtrack 4r1 sur un DVD (ou une clé USB) et de démarrer votre PC/mac dessus. Sachez que votre PC ne sera absolument pas modifié lors du déroulement des manipulations décrites ci-dessous et au prochain démarrage il n’y aura aucune trace de vos actions. De même, quel que soit votre niveau en informatique, ce tuto ne marchera que si votre carte wifi est reconnue par Bactrack. Pour savoir si c’est le cas, je vous encourage à faire un tour sur les forums officiels.

Ce tuto est a été réalisé sur le LiveDVD Backtrack 4r1 mais peut être adapté à de nombreuses distributions Linux sur lesquelles on aura au préalable installé la suite « aircrack-ng ».

Pour utiliser backtrack 4r1, il faut démarrer sur le DVD. Quand le prompt apparait, chargez l’interface graphique avec la commande startx (attention, si le clavier est anglais à ce moment, vous devrez donc taper stqrtx). L’interface graphique se charge alors et vous pouvez modifier si besoin la disposition du clavier grâce aux drapeaux situés en bas à droite de l’écran, aux côtés de l’heure.

bt4r1 - VMware Workstation.jpg

Vocabulaire et Abbréviations :

  • « AP » désigne le point d’accès wifi cible (celle dont on cherche la clé wep),
  • « station » désigne un appareil connecté en wifi à cette même box.
  • « @mac » désigne l’adresse mac d’un périphérique réseau (votre carte wifi, le composant wifi de votre box, etc…). Il s’agit d’un code unique, propre à chaque appareil de la forme 00:11:22:33:44:55
  • « terminal » il s’agit du programme qui permet d’accéder à l’invite de commande de Backtrack (vous savez la fenêtre noire moche avec les petites écritures blanches ;)

L’ensemble de ces commandes sont à entrer dans un terminal sur la machine attaquante. Dans chaque ligne de commande, les parties fixes sont en gras, les parties qui ne le sont pas doivent être adaptées à chaque attaque. Les commandes sont à effectuer dans l’ordre de l’article.

Pour accéder au terminal, vous pouvez utiliser l’icône dédiée à cet effet présente dans la barre des tâches. Vous aurez besoin de trois fenêtres du terminal pour mener à bien ce tuto.

shell.png

PARTIE 1 : L’état des lieux et la collecte des données

Dans cette partie, on affiche les réseaux environnants, on sélectionne la cible et on lance la collecte des paquets (colonne « Data »). Les commandes sont à entrer dans une fenêtre du terminal.

1.1 Lister les interfaces wifi disponibles (ex : « wlan0 », « rausb0″…)

airmon-ng

2.jpg

Commentaire : Je constate que ma carte wifi est reconnue par le système et que backtrack la désigne par le nom wlan0. C’est donc cet identifiant que je vais devoir utiliser.

1.2 Passer notre interface en mode monitor (pour « écouter » le trafic wifi aux alentours)

airmon-ng start interface

3.jpg

Commentaire : Suite à cette commande, airmon-ng crée parfois une nouvelle interface virtuelle (ici « mon0 ») qu’il faudra utiliser à la place de l’interface d’origine « wlan0 ». C’est le cas pour moi (d’où le message visible sur la capture ci-dessus) ici mais il se peut que chez vous cela fonctionne différemment.

1.3 Lancer un scan des réseaux wifi environnants une fois l’interface wifi passée en mode monitor

airodump-ng --encrypt wep interface

4.jpg

5.jpg

Commentaire : Ici la fenêtre se présente en deux parties : dans la partie supérieure, on trouve les informations relatives aux points d’accès wifi du voisinage. La partie inférieure quant à elle contient les informations relatives aux ordinateurs/appareils wifi du coin. On sait qu’un ordinateur est connecté sur un réseau particulier grâce à l’adresse mac de la colonne BSSID. Comme annoncé en préambule, pour mener à bien ce tuto on a besoin qu’au moins un appareil soit connecté sur le réseau dont on cherche la clé. Ici j’ai mis en valeur le point d’accès que l’on va attaquer et l’ordinateur client qui y est connecté.

1.4 Capturer les paquets émis par le point d’accès cible. On utilise pour cela les infos récupérées précédemment.

Astuce : avant de pouvoir lancer la capture des paquets il vous faudra interrompre le scan des réseaux en cours (cf Etape 1.3). Pour cela utilisez le raccourci Ctrl+C.

airodump-ng --write nom_de_fichier_au_pif --channel numero_de_canal_de_la_box --bssid @mac_AP interface

6.jpg

7.jpg

Commentaire : cette commande doit tourner jusqu’à la fin du tuto car c’est elle qui collecte les données et qui nous intéresse ! Une fois la commande lancée, votre carte wifi va se concentrer sur le trafic émis sur ce réseau wifi et va sauvegarder dans un fichier tous les échanges qui passent à sa portée qui concerne notre réseau. L’indicateur crucial pour le crack est le nombre de packets « data » collectés (colonne Data). On peut espérer arriver à nos fins quand ce nombre atteint 30000 même s’il faut généralement patienter au moins jusqu’à 100 000 (quand l’affaire est bien menée, c’est l’histoire de dix minutes).

 

PARTIE 2 : La stimulation du point d’accès

Cette partie est facultative mais sans elle le crack peut prendre plusieurs heures. Elle permet de stimuler le point d’accès wifi pour augmenter le nombre de paquets transmis (et donc collectés). Lancez ces commandes dans une nouvelle fenêtre du terminal.

2.1 Fake Authentication (en cas de filtrage mac) : facultative, cette étape permet de se faire passer pour l’ordinateur légitimement connecté.

aireplay-ng -1 0 -e nom_réseau -a @mac_AP -h @mac_station interface

9.jpg

Commentaire : parfois cette commande échoue sans que cela pose le moindre problème pour la suite des opérations

2.2 Injection (aussi facultatif, toutes les cartes réseaux wifi ne sont pas compatibles). Ici démarre la « stimulation » du point d’accès wifi de manière à accélérer la collecte des données

aireplay-ng -3 -e nom_réseau -b @mac_AP -h @mac_station interface

10.jpg

11.jpg

Commentaire : On sait que l’injection fonctionne car le nombre de trames ARP envoyées augmente. Si ce n’est pas le cas, vous pouvez un peu forcer le destin en déconnectant l’ordinateur client à l’aide de la commande si dessous (lancez la dans une nouvelle fenêtre du terminal) :

aireplay-ng --deauth 5 -a @mac_AP -c @mac_Station interface

13.jpg

12.jpg

Commentaire : lors de sa reconnexion, l’ordinateur client va émettre en direction du point d’accès wifi et ce petit échange de données (une ARP request) permet bien souvent de faire démarrer l’injection (cf le nombre de paquets envoyés, ici 5576 au moment de la capture).

 

PARTIE 3 : Le crack de la clé à partir des données collectées

Cette partie est la finale, c’est ici que l’on lance l’algorithme capable de casser la clé wep à partir des paquets collectés.

3.1 Lancer le crack de la clé. Vous pouvez tenter à partir de 30000 data pour une clé wep 64bits, à partir de 100 000 data pour une clé wep 128bits. De toute manière, en cas d’échec le crack sera relancé automatiquement à chaque fois que 5000 data supplémentaires seront collectés. Important : veillez à lancer cette commande dans une autre fenêtre du terminal.

Si tout se passe bien, le programme devrait trouver la clé au bout de quelques instants (cf l’écran ci-dessous).

aircrack-ng -z *.cap

14.jpg

15.jpg

Commentaire : Et voilà, ce tuto touche à sa fin, vous voyez que le programme a réussi à trouver la clé (message « Key Found »), voilà une affaire rondement menée.

 

Le mot de la fin

Cracker un réseau wifi protégé avec du wep est loin d’être compliqué. Avec un tuto comme celui-ci et le matériel adéquate c’est l’histoire d’un gros quart d’heure. J’espère que la multiplication de ce genre de démonstration fera réfléchir quelques uns de nos dirigeants quant à certaines lois récentes… Mais je ne me fais pas d’illusions. Notez que ce tuto n’a pas pour vocation d’inciter au piratage donc je ne répondrai volontairement pas aux questions un peu trop orientées ;) Sachez que ma motivation première est de faire comprendre « la logique » du processus, donc si vous avez des remarques pour m’aider à clarifier ce tuto, vos commentaires sont les bienvenus.