WiFiPumpkin3 Explained — A Rogue AP (Evil Twin) Attack Framework thumbnail

WiFiPumpkin3 Explained — A Rogue AP (Evil Twin) Attack Framework

⏱ approx. 15 min views 33 likes 0 LOG_DATE:2026-06-08
TOC

WiFiPumpkin3 is a rogue access point (fake AP) attack framework written in Python 3, developed by the P0cL4bs team (mh4x0f / Marcos Bomfim). It is the successor to the older WiFi-Pumpkin / 3vilTwinAttacker, and for red teams and network assessments it bundles into one tool everything needed to "stand up a fake Wi-Fi, lure victim devices in, then observe or tamper with their traffic as a man-in-the-middle (MITM)." What it does is simple: broadcast an AP that looks like the real thing, then pass connected devices through modules for captive-portal phishing, credential sniffing, DNS spoofing, and HTTP injection. Its hallmark is an interactive console plus a plugin/extension system: instead of hand-rolling hostapd + dnsmasq + a phishing page, you assemble a full Evil Twin attack from the console with just set and start.

01

What WiFiPumpkin3 is — a rogue AP framework #

A rogue AP (fake access point) is a "Wi-Fi that looks real" set up by the attacker. When a victim device connects to it, the attacker sits right in the middle of the traffic path as a man-in-the-middle, able to read HTTP contents, present fake login screens, or rewrite DNS responses. WiFiPumpkin3 packages this whole chain into a single framework.

Component Role
The fake AP itself Broadcasts the SSID named via set ssid to lure devices in
Proxy / modules Process the passing traffic (captive-portal phishing, HTTP injection, sslstrip, etc.)
Plugins / extensions Enable sniffing, DNS, deauth, and more via plugins
Interactive console Controls the whole thing from a wp3 > prompt with set / start

WiFiPumpkin3 itself doesn't "understand" the attack — it is just a base that combines parts: a fake AP plus the modules you pick. What you actually do depends on the modules selected with set proxy or plugins.

▸ Relation to Evil Twin — WiFiPumpkin3 is one implementation

Attacks that "stand up a fake AP identical to a legitimate one and steal devices" are collectively called Evil Twin. WiFiPumpkin3 is one of its representative implementations, in the same lineage as airgeddon, Fluxion, and eaphammer. The difference is that those are shell-script-centric, whereas WiFiPumpkin3 is built as a Python framework with an interactive console and plugins.

02

Legal and ethical considerations #

What WiFiPumpkin3 does is pull unrelated people's devices into your fake AP and observe or tamper with their traffic. This is not a harmless technical game. Running a rogue AP / MITM / phishing portal against others without permission is an illegal act that clearly violates Japan's Radio Act (電波法) and Unauthorised Computer Access Act (不正アクセス禁止法), and their equivalents elsewhere.

▸ Targets you may run WiFiPumpkin3 against
  • Only your own kit and your own devices — a closed test using your own Wi-Fi adapter with a phone/PC you own as the "victim."
  • Engagements with explicit written permission — a red-team / pentest contract where the target (SSID, location, devices, period) is documented as scope.
  • An isolated learning lab — an experiment environment physically/logically isolated so that no one else's radio or devices get mixed in.

A fake AP can sweep in nearby strangers' devices the moment it starts transmitting. Carelessly running start in a public space — a café, an airport, an office — means intercepting unrelated third parties' communications, and can simultaneously constitute violations of the Radio Act, the secrecy of communications, and unauthorized access. Always confirm first: is it your own kit, do you have authorization, and will it avoid catching others?

03

How it works and how it's built — fake AP plus modules #

A WiFiPumpkin3 attack is easiest to reason about in two stages: "lure devices in with a fake AP" → "process the passing traffic with modules." What you insert in the second stage decides the character of the attack.

1. Broadcast the fake AP
Transmit the SSID named via set ssid from an AP-mode-capable adapter. A deauth module may kick devices off the legitimate AP so they switch to the fake one.
2. Get devices to connect
Once a device joins the fake AP, the attacker becomes the man-in-the-middle of its traffic. Forwarding to the real internet upstream requires a second interface.
3. Process the traffic (proxy)
set proxy captiveflask presents a fake login screen first; pumpkinproxy inspects/rewrites HTTP.
4. Extract information (plugins)
sniffkin3 harvests credentials, and dnsspoof redirects specific domains to a spoofed site.

In other words, the combination of "the fake-AP base" + "what the proxy does" + "what the plugins extract" is your attack scenario. The set commands in the following sections are the operations that assemble this layout.

▸ What you need

You need a Wi-Fi adapter that supports AP / master mode (some chipsets can't). If you want to forward the victim's traffic to the real internet so things look natural, you'll also want a second interface for the upstream link. It runs on Linux as root.

04

Basic usage — the interactive console #

WiFiPumpkin3 is used primarily as an interactive console. Launched as root, it drops you at a wp3 > style prompt where you configure with set and fire with start. Rather than stringing together long flags, the tool's style is to build up state with commands inside the console.

Launch the console and assemble a fake AP
$ sudo wifipumpkin3 # launched as root, it enters the wp3 > prompt wp3 > set interface wlan0 # choose the wireless interface that will host the fake AP (AP-mode capable) wp3 > set ssid FreeWiFi # set the broadcast network name (the lure) wp3 > set proxy captiveflask # module the traffic passes through: captiveflask = captive-portal phishing wp3 > start # launch the fake AP and the selected modules wp3 > stop # stop it

Check what's available with the console's listing commands: proxys for proxy modules, plugins for plugins, and help for the full command set.

List the available options
wp3 > proxys # list of available proxy modules (captiveflask, etc.) wp3 > plugins # list of available plugins (sniffkin3 / dns, etc.) wp3 > help # list of console commands

When typing the same steps every time gets tedious, pass a .pulp script — a list of console commands — with --pulp, and they run in sequence at startup. Good for reproducing test procedures and automating labs.

Automate console operations with --pulp
$ sudo wifipumpkin3 --pulp myscript.pulp # a .pulp is a list of set interface / set ssid / start … commands # they run in order at startup, reproducing the same attack layout
05

The main modules #

The core of WiFiPumpkin3 is a thin base; the actual offensive power lives in the modules. Rather than specifying things in fine-grained flags, think of it as choosing "which module to enable" with set proxy or plugins. Know the representative ones.

ModuleTypeRole
captiveflaskproxyCaptive-portal phishing. Presents a fake login on connect and harvests Wi-Fi / email credentials via a selectable template
pumpkinproxyproxyInspect / inject HTTP. Used to examine traffic contents or rewrite content
sslstrip2proxyStrips the redirect to HTTPS and downgrades to HTTP (sslstrip family), aiming to keep traffic plaintext
sniffkin3pluginSniffs credentials from the traffic (FTP / HTTP, etc.)
deauthpluginSends deauth at the legitimate AP to disconnect devices and make them switch to the fake AP
DNS / dnsspoofpluginReplaces the fake AP's DNS responses to redirect specific domains to the attacker's site

For example, to steal credentials with a fake login, select set proxy captiveflask and have the victim enter a Wi-Fi password or email credentials into a login template under captiveflask. To inspect and tamper with HTTP, use set proxy pumpkinproxy; to passively harvest credentials, enable sniffkin3 from plugins.

▸ Think in "module selection," not flags

WiFiPumpkin3 is not a tool whose behavior you set with long flag chains like ffuf or wfuzz. Which proxy you set and which plugins you enable determine the substance of the attack. So rather than "memorizing commands," the fastest path to mastery is understanding the role of each module that appears under proxys / plugins.

06

Defenses and where it sits #

Because WiFiPumpkin3 is one implementation of the Evil Twin attack, its defenses belong to the same family as Evil Twin in general. The crux of the attack is "connecting to a fake AP without noticing" and "entering data into a fake page without noticing," so the countermeasures close those gaps.

Defense Effect
WPA3 / 802.11w (PMF) Management-frame protection makes forced disconnects via deauth harder to land
Never enter a Wi-Fi password into a web page Breaks the premise of captive-portal phishing — a legitimate AP doesn't ask for the password on a web screen
Server-cert validation for enterprise (802.1X) Rejects a fake RADIUS / fake AP on certificate mismatch
VPN on untrusted networks Even with a MITM present, traffic stays encrypted, neutralizing eavesdropping and tampering
WIDS / WIPS rogue-AP detection Detects and reports suspicious APs or radio on the same SSID
ToolImplementationCharacteristics
WiFiPumpkin3Python frameworkAssembles a fake AP via an interactive console plus plugins. Rich set of modules like captiveflask
airgeddonBash scriptMenu-driven. Broad coverage from Evil Twin to WPA handshake capture
FluxionBash scriptSpecializes in phishing Wi-Fi passwords via Evil Twin + a captive portal
eaphammerPythonStrong at evil-twin attacks aimed at enterprise (WPA-Enterprise / 802.1X)
▸ Bottom line — "the fake AP is the base, the attack is the modules"

WiFiPumpkin3's value is that, instead of hand-rolling hostapd + dnsmasq + a phishing page, you can assemble a fake AP together with captive-portal phishing, sniffing, and DNS spoofing from a single console. Where airgeddon / Fluxion are menu-driven, this is a Python framework with plugins that's easy to extend. The point of learning it is that knowing the "attack steps" makes the defenses (WPA3, VPN, never entering a password into a web page, WIPS) click into place. Always run it only on your own kit, within an authorized scope, or in an isolated lab.

𝕏 Post B! Hatena