提到无线协议研究和 WiFi 抓包,大多数嵌入式工程师的第一反应是笔记本插一块支持 monitor mode 的 USB 网卡,开 Wireshark 或 Kismet。这很正常。
但如果你最近翻过 GitHub 上 ESP32 方向的 trending,会发现一个不太合常理的项目——一颗 ESP32 加一块小屏幕,就把 WiFi 嗅探、蓝牙嗅探、协议分析全做成了一台掌上设备。这个项目叫 ESP32 Marauder,目前 10.8k Star、1.2k Fork、167 个 Release,是 ESP32 平台上无线安全研究方向被讨论得最多的开源工程之一。
项目是什么
ESP32 Marauder(直译"ESP32 掠夺者")是一套基于 ESP32 平台的 WiFi/蓝牙 协议研究固件,作者是 GitHub 用户 justcallmekoko。项目从 2019 年开源至今,从最初几个 SSID 嗅探 demo,发展到现在覆盖了 2.4 GHz 频段几乎所有常见无线协议的扫描、嗅探和分析能力。
基本信息(数据来源:GitHub 官方仓库,2026 年 5 月):
- Star:约 10.8k
- License:GPL v3
- 语言占比:C++ 77.2%,C 21.4%
- 支持平台:ESP32 / ESP32-S2 / ESP32-C5
- 最新版本:v1.12.1(2026-05-05 发布)
- Wiki 页面:159 篇
它的核心定位写在 README 第一句:"A suite of WiFi/Bluetooth offensive and defensive tools for the ESP32"——既包含主动扫描、抓包、监控这类研究/防御性能力,也有 deauth、beacon spam、evil portal 这类攻击型功能。这种"双刃剑"属性是它被讨论得最多、也最需要在使用前讲清楚边界的原因。
它凭什么能在 ESP32 上做到这些
ESP32 这颗芯片能扛起整套无线协议分析,关键在于 WiFi 子系统对 混杂模式(monitor mode) 提供了底层 API。
普通 WiFi 模块只能收发"发给自己"的数据帧。但 ESP32 通过 esp_wifi_set_promiscuous(true) 可以开启混杂模式,再注册一个 esp_wifi_set_promiscuous_rx_cb() 回调,就能拿到当前信道上所有的 802.11 原始帧——包括 beacon、probe request、deauth 这些管理帧。这就是 Wireshark + USB 网卡所做的事情,只不过 ESP32 把它压缩到了一颗十几块钱的芯片上。
反方向,ESP32 也支持构造任意 802.11 帧并通过 esp_wifi_80211_tx() 发出去。Marauder 用这一点实现 beacon spam、probe flood、deauth flood——本质上就是按 IEEE 802.11 规范在程序里手搓帧头、填字段、丢到射频。
蓝牙这边逻辑类似。ESP32 上挂着 NimBLE 和 ESP-IDF 蓝牙协议栈,可以做 BLE 广播包嗅探、扫描,也可以伪造特定厂商的广播包(Apple Continuity、Samsung Pair 等)。Airtag 嗅探、信用卡 skimmer 检测,都建立在 BLE 广播分析之上。
工程上还有一个聪明的设计:双核 ESP32,一个核处理射频中断和帧捕获,另一个核处理 UI、SD 卡日志、GPS NMEA 解析。这样在持续抓包时,前端显示和落盘不会被射频中断打断——这恰好是单核 MCU 做协议分析的天花板。
核心功能拆解
Wiki 里 159 页内容,按主线归类大致是四块:
1. WiFi 嗅探与分析(研究/防御为主)

Scan APs、Scan Stations、Probe Request Sniff、Beacon Sniff、Deauth Sniff、Packet Monitor、Channel Analyzer、EAPOL PMKID Scan……
其中 Packet Monitor 直接在 TFT 屏上画当前信道的 packet rate 曲线,像一个微型频谱仪。Deauth Sniff 注意是"检测他人发起的 deauth 攻击"——只接收解析、不发包,属于纯防御能力。
Wardrive 是另一个挺工程的模块:把 ESP32 装上 GPS,开车扫一圈,固件会把扫到的 AP 和经纬度存到 SD 卡,输出标准 Wigle 格式 CSV,可以直接导入 wigle.net 做无线热力图。
2. 蓝牙嗅探与监控
除了常规 BLE 设备扫描,这里有几个挺现实的功能: 
- Airtag Sniff / Monitor:发现附近的 Apple AirTag 广播,提示是否被未知 Airtag 跟踪
- Detect Card Skimmers:识别加油站、ATM 等地被偷装的蓝牙信用卡 skimmer 设备
- Flock Sniff / Wardrive:检测美国常见的 Flock Safety 车牌识别摄像头(反监控研究方向)
- Bluetooth Wardrive:和 WiFi Wardrive 一样的玩法,但跑在 BLE 频段
特别提一下 Card Skimmer 检测——这功能在国外社区被反复推荐,因为蓝牙刷卡器越来越多用 HC-05 这类常见模块,特征明显,Marauder 直接列了出来。
3. CLI / Headless 模式(嵌入式工程师最该关注的部分)
整套功能都有命令行版本。在 Marauder Settings 里开启 EnableHeadlessMode,通过 USB 串口就能直接跑:
sniffbeacon # 启动 beacon 嗅探
scanap -t 30 # 扫描 AP,30 秒
scansta # 扫描 station(已连接客户端)
list -a # 列出已发现的 AP
select -a 0 1 2 # 选中第 0/1/2 个 AP
save -a # 保存到 SD 卡
sigmon # 信号强度监控
这一段是 Marauder 在"正经场景"里最容易落地的方式——你可以把它当成一个无头无线协议探针塞进自己的项目里。比如做一个企业无线环境的合规巡检小盒子,定期扫描自家办公区域有没有未授权 AP、有没有蓝牙 skimmer 异常出现,自动落盘上报。把 GUI 砍掉、留 CLI,整个设备就回到了纯工业用途。
4. 攻击向功能(必须先看下一节再决定要不要碰)

Deauth Flood、Beacon Spam、Probe Flood、Evil Portal(钓鱼热点)、AP Clone Spam、Karma、Sour Apple(Apple BLE 弹窗轰炸)……
这些功能 wiki 里都有完整工作流,但工程上的注意事项稍后会说——简单一句:" 这些功能在中国大陆几乎全部对应法律风险,不要在自己拥有权之外的网络上跑。 "
上手快速入门
入门门槛在 ESP32 项目里算相对低的,官方做了三条路径:
路径 A:现成硬件
作者卖一款叫 Marauder v8 的官方板,开盒即用,但价格不低(90–150 USD 一台),主要面向国外社区。
路径 B:DIY 通用 ESP32 + TFT
仓库里一连串 User_Setup_*.h 文件就是给 DIY 玩家用的。常见适配清单:
- ESP32 + ILI9341 2.8 寸 TFT
- M5Stick C / C Plus2
- M5Cardputer(带键盘)
- CYD(Cheap Yellow Display,国内淘宝 30–50 元那种 ESP32+触屏一体板)
- ESP32-S2 / ESP32-C5 DevKit
- Flipper Zero(作为 ESP32 模块插上去)
挑一个手头有的板子,对应的 User_Setup_*.h 改一下 TFT_eSPI 的引脚定义,就能编译。
路径 C:Web Flash(最快)
打开作者的 MarauderOTA 页面,浏览器直连 ESP32 USB 串口,按板型选 bin 文件,一键烧录。背后用的是 ESP Web Tools——这个方案对没装过 esptool 的新人特别友好。
烧完后第一次开机,TFT 上会出现 Marauder 的骷髅 logo 和主菜单(WiFi / Bluetooth / Device)。如果你接了 SD 卡和 GPS,状态栏会显示对应图标。
选型建议:和谁比,比什么
ESP32 上做无线协议研究,开源选项不止 Marauder 一个:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
一句话区分:如果你是做嵌入式而不是专门做安全,关注点应该落在 Marauder 的 CLI/Headless 模式——把它当成"一个会自己抓包、自己存盘的协议探针",比当成玩具更有价值。
局限性:必须讲清楚的几条

ESP32 Marauder 在国内嵌入式社区不算"普及度高",原因主要在三点:
1. 法律合规边界(最关键)
deauth、beacon spam、evil portal、AP clone、Karma 等功能在中国大陆使用时,几乎全部触及法律红线,对应法规至少有:
- 《刑法》第 285、286、287 条(非法侵入计算机信息系统罪、破坏计算机信息系统罪、提供侵入工具罪)
- 《无线电管理条例》(对干扰他人正常无线电业务的处罚)
- 《网络安全法》《数据安全法》(对未授权扫描、嗅探他人网络的限制)
哪怕在自己家或自己实验室,针对任何不属于你管理权限的设备做 deauth、伪造 AP 钓鱼,都可能构成违法。这里没有"我只是试试"的灰区。
一句话原则:只在你拥有所有权或获得书面授权的网络里玩。家用路由器、自己的实验设备、公司内部安全演练(且有授权文件)——这些是边界以内;其余都不是。
2. 硬件能力局限
- ESP32 原生只支持 2.4 GHz,不能抓 5 GHz(ESP32-C5 支持双频,但目前仅适配部分功能)
- 不支持 WPA3 SAE 的完整解析,只能做协议级嗅探
- 长时间抓包不如 USB 高速网卡完整,偶有掉帧
- BLE 嗅探只覆盖广播信道(37/38/39),不能跟踪已配对设备的跳频数据
3. 项目维护偏作者驱动
主仓库基本由 justcallmekoko 一人推进,目前 233 个 issue、30 个 PR。社区有 Discord 和 Gitter,但响应速度和长期路线图都依赖作者节奏。
Q&A
Q:我能用它扫描公司 WiFi 排查问题吗?
A:在公司明确授权下可以,作为内部安全演练或巡检工具是合规用法。无授权时即使只是"看看",被发现也属于越权扫描。
Q:可以做家用 WiFi 设备清单巡检吗?
A:扫描自己路由器的 SSID 和已连接 station 完全合法。Marauder 的 Wardrive、Scan APs、Scan Stations 这类被动嗅探用于自家网络监控没问题。
Q:ESP32-C5 适配得如何?
A:官方已经加了 ESP32-C5 DevKitC-1 的适配页(wiki 有专门一节),能跑双频扫描的部分功能,但完整功能集目前仍以 ESP32 原版为主。
Q:和 Flipper Zero 是什么关系?
A:Marauder 可以作为 ESP32 模块插在 Flipper Zero 上,由 Flipper 提供按键和屏幕、ESP32 跑 Marauder 固件。两者互补,不互斥。
获取方式
官方仓库:https://github.com/justcallmekoko/ESP32Marauder
项目 Wiki(含完整命令列表、硬件适配、工作流示例):https://github.com/justcallmekoko/ESP32Marauder/wiki
Web 烧录工具(MarauderOTA):https://justcallmekoko.github.io/MarauderOTA/
结尾
你有没有在 ESP32 上做过类似的无线协议研究?用了什么硬件、跑在什么场景?欢迎在评论区聊聊。如果你身边正好有人在玩 Flipper Zero、M5Stick 或者 CYD,把这篇转给他们——「单片机那点事」,聊的都是这些把"大设备的能力塞进一颗 MCU"的开源项目。
