Activer le mode monitor et utiliser Aircrack avec une carte Broadcom BCM43xx

Une fois n’est pas coutume, j’écris aujourd’hui un article un peu plus technique que d’habitude qui donne la marche à suivre pour utiliser aicrack avec une carte wifi Broadcom de type BCM43xx. Pourquoi un tel article ? Possédant un Dell Studio 1735 avec une carte Broadcom BCM4312, j’ai dû un peu chipoter et chercher pour arriver à activer le mode monitor, régler le problème du channel négatif et utiliser aircrack-ng correctement. Pour rappel, mettre sa carte wifi en mode monitor permet d’écouter tous les paquets wifi qui se baladent autour de votre pc (nécessaire pour utiliser aircrack).

Installer b43

Avant tout, je tiens à préciser que toutes les manipulations décrites ici sont pour Unix évidemment. Personnellement, je suis sous Kubuntu 11.10. Afin de pouvoir activer le mode monitor sur votre carte Broadcom, nous allons installer le driver b43 qui, contrairement au driver wl (installé par défaut), supporte le mode moniteur.

Le driver b43 supporte les cartes Broadcom suivantes sans problème: BCM4301, BCM4306/2, BCM4306/3, BCM4311, BCM4312, BCM4318, BCM4309, BCM4306, BCM4331, BCM4324, BCM4325. Certains modèles n’ont pas été testés ou sont partiellement fonctionnels: BCM43224, BCM4311/a, BCM4321, BCM4323, BCM4322, BCM43227, BCM43228, BCM43421. Vous pouvez également regarder la liste complète.

Vérifier si votre carte est compatible

Dans un terminal, lancez simplement la commande lspci pour afficher vos différents périphériques. Dans la liste, vous devriez trouver un « Network Controller ». Pour que ça soit plus clair, vous pouvez utiliser grep pour affiner la recherche:

lspci | grep Network
0c:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)

Si votre carte appparait dans la liste des cartes supportées par le driver b43, vous pouvez passer à la suite 😉

Installer le driver b43

Le site officiel du driver donne les indications nécessaires à l’installation de b43: http://linuxwireless.org/en/users/Drivers/b43#Device_firmware_installation.

Pour ma part, c’est l’installation Ubuntu qui m’intéresse. De plus, avant d’installer le driver, regardez dans le tableau de compatibilité le driver exact à installer (b43, b43legacy ou b43-lpphy). Attention, contrairement à ce qui est écrit dans le tableau, il faut installer le driver b43-lpphy pour la carte BCM4312. Pour les autres cartes, le tableau est, à priori, correct. Donc, dans mon cas (Ubuntu + BCM4312), l’installation se fait avec la commande:

sudo apt-get install firmware-b43-lpphy-installer

Désactiver wl et activer b43

Maintenant que vous avez installé le driver, il faut encore l’activer pour qu’il remplace le précédent. Pour cela, on utilise l’outil modprobe.

sudo modprobe -r wl # Désactive wl
sudo modprobe b43 # Charge b43

 Charger automatiquement b43

Avec la manipulation précédente, vous allez simplement charger le driver pour la session courante. Afin que b43 soit chargé automatiquement au démarrage, vous devez modifier le fichier /etc/module (en administrateur, avec un simple éditeur de texte – gedit par exemple -). Pour ma part, sous Kubuntu, j’utilise Kate. La commande est donc:

sudo kate /etc/modules

Dans la liste des modules qui s’affiche, ajoutez simplement sur une nouvelle ligne b43. Exemple:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

lp
rtc
b43

 Activer mode monitor et utiliser aircrack-ng

Si ce n’est pas déjà fait, installez la suite aircrack-ng:

sudo apt-get install aircrack-ng

Pour activer le mode monitor, vous devez d’abord connaitre le nom de l’interface de votre carte wifi. Pour ce faire, utilisez la commande iwconfig.

pyo@pyo-laptop-unix:~$ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11bg  ESSID:"xxxxxxx"
          Mode:Managed  Frequency:2.437 GHz  Access Point: xxxxxx
          Bit Rate=48 Mb/s   Tx-Power=20 dBm
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=57/70  Signal level=-53 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:1801   Missed beacon:0

On peut voir que mon interface wifi est wlan0. Nous allons donc activer le monitor sur cette carte réseau avec l’outil airmon:

pyo@pyo-laptop-unix:~$ sudo airmon-ng start wlan0
Interface       Chipset         Driver

wlan0           Broadcom        b43 - [phy0]
                                (monitor mode enabled on mon0)

Un petit coup de iwconfig nous montre bien qu’une interface mon0 est dispo:

pyo@pyo-laptop-unix:~$ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11bg  ESSID:"xxxxxxxxxxxx"
          Mode:Managed  Frequency:2.437 GHz  Access Point: xxxxxxxxxxxxx
          Bit Rate=36 Mb/s   Tx-Power=20 dBm
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=49/70  Signal level=-61 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:1854   Missed beacon:0

mon0      IEEE 802.11bg  Mode:Monitor  Tx-Power=20 dBm
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:on

Et voilà, il vous suffit maintenant d’utiliser l’interface mon0 avec les différents outils d’aircrack-ng !

Bug du channel négatif (channel -1)

Il se peut que, comme moi, vous soyez confronté à un problème de channel négatif en utilisant aireplay-ng. Aireplay tente d’injecter des paquets sur un channel X mais un message d’erreur s’affiche comme quoi votre interface est sur le channel -1. Exemple de message d’erreur: mon0 is on channel -1, but the AP uses channel X ou encore fixed channel mon0: -1.

Il y a deux possibilités pour résoudre ce problème:

  1. Utiliser la dernière version de aircrack-ng avec l’option –ignore-negative-one: Solution expliquée sur La-Vache-Libre.
  2. Patcher le package compact-wireless : http://aircrack-ng.org/doku.php?id=compat-wireless (Solution que j’ai appliquée chez moi)

 

Maintenant que vous avez une carte réseau qui fonctionne du tonnerre, vous pouvez vous amuser à utiliser aircrack-ng ! 😉

About Pyo

Webmaster et blogueur depuis plusieurs années et étudiant en sciences informatiques (UCL, Belgique), j'ai un intérêt particulier pour les nouvelles technologies et le blogging. Sur ce blog, je vous fais part de mes découvertes qui, je l'espère, vous intéresseront.

View all posts by Pyo →

7 Comments on “Activer le mode monitor et utiliser Aircrack avec une carte Broadcom BCM43xx”

  1. Merci pour ce bon tuto, dans mon cas j’ai la carte BCM43228 802.11a/b/g/n. Est ce que je peux installer le b43 driver car dans le tableau c’est marqué « Not tested » ?

  2. Apparament sa marche aussi sur mobile mais faut adapter, il y a une équipe qui travail sur des Andropphones (Samsung galaxy S II et Nexus) qui on aussi une carte BCM43xx qui a réussi activer le mode monitor et l’injection de paquets.

    Sinon, un bon tuto.

  3. bonjour a tous . je veu savoir comment utiliser les outils de aircrack-ng ( version 1.0 )

    sous Mandriva Linux ( Official ) 2010.0 i586 . je veu activer le mod moniteur sur ma

    carte reseau wifi type ( Broadcom BCM4318 ) . jais telecharger et installer le driver

    ( broadcom-wl-5.100.138.tar.bz2 ) aussi jais telecharger et installer le ( b43-fwcutter-017 ) .

    et jais executer les commandes suivants sous le ( konsole Terminal ) :

    1: b43-fwcutter -w /lib/firmware/ broadcom-wl-5.100.138/linux/wl_apsta.o

    2: modprobe b43

    merci bien d’avance .

    1. en root:
      airmon-zc #ou airmon-ng
      Si tu vois que ta carte est reconnu, tu cherche des tutos sur youtube avec comme mots clé « crack wep », « crack wpa » « backtrack », « tuto aircrack » y’en a tellement trop que tu ne sera quoi regarder en premier ;).

Répondre à Theon Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *