samdenty/Wi-PWN
GitHub: samdenty/Wi-PWN
基于 ESP8266 的 WiFi 去认证攻击固件,用于无线网络安全测试与审计。
Stars: 1716 | Forks: 326
Wi-PWN
Sponsor this project
ESP8266 firmware for performing deauthentication attacks, with ease.
###
|
|
### 方法 1:使用 NodeMCU-Flasher 刷写
1. [下载](https://github.com/samdenty99/Wi-PWN/releases/latest) 当前版本的 Wi-PWN
2. 使用 [nodemcu-flasher](https://github.com/nodemcu/nodemcu-flasher/raw/master/Win64/Release/ESP8266Flasher.exe) 上传 `.bin` 文件。或者您也可以使用 espressif 提供的官方 [esptool](https://github.com/espressif/esptool)。
3. 连接您的 ESP8266(确保已安装驱动程序)并打开 *NodeMCU Flasher*
4. 转到 `Advanced`(高级)选项卡,为您的主板选择正确的值。
5. 导航到 `config`(配置)选项卡,并点击第一个条目的齿轮图标。
6. 浏览找到您刚刚下载的 `.bin` 文件并点击打开。
7. 切换回 `Operation`(操作)选项卡并点击 Flash(F)。
### 方法 2:使用 Arduino 编译
1. [下载此项目的源代码](https://github.com/samdenty99/Wi-PWN/archive/master.zip)。
2. 安装 [Arduino](https://www.arduino.cc/en/Main/Software) 并打开它。
3. 转到 `File`(文件) > `Preferences`(首选项)
4. 将 `http://arduino.esp8266.com/stable/package_esp8266com_index.json` 添加到 *Additional Boards Manager URLs*(附加开发板管理器网址)。(参考 [https://github.com/esp8266/Arduino](https://github.com/esp8266/Arduino))
5. 转到 `Tools`(工具) > `Board`(开发板) > `Boards Manager`(开发板管理器)
6. 输入 `esp8266`
7. 选择版本 `2.0.0` 并点击 `Install`(安装)(**必须是 2.0.0 版本!**) 8. 转到 `File`(文件) > `Preferences`(首选项) 9. 打开 `More preferences can be edited directly in the file`(可以直接在文件中编辑更多首选项)下的文件夹路径
 10. 进入 `packages` > `esp8266` > `hardware` > `esp8266` > `2.0.0` > `tools` > `sdk` > `include` 11. 使用文本编辑器打开 `user_interface.h` 12. 在最后一行 `#endif` 之前,添加以下内容: ``` typedef void (*freedom_outside_cb_t)(uint8 status); int wifi_register_send_pkt_freedom_cb(freedom_outside_cb_t cb); void wifi_unregister_send_pkt_freedom_cb(void); int wifi_send_pkt_freedom(uint8 *buf, int len, bool sys_seq); ```  13. 进入此项目的 [arduino/SDK_fix](https://github.com/samdenty99/Wi-PWN/arduino/SDK_fix) 文件夹 14. 将 `ESP8266Wi-Fi.cpp` 和 `ESP8266Wi-Fi.h` 复制到 `C:\Users\%username%\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src` 15. 在 Arduino 中打开 `arduino/Wi-PWN/Wi-PWN.ino` 16. 在 `Tools`(工具) > `Board`(开发板) 选择您的 ESP8266 开发板,并在 `Tools`(工具) > `Port`(端口) 选择正确的端口 **如果没有显示端口,您需要重新安装驱动程序**,在网上搜索芯片型号 + 'driver Windows' 17. 根据您的主板,您可能需要调整 `Tools`(工具) > `Board`(开发板) > `Flash Frequency`(闪存频率)和 `Tools`(工具) > `Board`(开发板) > `Flash Size`(闪存大小)。我使用的是 `80MHz` Flash Frequency,以及 `4M (1M SPIFFS)` Flash Size 18. 上传! CTRL-U **注意:** 如果您使用的是 512kb 版本的 ESP8266,您需要在 `data.h` 中注释掉 mac 供应商列表的一部分 ## 如何使用 1. 将您的 ESP8266 连接到 USB 电源(您可以使用 OTG 线通过手机供电) 2. 在您的设备上扫描 Wi-Fi 网络并连接到 `Wi-PWN`(默认无密码)。 3. 连接后,打开浏览器并访问 `http://192.168.4.1` 4. 点击 ACCEPT(接受)以接受条款和条件
 5. 指定 Wi-PWN 使用的 SSID 和密码,然后点击 CONTINUE(继续)
 6. 使用您在上一步中指定的 SSID 和密码重新连接到新网络。 7. 返回浏览器,页面应该会重新加载(如果页面没有重新加载,请再次打开 `http://192.168.4.1`)
8. 点击 Scan(扫描)按钮扫描 Wi-Fi 网络

**注意:您可能需要重新连接到 Wi-Fi 网络。** 9. 选择您想要进行攻击的 WiFi 网络。完成后,点击 Attack(攻击)按钮 10. 选择您希望执行的攻击

## 常见问题 #### 只能在某些设备上连接到 Wi-Fi 网络 这是由于信道冲突造成的。只需在能够连接到 Wi-Fi 网络的设备上访问 `192.168.4.1/settings.html`,并将**通道号**从 `1` 更改为直到 `14` 的任何数字。 #### 上传时出现 `espcomm_sync failed` / `espcomm_open` ESP 上传工具无法与芯片通信。 - 使用不同的 USB 端口和线缆重新连接芯片。 - 安装 USB 驱动程序(cp2102 或 ch340)。 - 确保选择了正确的 COM 端口。 #### SSID 无法加载?(没有清除按钮) 尝试在连接到您的 ESP 时访问 `192.168.4.1/clearSSID.json` 来重置 SSID 列表。 如果这不能解决您的问题,请在 [official discord](
标签:802.11, Arduino, Deauth攻击, ESP8266, IoT安全, IPv6支持, Material Design, PE加载, UML, WiFi安全, Wi-PWN, 去认证攻击, 固件, 客户端加密, 客户端加密, 嵌入式系统, 拒绝服务, 攻击路径可视化, 无线攻击, 渗透工具, 网络安全, 网络攻防, 隐私保护, 黑客工具