airgorah
基于 aircrack-ng 的 Rust 版 WiFi 安全审计 GUI 工具,支持网络扫描、去认证攻击、握手捕获与字典破解
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于 aircrack-ng 的 Rust 版 WiFi 安全审计 GUI 工具,支持网络扫描、去认证攻击、握手捕获与字典破解
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

想象一下这个场景:你是一家企业的安全工程师,每季度需要对全公司 WiFi 网络做一次安全审计。传统方式是打开 Kali Linux,打开终端,输入一串复杂的 aircrack-ng 命令——airmon-ng start wlan0、airodump-ng wlan0mon、aireplay-ng……参数繁多,界面枯燥,稍有不慎还容易搞错网卡。
现在,有了一个更优雅的方案:Airgorah。
它用 Rust 编写,核心依赖 aircrack-ng 工具套件,但把所有操作封装成了一张清晰直观的 GTK4 图形界面。发现网络、查看连接设备、发送去认证攻击、捕获握手包、跑字典破解——你只需要点几下鼠标,结果一目了然。

WiFi 网络是企业内网的第一道入口,也是最容易被忽视的攻击面。WEP 早已被证明不安全,但 WPA/WPA2 握手包依然可以通过暴力字典或社会工程学手段被破解。WPA3 虽然引入了 SAE 握手协议,提供了更强的离线攻击防护,但现实中大量网络仍运行在 WPA2 模式下。
在这个背景下,aircrack-ng 是 Kali Linux 圈公认的无线安全审计"瑞士军刀"。但它的命令行交互方式对新手不够友好——每个子工具都有独立的参数体系,输出信息密度高,缺乏上下文关联。
Airgorah 的作者 Martin Olivier 想要解决这个问题:能不能把 aircrack-ng 的强大能力,装进一个现代化的 GTK4 GUI 里,让操作直观到"所见即所得"?
答案就是 Airgorah。
Airgorah 的工作流分五个阶段,清晰对应渗透测试的标准步骤:
1. 接口扫描与选择
启动后自动检测系统中的无线网卡,列出所有支持 monitor mode 的设备。选择目标网卡后,一键切换到监听模式。整个过程无需记忆 airmon-ng 的命令语法。
2. 周围网络发现
自动扫描周围 SSID,实时展示 BSSID、频道、信号强度、加密方式和已连接客户端数量。你可以在列表中打勾选择多个目标,同时监控多个网络。
3. 客户端识别
展开任意网络节点,可以看到当前连接到这个 AP 的所有设备 MAC 地址和厂商信息。这对于判断网络活跃程度、定位可疑设备非常有价值。
4. 去认证攻击(Deauth Attack)
这是最有争议也最有价值的一步。Airgorah 可以在目标网络的所有设备上发送"强制下线"数据包,迫使它们重新认证——在这个瞬间,设备会重新发送握手包。如果你的密码字典里有对应密码,就能在本地完成离线破解,而不需要等待有人主动连接。
去认证可以针对整个网络,也可以精确打击某个特定设备,避免对无关设备造成干扰。
5. 握手包捕获与密码破解
Airgorah 实时监控目标网络,当捕捉到完整的 WPA/WPA2 握手包后自动告警。拿到握手包后,可以直接导入内置的密码字典(支持 rockyou.txt 等主流字典),在本地发起暴力破解。
整个过程全程图形化:你不需要记住 aircrack-ng -w dict.txt -b XX:XX:XX:XX:XX:XX handshake.cap 这条命令。
Airgorah 采用 Rust 语言开发,这是一个值得称道的选择。无线安全工具通常用 C/Python 编写,但 C 的内存安全问题(如缓冲区溢出)是渗透工具的长期隐患;Python 虽然灵活,但运行时性能不足,GUI 能力也有限。
Rust 在内存安全性和运行效率上找到了平衡——零成本抽象、无垃圾回收、并行友好,让 Airgorah 在处理大量无线数据包时依然流畅。
项目结构采用 Rust Workspace 模式,分为三个核心 crate:
| Crate | 职责 |
|---|---|
crates/agent | 特权守护进程,处理需要 root 权限的操作(monitor mode、注入包),通过 polkit 提权运行 |
crates/gui | GTK4 前端,包含网络扫描、客户端列表、去认证、握手捕获、密码破解等全流程 UI |
crates/common | 共享类型定义、IPC 通信协议、握手包处理逻辑 |
这种架构设计有一个精妙之处:GUI 和特权操作彻底分离。主程序以普通用户身份运行,只有真正需要权限的操作(如创建 monitor mode 接口、发送 raw socket 数据包)才通过 IPC 调用 airgorah-agent 守护进程,并通过 polkit 弹窗认证一次。这比传统工具全程以 root 运行要安全得多。
在描述 Airgorah 的强大之前,有必要先说清楚它的严格限制:
Airgorah 获得了 1000+ GitHub stars,在 Threads、Instagram 和 Facebook 上都有安全博主的推荐。它的出现标志着无线安全工具正在从"极客专属"向"工程师标配"演进。
类似的趋势也出现在其他安全领域:Burp Suite 的图形化界面让它比纯命令行工具更普及;Metasploit 早期的命令行版本到现在的 Pro/GUI 双版本演进……专业能力的普及化,往往是安全意识提升的重要推手。
对于安全研究者,Airgorah 是 aircrack-ng 的高效快捷启动器;对于CTF 选手,它是无线 Misc 题目的得力助手;对于企业安全工程师,它是定期 WiFi 审计的合规工具。
Airgorah 已发布到 crates.io,Arch Linux 用户可直接从 AUR 安装,Debian/Ubuntu 用户可通过 PPA 添加仓库。
核心依赖需要提前安装:aircrack-ng、wireshark-common(提供 tshark)、mdk4、polkit。构建需要 Rust 工具链(1.94+)和 GTK4 开发库。
cargo install airgorah
airgorah # 启动 GUI
首次运行时,polkit 会弹窗要求认证一次,为 airgorah-agent 授予必要权限。之后的扫描、攻击操作在同一会话内无需重复认证。
本文基于 GitHub 最新源码(v0.8.1)编写,数据来源:GitHub API + 官方 Wiki + crates.io 版本记录。