news 2026/10/21 11:13:55

wifit3 四向握手配对完全指南:把抓到的 EAPOL 帧变成可直接破解的 hc22000 哈希行

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
wifit3 四向握手配对完全指南:把抓到的 EAPOL 帧变成可直接破解的 hc22000 哈希行

wifit3 四向握手配对完全指南:把抓到的 EAPOL 帧变成可直接破解的 hc22000 哈希行

【免费下载链接】wifit3Wifite but USB-only & cross-platform.项目地址: https://gitcode.com/GitHub_Trending/wi/wifit3

wifit3 是 USB-only、跨平台(Linux / macOS / Windows)的无线审计工具,多数人卡住的不是抓不到 EAPOL 帧,而是把它们配成一条可用的 WPA 四向握手——抓了一屏帧却给不出一行 hc22000。下面把配对规则与边界讲透。

先看到结果:配对成功后 Focus 页会显示 Captured

在扫描页锁定目标 AP 进入 Focus。只要捕获期间有客户端重连(或经 deauth 推动后),顶部横幅会立刻亮起绿色Captured handshake ×1,日志区逐条记录 M1–M4 的到达,captures/目录同时写出一份.hc22000后缀的哈希行文件。

横幅判定和保存导出走的是同一条代码路径:界面说抓到了,就一定可导出,两者不会互相矛盾。

数据从哪来到哪去:四段处理链路 📡

扫描页每一帧混杂模式数据帧都过同一条流水线:

阶段一 签名定位。输入是原始 802.11 数据帧字节,在 MAC 头后扫描 LLC/SNAP + EAPOL 以太类型签名AA AA 03 00 00 00 88 8E,命中才算这帧,否则按普通数据帧跳过。产出是一个可定位的候选。逻辑集中在 parser.py 的_parse_eapol。

阶段二 字段抽取与分类。输入是已定位的帧,按 802.1X 固定偏移取出重放计数器、32 字节 Nonce、16 字节 MIC,再依据 Key Info 位与 Key Data 长度归类为 M1–M4,组重加密等无关帧标 0。产出是带消息编号的结构化帧对象。

阶段三 配对判定。输入是同一客户端的帧序列,按计数器、时间窗与到达顺序挑出"供体帧 + 关键帧"的组合。产出是可破解的配对列表,核心是 handshake.py 的crackable_pairs。

阶段四 哈希行生成。输入是配对,把 MIC、AP/客户端 MAC、SSID、ANonce 与被校验的 802.1X 原文拼成WPA*02行,帧类型字节带上 NC 位。产出一行 hashcat-m 22000直接可吃的内容。

它凭什么判定"可用":配对的四重条件 🔑

常见情况:抓到了 M1 和 M3,界面却说没有握手。因为配对表只有四种合法组合:M1+M2、M1+M4、M2+M3、M3+M4——hashcat 靠猜密码、派生 PTK、重算 MIC 来破解,被重算的那帧必须自带 SNonce。

帧方向携带内容在配对中的角色
M1AP→STAANonce,无 MIC供体
M2STA→APSNonce + MIC关键帧
M3AP→STAANonce + MIC供体
M4STA→APMIC,Nonce 通常全零条件关键帧

在此之上叠三重条件:重放计数器精确匹配(M1 与 M2 同值,M3/M4 为 +1);编号小的帧必须先到达,倒序的候选直接剔除;时间当门禁——两帧到达时差超过5 秒配对窗口就拒绝,这个值对齐 hcxpcapngtool 的EAPOLTIMEOUT,是真实抓包验证过的经验值。若协商到的是 SAE(WPA3)或 EAP 企业认证,抓到的握手会被横幅标注"不可破解"并给出原因,而不是静默丢弃。

脏数据与边界:计数器跳变、弱信号、旧捕获

如果 M2 被弱信号截断、没传完整到 MIC,它不会被直接丢弃,而是解析器"尽力而为"返回残缺帧,再由配对算法在关键帧完整性检查时判废——界面显示"没抓到",不会误报。

如果供体帧的重放计数器与预期差了几格(AP 重传或弱信号导致计数器跳变),它不会被一票否决,而是按Nonce 纠错(NC)容差 ≤ 8放行,并在哈希行的帧类型字节固定置 NC 位0x80,让 hashcat 在小窗口内自行补齐漂移。

如果旧捕获的帧没有时间戳,它不会套用 5 秒配对窗口,而是跳过时间检查、只靠计数器规则配对,老 pcap 的回放回归测试不受影响。

从零跑通:四步完成最小链路

需要一张受支持的 USB 网卡(如 ALFA AWUS036ACS、TP-Link Archer T2U Plus,完整清单见 SUPPORTED-HARDWARE.md),以及 Releases 的预编译二进制或 Python + uv 环境。

  1. git clone https://gitcode.com/GitHub_Trending/wi/wifit3
  2. uv sync装依赖,uv run wifit3启动,在启动页选中 USB 网卡点 START(同意一次性驱动配置提示)
  3. 扫描页锁定目标 AP,进入 Focus,等横幅出现 Captured
  4. 打开captures/目录里的哈希行文件,交给hashcat -m 22000

模块速查

文件职责
src/wifit3/dot11/parser.pyEAPOL 签名定位与 M1–M4 分类
src/wifit3/dot11/eapol.py802.1X 载荷组装与 MIC 回写
src/wifit3/crack/handshake.py配对算法、5 秒窗口、NC 容差与哈希行生成
src/wifit3/models/handshake.py每客户端握手状态与"可破解"判定

跑通后,把哈希行丢给 hashcat 就能开跑。

【免费下载链接】wifit3Wifite but USB-only & cross-platform.项目地址: https://gitcode.com/GitHub_Trending/wi/wifit3

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/21 11:10:22

2012-2024年 上市公司-企业业务招待费数据 (xlsx+文献)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/21 10:58:53

RuoYi-Vue-Plus 多租户后台管理系统:完整搭建与避坑指南

RuoYi-Vue-Plus 多租户后台管理系统:完整搭建与避坑指南 【免费下载链接】RuoYi-Vue-Plus 多租户后台管理系统 重写RuoYi-Vue所有功能 集成 Sa-Token、Mybatis-Plus、WarmFlow、SpringDoc、Hutool、OSS 定期同步 项目地址: https://gitcode.com/GitHub_Trending/r…

作者头像 李华
网站建设 2026/10/21 10:54:29

无名杀 网页版三国杀:2000+武将免安装,浏览器直接开打

无名杀 网页版三国杀:2000武将免安装,浏览器直接开打 【免费下载链接】noname 项目地址: https://gitcode.com/GitHub_Trending/no/noname 昨晚朋友喊开黑,我第一反应是先装客户端、注册账号、下完整包。结果他直接把无名杀的链接甩给…

作者头像 李华