项目概述

【免费下载链接】esp32-wifi-penetration-tool Exploring possibilities of ESP32 platform to attack on nearby Wi-Fi networks. 【免费下载链接】esp32-wifi-penetration-tool 项目地址: https://gitcode.com/gh_mirrors/es/esp32-wifi-penetration-tool

ESP32 Wi-Fi渗透工具是一个基于ESP32平台的通用Wi-Fi网络分析工具,提供了常见的Wi-Fi网络测试功能实现。该项目集成了多种Wi-Fi网络技术,包括PMKID捕获、WPA/WPA2握手包捕获、网络连接测试、服务压力测试等,并提供了PCAP和HCCAPX格式的输出功能。

项目目录结构

esp32-wifi-penetration-tool/
├── CMakeLists.txt          # 项目构建配置文件
├── LICENSE                 # MIT许可证文件
├── README.md               # 项目主说明文档
├── sdkconfig.defaults      # 默认SDK配置
├── components/             # 项目组件目录
│   ├── frame_analyzer/     # 帧分析器组件
│   ├── hccapx_serializer/  # HCCAPX序列化组件
│   ├── pcap_serializer/    # PCAP序列化组件
│   ├── webserver/          # Web服务器组件
│   ├── wifi_controller/    # Wi-Fi控制器组件
│   └── wsl_bypasser/       # Wi-Fi堆栈库绕过组件
├── doc/                    # 文档目录
│   ├── ATTACKS_THEORY.md   # 网络技术理论文档
│   ├── drawio/             # 技术图解文件
│   └── images/             # 图片资源
└── main/                   # 主程序目录
    ├── attack.c            # 网络测试实现文件
    ├── attack_dos.c        # 服务压力测试
    ├── attack_handshake.c  # 握手包捕获测试
    └── attack_pmkid.c      # PMKID捕获测试

核心功能特性

测试功能

  • PMKID捕获:从WPA/WPA2网络中获取PMKID信息用于分析
  • 握手包捕获:捕获完整的WPA/WPA2四次握手过程
  • 连接测试:测试网络连接稳定性
  • 服务压力测试:对目标网络进行负载测试
  • 被动嗅探:监听网络流量用于分析

数据格式支持

  • PCAP格式:将捕获的流量转换为标准的PCAP文件格式
  • HCCAPX格式:生成兼容分析工具的HCCAPX格式文件
  • 实时解析:对捕获的帧进行实时分析和解析

管理功能

  • 管理AP:自动启动管理接入点用于配置
  • Web界面:通过Web客户端进行配置和控制
  • 可扩展框架:支持新测试方法的快速实现

硬件要求

该项目主要基于ESP32-DEVKITC-32E开发板进行开发和测试,但也兼容任何采用ESP32-WROOM-32模块的设备。

硬件组件示意图

典型硬件配置包括:

  • ESP32-DEVKITC-32E开发板
  • 220mAh 3.7V锂电池
  • MCP1702-3302ET 3.3V降压稳压器

小型化硬件方案 便携式设计

使用流程

1. 构建项目

使用ESP-IDF 4.1进行项目构建:

idf.py build

2. 烧录固件

使用esptool.py工具烧录:

esptool.py -p /dev/ttyS5 -b 115200 --after hard_reset write_flash \
--flash_mode dio --flash_freq 40m --flash_size detect \
0x8000 build/partition_table/partition-table.bin \
0x1000 build/bootloader/bootloader.bin \
0x10000 build/esp32-wifi-penetration-tool.bin

3. 启动使用

  1. 给ESP32上电
  2. 自动启动管理AP(默认SSID: ManagementAP, 密码: mgmtadmin
  3. 连接到管理AP
  4. 在浏览器中打开 192.168.4.1

Web客户端界面

技术原理

WPA/WPA2握手过程

WPA/WPA2握手过程涉及四个EAPoL-Key消息的交换,用于协商PTK(Pairwise Transient Key)。通过捕获这些握手消息,可以获取分析网络参数所需的信息。

WPA握手序列图

密钥层次结构

WPA/WPA2-PSK使用层次化的密钥结构,其中PSK(Pre-Shared Key)由网络密码(passphrase)和SSID通过PBKDF2算法生成。

WPA密钥层次结构

网络连接测试

网络连接测试通过发送特定的网络帧来测试网络连接状态和稳定性。

网络连接测试帧格式

MIC计算验证

MIC(Message Integrity Code)用于验证EAPoL消息的完整性,可以通过算法验证来确认网络参数的正确性。

MIC计算过程

组件架构

主要组件

  • Main组件:项目入口点,负责初始化和启动管理AP
  • Wifi Controller组件:封装所有Wi-Fi相关操作
  • Webserver组件:提供Web配置界面
  • Frame Analyzer组件:处理和分析捕获的帧
  • PCAP Serializer组件:将帧序列化为PCAP格式
  • HCCAPX Serializer组件:生成HCCAPX格式输出

功耗特性

根据实验测量,ESP32在执行测试时的功耗约为100mA,配合小型锂电池可以实现便携式部署。

安全声明

本项目主要用于教育目的,演示Wi-Fi网络和802.11标准中的技术原理。请在获得明确授权的情况下使用这些工具,仅对您拥有权限的网络进行测试。

许可证

本项目采用MIT许可证,鼓励分享和改进代码。详细许可证条款请参阅LICENSE文件。

【免费下载链接】esp32-wifi-penetration-tool Exploring possibilities of ESP32 platform to attack on nearby Wi-Fi networks. 【免费下载链接】esp32-wifi-penetration-tool 项目地址: https://gitcode.com/gh_mirrors/es/esp32-wifi-penetration-tool

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐