← retour aux outils back to tools

# DHCPig

Outil d'attaque par épuisement / famine DHCP qui inonde un réseau de requêtes DHCP pour consommer tout le pool d'adresses, refusant le service aux clients légitimes. DHCP exhaustion / starvation attack tool that floods a network with DHCP requests to consume the entire address pool, denying service to legitimate clients.

↗ https://github.com/kamorin/DHCPig

## Overview

DHCPig performs a DHCP starvation attack: it sends a flood of DHCPDISCOVER/REQUEST packets with spoofed MAC addresses to exhaust a DHCP server’s available address pool. This is used to test DHCP server resilience, and as a setup step for rogue-DHCP-server or man-in-the-middle attacks once legitimate clients can no longer obtain addresses from the real server.

## Common Usage

Run the starvation attack on an interface

    python2 dhcpig.py -i eth0

Target a specific subnet

    python2 dhcpig.py -i eth0 -s 10.10.10.0/24

Limit the request rate

    python2 dhcpig.py -i eth0 -w 0.1

## Notes

- DHCPig is written for Python 2 and relies on Scapy for raw packet crafting
- Exhausting the pool is often paired with standing up a rogue DHCP server so future clients get attacker-controlled DNS/gateway settings, enabling MITM
- Highly disruptive on the target network — only run in an authorized, scoped engagement window
- On switched networks with DHCP snooping / port security enabled, the flood may be dropped or trigger port shutdown — check the ROE before running against production infrastructure

Help / Man page

    usage: dhcpig.py -i INTERFACE [options]

      -i, --interface     network interface to use
      -s, --subnet        target subnet (CIDR), default: auto-detect
      -w, --wait          delay between requests in seconds
      -m, --mac-file      file of MAC addresses to cycle through
      -v, --verbose       verbose output

    Behavior:
      Sends DHCPDISCOVER with randomized/spoofed MACs, completes the
      DHCPOFFER/REQUEST/ACK handshake for each to lease every available
      address in the DHCP server's pool.

## Vue d’ensemble

DHCPig mène une attaque de famine DHCP : il envoie un flot de paquets DHCPDISCOVER/REQUEST avec des adresses MAC usurpées pour épuiser le pool d’adresses disponibles d’un serveur DHCP. Cela sert à tester la résilience d’un serveur DHCP, et comme étape préparatoire à des attaques de serveur DHCP malveillant ou man-in-the-middle une fois que les clients légitimes ne peuvent plus obtenir d’adresses du vrai serveur.

## Utilisation courante

    # Lancer l'attaque de famine sur une interface
    python2 dhcpig.py -i eth0

    # Cibler un sous-réseau précis
    python2 dhcpig.py -i eth0 -s 10.10.10.0/24

    # Limiter le débit des requêtes
    python2 dhcpig.py -i eth0 -w 0.1

## Notes

- DHCPig est écrit pour Python 2 et s’appuie sur Scapy pour la fabrication de paquets bruts
- Épuiser le pool est souvent couplé à la mise en place d’un serveur DHCP malveillant, pour que les futurs clients reçoivent des réglages DNS/passerelle contrôlés par l’attaquant, permettant le MITM
- Très perturbateur sur le réseau cible : à ne lancer que dans une fenêtre de mission autorisée et cadrée
- Sur les réseaux commutés avec DHCP snooping / port security activés, le flood peut être rejeté ou déclencher une coupure de port : vérifiez les ROE avant de lancer contre une infrastructure de production

Aide / Page de manuel

    usage: dhcpig.py -i INTERFACE [options]

      -i, --interface     network interface to use
      -s, --subnet        target subnet (CIDR), default: auto-detect
      -w, --wait          delay between requests in seconds
      -m, --mac-file      file of MAC addresses to cycle through
      -v, --verbose       verbose output

    Behavior:
      Sends DHCPDISCOVER with randomized/spoofed MACs, completes the
      DHCPOFFER/REQUEST/ACK handshake for each to lease every available
      address in the DHCP server's pool.