Ragnt/AngryOxide

GitHub: Ragnt/AngryOxide

一款Rust开发的802.11攻击工具,可自动化捕获EAPOL握手包和PMKID用于WiFi密码破解。

Stars: 1818 | Forks: 113

# AngryOxide 😡 ![Logo](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/4567cd1c02151411.png) ### 802.11 攻击工具,使用 Rust 🦀 开发! [![Builds and Release](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/acfe586322151413.svg)](https://github.com/Ragnt/AngryOxide/actions/workflows/ci.yml) ![GitHub commit activity](https://img.shields.io/github/commit-activity/m/Ragnt/AngryOxide) [![Discord](https://img.shields.io/discord/1194365883099922643)](https://discord.gg/QsEgaFndsQ) **此工具仅用于研究目的。对于您在使用 AngryOxide 时所做的任何事情或造成的任何损害,我概不负责。仅用于您有权限的网络。** AngryOxide 的开发初衷是同时学习 Rust、netlink、内核套接字和 WiFi 攻击技术。 您可以在[用户指南](https://github.com/Ragnt/AngryOxide/wiki/1.-User-Guide)中找到如何使用 AngryOxide 的信息。 注意:此项目正在积极开发中,您可以期待非常快速的发布周期。 该工具的总体目标是提供单一界面的探测能力,并配备高级自动化攻击功能,最终生成可使用 [Hashcat](https://hashcat.net/hashcat/) 破解的有效哈希行。 该工具深受 [hcxdumptool](https://github.com/ZerBea/hcxdumptool) 的启发,如果没有 ZerBea 的帮助,开发工作不可能完成。 如果您有任何问题或遇到问题,可以在 [AngryOxide Discord](https://discord.gg/QsEgaFndsQ) 上联系我。 ## 我想使用它! 您可以在 [releases](https://github.com/Ragnt/AngryOxide/releases/latest) 下载 AngryOxide 的预编译二进制文件。 ``` tar -xf angryoxide-linux-x86_64.tar.gz # Untar chmod +x install.sh # Make executable sudo ./install.sh # Install (as root, including zsh/bash completions) ``` 您可以在[用户指南](https://github.com/Ragnt/AngryOxide/wiki/1.-User-Guide)中找到如何使用 AngryOxide 的信息。 #### 卸载: ``` sudo ./install.sh uninstall # Uninstall ``` ## 功能 - 基于主动状态的攻击引擎,用于从接入点和客户端获取相关的 EAPOL 消息。 - 目标选项,接受 MAC(aabbcc...、aa:bb:cc...)和 SSID "Test_SSID" 以限制攻击范围。 - 白名单选项,用于保护特定网络免受攻击。在不使用目标时很有用。 - 自动搜索功能,可查找所有目标频道并在它们之间切换。 - 终端用户界面,在终端中呈现所有相关数据,便于通过 SSH 远程使用。 - 可 grep 的"无头"操作模式,仅打印状态输出,可重定向到日志文件。 - 限制可能导致认证序列弊大于利的去认证帧。 - 使用 Nonce 校正、重放计数器验证和时间验证进行 EAPOL 四次握手验证。 - 自动从可用的接入点获取 PMKID。 - 利用 GPSD,支持设置远程 GPSD 服务地址。 - 支持启用地理围栏,强制 AngryOxide 仅在由纬度、经度和半径指定的几何区域内运行。 - 提供嵌入 GPS 的 pcapng 文件,使用 [Kismet](https://www.kismetwireless.net/docs/dev/pcapng_gps/) 格式。 - 提供包含所有帧(带 GPS)的 kismetdb 文件,用于后处理。 - 将所有输出文件打包成 gzip 压缩的 tarball。 - 提供 Bash 自动补全功能,方便选择接口。 ## 攻击方式 默认情况下会攻击范围内的所有接入点,除非提供了至少一个目标,此时工具仅针对定义的目标进行传输(但仍会被动收集其他接入点的数据)。 - 尝试认证/关联序列以生成 EAPOL 消息 1(PMKID 收集) - 尝试通过直接探测请求获取隐藏 SSID。 - 使用匿名重新关联强制接入点对其自身客户端进行去认证(MFP 绕过) - 尝试发送频道切换公告,将客户端发送到相邻频道。 - 尝试将 RSN 模式降级为 WPA2-CCMP(通过 RogueM2 进行探测响应注入) - 尝试仅根据探测请求从客户端收集 EAPOL M2(RogueM2) - 尝试使用 WiFi 6e 代码解除客户端关联,以防止黑名单 - 所有攻击均可手动禁用。 所有这些攻击都经过速率控制,既可以防止错误的 EAPOL 计时器重置,又可以维持一定的操作安全等级。 ## 帮助 ``` ❯ angryoxide --help Does awesome things... with wifi. Usage: angryoxide [OPTIONS] --interface Options: -i, --interface Interface to use -c, --channel Optional - Channel to scan. Will use "-c 1,6,11" if none specified -b, --band <2 | 5 | 6 | 60> Optional - Entire band to scan - will include all channels interface can support -o, --output Optional - Output filename -h, --help Print help -V, --version Print version Targeting: -t, --target-entry Optional - Target (MAC or SSID) to attack - will attack everything if none specified -w, --whitelist-entry Optional - Whitelist (MAC or SSID) to NOT attack --targetlist Optional - File to load target entries from --whitelist Optional - File to load whitelist entries from Advanced Options: -r, --rate Optional - Attack rate (1, 2, 3 || 3 is most aggressive) [default: 2] --combine Optional - Combine all hc22000 files into one large file for bulk processing --active Optional - Use Active Monitor mode - WARNING, may cause bugs. --rogue Optional - Tx MAC for rogue-based attacks - will randomize if excluded --gpsd Optional - Alter default HOST:Port for GPSD connection [default: 127.0.0.1:2947] --autohunt Optional - AO will auto-hunt all channels then lock in on the ones targets are on --headless Optional - Set the tool to headless mode without a UI. (useful with --autoexit) --autoexit Optional - AO will auto-exit when all targets have a valid hashline --notransmit Optional - Do not transmit - passive only --notar Optional - Do not tar output files --disablemouse Optional - Disable mouse capture (scroll wheel) --dwell Optional - Adjust channel hop dwell time [default: 2] Geofencing: --geofence Optional - Enable geofencing using a specified latlng and distance --center
Lat,Lng for geofencing (required if geofence is enabled) --distance Distance in meters from the center (required if geofence is enabled) --geofence-timeout Timeout to disable geofence if GPS is lost. (default 300 seconds) [default: 300] Attacks: --disable-deauth Optional - Do NOT send deauthentication attacks --disable-pmkid Optional - Do NOT attempt to associate for PMKID --disable-anon Optional - Do NOT send anonymous reassociation attacks --disable-csa Optional - Do NOT send Channel Switch Announcment attacks --disable-disassoc Optional - Do NOT send disassociation attacks --disable-roguem2 Optional - Do NOT attempt rogue M2 collection ``` ## 从源码构建 如果您想从源码构建而不是使用预编译的二进制文件,以下是基本说明: ``` # 安装 Rust curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # 克隆此仓库 git clone --recurse-submodules https://github.com/Ragnt/AngryOxide.git # 构建/安装 cd AngryOxide make sudo make install ``` 这将从源码构建,安装到 /usr/bin/angryoxide,并为您安装 bash 自动补全功能。 ### 交叉编译: 我使用 [cross](https://github.com/cross-rs/cross) 进行嵌入式架构的交叉编译。 以 MIPS(mips-unknown-linux-musl)为例。 ``` # 确保已安装 nightly rustup install nightly # 动态链接 & 软浮点 cross build +nightly --target mips-unknown-linux-musl --release -Zbuild-std ``` ### 补全脚本: 这些脚本使在 bash 和 zsh 中使用 AngryOxide 更加流畅,自动为您查找无线接口,并以标签可补全的方式显示参数。 ## 截图! ![访问点页面](https://raw.githubusercontent.com/Ragnt/AngryOxide/master/screenshots/ap_tab.png) ![握手包页面](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/c6124fbf05151444.png)
标签:802.11, Bitdefender, DOS头擦除, EAPOL, Hashcat, PMKID, Rust, WiFi安全, WPA, WPA2, WPA3, 可视化界面, 密码破解, 握手包, 攻击路径可视化, 无线渗透测试, 无线网络, 网络安全, 网络工具, 网络流量审计, 通知系统, 防御绕过, 降级攻击, 隐私保护, 黑客工具