Wi-Fi: Default key algorithms

Auteur : Gorn
Zine: Rafale #12



1) Introduction

Après quelques jours d'attentes, vous venez de recevoir votre MachinTrucBOX.
Soucieux de sécurité, vous regardez le type de cryptage employé car vous
savez que le WEP est facilement "crackable", résistant à peine à quelques
minutes voir quelques secondes. Mais, heureusement, votre FAI préférée
n'utilise pas (voir plus) ce cryptage. Vous récupérez, donc, en toute
confiance la clé par défaut pour vous connecter à distance en Wi-Fi.

Seulement, voilà. Savez vous que certains FAI et constructeurs utilisent,
par négligence, des algorithmes pour la génération des clés de cryptages ?
Des algorithmes facilement exploitables par une personne malveillante,
rendant la sécurité de votre réseau totalement inutile.

Voici un petit tour d'horizon de ces FAI et constructeurs, et des fameux
algorithmes de génération de clé par défaut ...



2) Club Internet, "le club le plus ouvert de la planète"

En septembre 1998, Club Internet utilise dans ces publicités, le slogan :
"Club Internet, Le club le plus ouvert de la planète" (#1). Mais c'est des
années plus tard que les utilisateurs des clubinternet.box v1, v2 ou
des Comtrend CT635, comprennent la véritable signification du mot ouvert.

En effet, au cours de l'année 2007, Club Internet met à disposition sur son
site web un outil nommé WepTool, qui permet d'obtenir la clé wep par défaut
en fonction de l'ESSID du routeur (#2).


              WepTool
              Image n°1 - WepTool de Club Internet


L'article n'étant pas basé sur l'utilisation de ce logiciel, je
n'expliquerais pas son fonctionnement en détail. Cet outil étant simple d'
utilisation, il existe une multitude de documentation (#3).


L'existence de ce logiciel est intéressant puisque nous comprenons grâce à
lui qu'il existe un algorithme permettant d'obtenir la clé WEP.
En analysant ce logiciel et le fichier FSHash.dll (pour File String Hash et
dont le code de source est sous licence LGPL (#4)), on découvre
que la clé par défaut correspond aux 26 premiers caractères du cryptage
SHA-1 de l'ESSID.


Utilisons, en exemple, l'ESSID suivant : TECOM-AH4222-527A92
Avec cette information, nous savons qu'il s'agit d'une clubinternet.box v2.

   - clubinternet.box v1   =>   Hitachi (TECOM) AH-4021
   - clubinternet.box v2   =>   Hitachi (TECOM) AH-4222

Nous cryptons, donc, l'ESSID avec la fonction de hachage SHA-1
On obtient : e724947bf889dd651a1698dd3f61f0c452f0a203
La clé WEP correspond au 26 premiers caractères (en noir).


Pour récupérer l'ESSID à partir de l'adresse MAC (et inversement), sur
des Hitachi AH-4222 (ne fonctionne pas sur les AH-4021), il suffit de
soustraire 0x00000B aux 3 derniers octets de l'adresse MAC et de
mettre le résultat à la place des xxxxxx de "TECOM-AH4222-xxxxxx".


Prenons un cas de figure, l'ESSID de notre clubinternet.box v2 est masqué et
en lançant un airodump-ng sur un poste linux distant, nous avons :

Airodump
Image n°2 - Airodump-ng, outil qui collecte les « paquets » sur votre réseau Wi-Fi

Comme, l'adresse MAC des Hitachi AH-4222 commence, généralement, par soit
00:16:38:xx:xx:xx ou soit 00:19:15:xx:xx:xx. Avec cette information,
nous savons que l'adresse MAC correspond à ce type de routeur.

Seulement, les Hitachi AH-4222 n'ont pas été, uniquement, employés pour la
clubinternet.box v2 mais aussi pour des AliceBox. Pour savoir si notre routeur
est une clubinternet.box, il suffit de lire la taille de l'ESSID masqué.
En effet, comme l'ESSID d'une clubinternetbox (TECOM-AH4222-xxxxxx), la taille
de notre exemple est de 19 caractères (<length: 19>). Si le routeur
était une AliceBox, on aurait eu 12 caractères, soit ALICE-xxxxxx.

Nous récupérons, donc, les 3 derniers octets de cette adresse, soit : 527A9D
On applique la soustraction : 0x527A9D - 0x00000B = 0x527A92
Ainsi, on obtient l'ESSID suivant TECOM-AH4222-527A92 et donc par
conséquent la clé WEP suivante e724947bf889dd651a1698dd3f

A noter également, que si notre adresse MAC en 00:16:38:52:7A:9D provenait
d'une AliceBox, la méthode pour passer de l'adresse MAC à l'ESSID ne
changerait pas et l'ESSID serait ALICE-527A92.


Voici un schéma résumant les algorithmes utilisaient :


        Schéma récapitulatif
        Image n°3 - Schéma récapitulatif


En conclusion, en plus de pouvoir récupérer la clé WEP avec l'ESSID des
clubinternet.box, nous pouvons également obtenir la clé par défaut d'un
Hitachi AH-4222, uniquement, avec son adresse MAC.



3) Alcatel/Thomson SpeedTouch et British Telecom

Le 14 avril 2008, Kevin Devine révèle sur le site GNUCitizen une faiblesse
dans la sécurité WEP/WPA des Alcatel/Thomson SpeedTouch (et par la même
occasion des BTHome Hub Router basé sur le SpeedTouch 7G) (#6). En effet,
ces routeurs sont livrés avec une clé WEP/WPA et un ESSID, dépendant du
numéro de série du boîtier.

                  BTHome Hub Router
                  Image n°4 - BTHome Hub Router
                  (basé sur l'Alcatel/Thomson SpeedTouch 7G)



Utilisons, en exemple, le numéro de série suivant : CP0615JT109 (53)
Le numéro de ces routeurs est sous la forme CPAAAABBCCC (DD)
Supprimons les valeurs "BB" et "DD", on obtient : CP0615109
Convertissons les caractères ASCII "CCC" par leurs valeurs hexadécimales
(1=>0x31, 0=>0x30, 9=>0x39). Ce qui donne : CP0615313039
Nous cryptons avec SHA-1: 742da831d2b657fa53d347301ec610e1ebf8a3d0

Pour les SpeedTouch, les trois derniers octets (f8a3d0) sont ajoutés à
la chaîne "SpeedTouch" pour devenir l'ESSID par défaut : SpeedTouchF8A3D0

Tandis que pour les BTHome Hub Routeur, l'ESSID par défaut est formé à
partir de la chaîne "BTHomeHub-" et des deux derniers octets (a3d0) pour
devenir : BTHomeHub-A3D0

Enfin, la clé de cryptage WEP/WPA par défaut correspond aux 5 premiers
octets du hash SHA-1, soit : 742da831d2


Même si un attaquant peut avoir difficilement le numéro de série du routeur,
il peut prédire, à partir d'une liste de numéros de séries possibles,
qu'elles sont les clés de cryptages en fonction de la fin de l'ESSID.
Ces fonctionnalités sont réalisées dans "STKeys" de Kevin Devine.

En utilisant ce logiciel et notre exemple, nous pouvons savoir, en moins de
30 secondes, que deux clés seulement correspondent à l'ESSID SpeedTouchF8A3D0

      Schéma récapitulatif
      Image n°5 - Exemple d'utilisation de STKeys

Pour les BTHome Hub Routeur, nous avons beaucoup plus de possibilités car
nous avons uniquement les deux derniers octets en critère de recherche.
Ainsi pour le BTHomeHub-A3D0, nous avons 79 possibilités de clés.

Mais Adrian (pagvac) Pastor apporte la solution avec ces programmes nommés,
BTHHkeygen et BTHHkeybf, qui intègrent une fonction de "brute forcing".



4) Conclusion

À travers les exemples de Club Internet, de Hitachi, de Alcatel/Thomson ou
British Telecom, nous ne saurions trop vous recommander de modifier les mots
de passe et l'ESSID de vos routeurs. Toutefois, il est évident que le
matériel dans ces exemples est de plus en plus rare. Mais l'avenir, nous
réserve sûrement de nouvelles découvertes d'algorithmes sur d'autres FAI ou
d'autres routeurs, qui pourront faire l'objet, sûrement, d'un prochain
article ...



5) Références

1. Club Internet sur Wikipédia
2. WepTool sur le site d'assitance de Club Internet
3. WepTool pour les utilisateurs de Windows VISTA
4. FSHash : MD5 Hash Plug-in SHA-1
5. Reverse Engineering de WepTool par l'ESEC
6. GNUCitizen : Default key algorithm in Thomson and BT Home Hub routers