Après quelques tests

channel hopping

Assez rapidement j'ai remarqué un problème, mon mac détectait 6 wifi autour de moi,
le wrt54g uniquement 4, dont 2 que le mac ne voyait pas (SSID caché).
La raison était assez simple, la fonction de channel hopping du WRT ne marche pas.
Le routeur restait bloquer sur le channel 1, et n'écoutait jamais les 13 autres channels :-\

Après quelques recherches, il semble que ce soit “normal”.
J'ai donc désactive la channel hopping du kismet-drone.conf

channelhop=false

Puis installer sur le routeur un petit script trouvé sur le site de dd-wrt qui va changer régulièrement le canal d'écoute.

#!/bin/sh
#
# hop.sh    Hop true all channels
#
# Version:  @(#)hop  1.78  06-Feb-2006  ramiro.rikkert [AT] hva.nl
# http://www.dd-wrt.com/wiki/index.php/Channel_hopping_on_kismet_drone
#

# USA channels
#CHANNELS=1,6,11,2,7,3,8,4,9,5,10
#NBHOPS=11

# EU channels
CHANNELS=1,7,13,2,8,3,14,9,4,10,5,11,6,12
NBHOPS=14

# How many seconds to dwell on channel
SECONDS=2

# End of settings

INDEX=0
while true
do
    let INDEX=INDEX+1
    [ $INDEX -gt $NBHOPS ] && INDEX=1
    CURRENT=`echo $CHANNELS | cut -d ',' -f $INDEX`
    echo -n -e "\r\33[KCurrent channel: $CURRENT\r"
    wl channel $CURRENT
    sleep $SECONDS
done

Grâce à ce script, Kismet a maintenant une vue sur l'ensemble des wifi actifs (une bonne dizaine ici)

il faut bien comprendre qu'avec le channel hopping, le routeur passe sans arrêt d'un channel à un autre, il n'écoute pas en parallèle tous les channels !!

La suite

Maintenant que Kismet fonctionne correctement, il est bon de rappeler qu'une porte ouverte ne vous donne pas le droit de rentrer chez quelqu'un.

Quelques idées:

Free wifi

Le plus simple est d'utiliser kismet pour détecter les wifi ouverts.
Une fois trouvé le SSID d'un wifi ouvert, il suffit de s'y connecter.

Si jamais il y a un filtre sur l'adresse MAC, il faut s'y connecter en utilisant l'adresse mac d'un client de ce wifi (visible dans kismet).

Casser une clef wep

La fonction de channel hopping est très pratique pour voir les statuts des réseaux, trouver les wifi non-protégés, les types de protection, ceux qui sont actifs, etc.
Mais si vous voulez aller plus loin, il va falloir le couper. Et vous concentrer sur un channel ou même juste le SSID du réseau wifi que vous voulez écouter.

Cette commande lancée sur votre routeur permet par exemple d'écouter le 6ème channel.

wl channel 6

A partir de ce moment, Kismet devrait commencer à sauvegarder l'ensemble du trafic sur le channel 6.
Si vous ne trouvez pas le fichier dump, il faut regarder dans la config de kismet.

Une fois que vous avez assez de dump, il est possible de retrouver la clef en utilisant des outils comme aircrack-ng.

Pour cela, il suffit d'avoir assez de vecteur d'initialisation (IV). Pour donner une idée, j'ai chargé 1giga de dump, qui contenait 200000 IV, au bout de quelques heures de calcul, j'avais la clef.

Vous pouvez maintenant vous connectez sur ce wifi et/ou decrypter le dump avec airdecap-ng.

que faire avec le dump

On peut faire pas mal d'analyse à partir d'un dump kismet (wifi ouvert ou decrypté avec airdecap-ng).

De manière manuelle, avec wireshark
il est notamment facile de retrouver les cookies de session d'utilisateur.

Ou bien en mode automatique avec des outils comme dsniff et drifnet.
Le script ci-dessous va, par exemple,

  • extraire les login/passwd pop3 & imap
  • sortir une log de toutes les urls consultées
  • extraire toutes les images contenues dans le log

Lancé chaque ligne dans un terminal différant et nom.dump est le nom du dump à analyser.

dsniff -i eth1
urlsnarf -i eth1
driftnet -a -i eth1 -d .
tcpreplay -i eth1 -t nom.dump
code/kismet/lasuite.txt · Last modified: 2008/08/02 22:53 by aurelien
Creative Commons License Driven by DokuWiki Recent changes RSS feed