evilsocket/pwnagotchi

3/5 🧩 软硬件结合 已发布
evilsocket 9092 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5
evilsocket/pwnagotchi

项目简介

(⌐■_■) - Deep Reinforcement Learning instrumenting bettercap for WiFi pwning.


Pwnagotchi 是一个将强化学习与 WiFi 安全审计巧妙结合的开源项目。它本质上是一个基于 A2C(优势演员-评论家)算法的“AI”,运行在像 Raspberry Pi Zero W 这样的低成本硬件上,核心任务是利用 bettercap 框架,通过被动监听或主动发起认证与关联攻击,最大化捕获可被破解的 WPA 密钥材料。这些材料以 PCAP 文件形式保存,包含 hashcat 支持的各种握手包,如 PMKID、完整或半 WPA 握手。与传统强化学习模型在模拟器中玩游戏不同,Pwnagotchi 在真实世界中学习。它使用 LSTM 与 MLP 特征提取器作为策略网络,通过不断调整自身参数来适应周围的 WiFi 环境。时间对 Pwnagotchi 而言以“纪元”为单位,每个纪元持续数秒到数分钟,取决于可见的接入点和客户端数量。初期它的表现可能不佳,但随着在特定环境中探索参数组合,它会逐渐变得高效。该项目解决了在移动或固定场景下,自动化、智能化收集 WiFi 握手数据的问题,非常适合安全研究人员、渗透测试人员以及 WiFi 爱好者用于审计自身网络或进行教育学习。一个独特的功能是,多个 Pwnagotchi 设备在物理距离接近时,能通过基于 dot11 标准的寄生协议广播自定义信息元素进行“对话”,并学会协作,自动划分信道以实现最优的捕获效率。项目拥有活跃的社区,提供详细的文档、论坛和 Discord 服务器支持。

标签

项目特点

**强化学习驱动**:基于 A2C 算法,让设备在真实 WiFi 环境中自主学习最优攻击策略,而不是死板地执行固定脚本。
**低成本硬件**:专门为 Raspberry Pi Zero W 这类廉价、低功耗的单板电脑设计,整机成本很低。
**被动与主动结合**:既能被动监听空中的握手包,也能主动发起去认证和关联攻击,最大化捕获 WPA 密钥材料的机会。
**数据格式友好**:捕获的数据直接保存为 PCAP 文件,兼容 hashcat 等主流密码破解工具,方便后续离线分析。
**可扩展与社区活跃**:支持插件系统,社区贡献了大量 UI 主题、显示配置和功能扩展,玩法多样。
**全自动运行**:上电后自动启动,无需人工干预,像个“电子宠物”一样自己巡逻、学习、成长。

技术规格

核心算法 A2C(优势演员-评论家)强化学习
神经网络 LSTM + MLP 特征提取器作为策略网络
目标硬件 Raspberry Pi Zero W(推荐)、Raspberry Pi 3/4/5
操作系统 Raspberry Pi OS Lite(或其他基于 Debian 的 Linux)
依赖框架 bettercap(核心 WiFi 攻击框架)
输出格式 PCAP(包含 PMKID、完整/半 WPA 握手)
显示方式 可选 e-ink 显示屏(如 Waveshare 2.13寸)或 Web UI
电源要求 5V/2A(通过 micro USB 供电)
存储要求 至少 8GB microSD 卡

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
Raspberry Pi Zero W 1 推荐型号,也可用 Pi 3/4/5
microSD 卡(8GB+) 1 建议 Class 10 或以上
5V/2A micro USB 电源 1 或使用移动电源
Waveshare 2.13寸 e-ink 显示屏 1 用于显示状态,非必需
2.4GHz WiFi 天线 1 部分 Pi Zero W 需外接
3D 打印外壳 1 社区提供多种 STL 文件

能力画像

**记忆与知识检索**:3/5 — 需要理解 WiFi 协议、握手包结构、强化学习基础概念,但大部分知识可通过官方文档和社区帖子获取。
**动手与操作**:4/5 — 需要焊接排针、连接 e-ink 屏幕、组装外壳、烧录系统,硬件组装有一定动手门槛。
**编程与算法**:3/5 — 默认配置无需编程,但自定义插件、修改策略网络或调试 AI 行为需要 Python 和机器学习基础。
**设计与建模**:2/5 — 外壳设计有现成 STL 文件,除非想自己定制外观,否则不需要建模能力。
**实验与调试**:4/5 — 需要反复测试 WiFi 环境、调整 bettercap 参数、观察 AI 学习曲线,调试过程比较折腾。
**协作与分享**:3/5 — 社区活跃,可以分享自己的插件、主题或捕获的握手包,但项目本身偏个人使用。
**学习与研究**:5/5 — 非常适合学习强化学习在真实世界的应用、WiFi 安全原理、Linux 系统管理,研究价值很高。
**系统集成**:3/5 — 需要把 Raspberry Pi、e-ink 屏幕、电池、外壳等整合成一个可移动设备,有一定集成难度。

所需技能

基础 Linux 命令行操作(SSH、文件编辑、服务管理) 了解 WiFi 网络基本概念(SSID、BSSID、信道、握手过程) 熟悉 Python 编程(用于编写插件或修改 AI 逻辑) 硬件组装能力(焊接、接线、安装屏幕) 使用 Raspberry Pi Imager 烧录系统 基本的机器学习概念(强化学习、A2C、LSTM)

适用场景

学习强化学习在真实物理世界中的应用
研究 WiFi 安全审计和 WPA 握手捕获技术
作为低成本、便携式的 WiFi 网络侦察工具
黑客马拉松或安全竞赛中的演示项目
电子爱好者的 DIY 制作与学习项目
网络安全课程的教学实验平台