ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

wifit3 如何给 USB 无线网卡评级?A 到 D 五维评分体系完整指南

wifit3 如何给 USB 无线网卡评级?A 到 D 五维评分体系完整指南

wifit3 如何给 USB 无线网卡评级?A 到 D 五维评分体系完整指南

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

wifit3 是一款支持 Linux、Windows、macOS 的跨平台 USB 无线审计工具。它不依赖操作系统内核驱动,而是用内置的用户态驱动直接接管 USB 网卡,对每块支持的网卡跑完一整套测试,最后给出 A 到 D 的硬件评级。本文讲透这套评级:每个维度测什么、分数怎么算、买卡时该看哪几列。

买网卡不是一件容易的事:性能差的两个原因 🧩

同一块网卡表现不好,背后可能有两类完全不同的原因。

第一类是芯片本身的硬件上限低:接收弱、发送不稳、应答能力缺失,换什么驱动都救不了。第二类是驱动移植没做好:芯片没问题,但驱动实现没跑满硬件能力。这两类问题混在一起谈,选型时必然踩坑——你会把"驱动 bug"误判成"芯片差",或者把"芯片弱"怪到工具头上。

wifit3 的做法是把两类原因拆到不同列里记录。完整的能力矩阵维护在 docs/SUPPORTED-HARDWARE.md,每块网卡一行:五个维度各自打状态标记,最后汇总出一个字母等级。

评级模型总览:五维 × 三项加权 × 一条红线 🔢

整套模型可以压缩成一句话:字母等级 = RX 健康度 35% + 攻击能力 45% + 长期稳定性 20% 的加权分,且 RX 不可用时等级封顶 D。

五个维度的分工是:

  • RX(接收):能听到多少无线信号
  • TX(帧注入):能把攻击帧发出去多少
  • ACKs(自动应答):硬件能否应答伪造 MAC 的帧
  • Port(移植保真度):和 Linux 内核驱动相比差多少
  • Stress(浸泡测试):长时间跳频后 RX 是否衰减

打分有两个关键约定。其一,每个子项 0–100 分,相对全场测得最好的卡打分——"能用"不等于 A,天花板会随新卡入池而上调。其二,能力部分覆盖 Handshake(WPA 四次握手)、PMKID(可直接向 AP 索取的密钥材料)、WEP、WPS、ACKs 五项,每项按 ✅ 满分、⚠️ 半分、❌ 零分计。

界面中部面板实时滚动的 beacon、data、eapol、inject、deauth 五类帧速率,就是上述各项打分的直接数据来源。

五个维度分别测什么、怎么算 📡

RX 接收质量:怎么测,以及为什么是一票否决

RX 回答"这块卡的耳朵灵不灵",看三个数字。

  • Beacon rate(信标速率):对一台固定参考 AP,每秒能收到几个信标。全场最佳的天花板在每秒 9–10 个,这是 100 分的锚点
  • Breadth(广度):每个频段能听到多少台 AP,相对最佳卡取比例
  • Channel tune(调谐):能听到自己信标的信道数占总数比例

下面的扫描器画面就是 RX 数据的直观形态:每个 AP 的信道、信号强度、加密类型都来自实时接收。

RX 是唯一带红线的维度:只要 RX 标 ❌,字母等级直接封顶 D,其余维度再好也不提升。逻辑很直接——听不到信标的卡,被动抓包无从谈起,所有攻击都会跟着失稳。

TX 帧注入:怎么判断攻击能不能打

被动抓包靠 RX,但 Deauth(去认证帧攻击)、PMKID 提取、WPS 接管、WEP 破解,全部依赖 TX 把 802.11 帧真实发出去。TX 维度评估的就是注入能力与可靠性。

WPS 接管过程中注入速率直接可见:速率越高,攻击推进越快。

TX 下还有一个量化子项:持续 IVs/s,即 WEP 破解过程中每秒收集的初始化向量数。同样是"能破解 WEP",MT7601U 能跑到约 500 IVs/s,而 RTL8814AU 只有 10–20 IVs/s——破解耗时能差出 25 倍。所以 WEP 子项按 IVs/s 相对最佳卡缩放计分,而不是"能做"就给满分。

ACKs 自动应答:WPS 的隐藏前提

部分攻击流程要求网卡在硬件层自动应答伪造 MAC 地址发来的帧。没有这项能力,WPS 和 PMKID 都会明显变慢变不稳;而 Deauth 和 WEP 几乎不依赖它。

ACKs 是芯片的硬件属性,卡支持就是支持,不支持就是不支持。矩阵里的对比很直观:RT2500USB 是 ❌,连自己的 MAC 都不应答;RTL8187L 是 ⚠️,只支持固定 MAC。这就是部分卡片"其他项全绿、等级却上不去"的直接原因。

Port 保真度:怎么量 wifit3 与 Linux 驱动的差距

Port 列回答"差距是 wifit3 的锅还是芯片的锅"。测量方法是同一块卡背靠背跑两轮:

  1. 绑定 Linux 内核驱动,逐信道扫一遍抓包,生成基线数据
  2. 切回 wifit3 用户态驱动,扫完全相同的信道,再生成一份
  3. 跑对比脚本,输出保真度百分比和 RX 差距(信标速率、广度、RSSI)

两侧原始 802.11 帧走同一个解析器,所以数字差异只可能来自驱动或射频,不会来自测试工具本身。工具链在 scripts/baseline/,具体流程见 scripts/baseline/BASELINING.md。

Port ✅ 但等级低的卡,说明移植做得忠实、是芯片上限低;Port ⚠️ 的卡,说明用户态驱动还没追平内核驱动,差距属于待修的 bug——这两种情况在选型时的含义完全不同。

Stress 浸泡测试:30 分钟怎么跑、怎么判分

Stress 测试让网卡持续跳频 30 分钟(通过soak.py的长时运行模式),只观察一件事:RX 是否随时间衰减。

判分规则很粗粒度:全程平稳记 100 分,轻微下滑记 50 分,持续衰减记 0 分。它是 RX 的最后一个数据点,所以未跑浸泡的评级都会标注 provisional(暂定)。测试脚本与报告输出在 scripts/rx/。

评级规则速查表:权重、等级与矩阵怎么读

三项加权的分配如下,每个子项 0–100 分:

计分项权重拿满分的条件
RX 健康度35%信标速率、广度、调谐均追平全场最佳卡
攻击能力45%五项全 ✅,且 WEP 的 IVs/s 处于最高档
长期稳定性20%30 分钟浸泡中 RX 保持平稳

字母等级的对应关系:

字母等级百分比区间通常意味着
A≥90%五维均衡,全套攻击可用
B80–89%可用,个别维度有短板
C70–79%老硬件或明显局限,只适合部分场景
D60–69%存在硬伤,接收或应答不可靠
F<60%目前矩阵中尚无卡片落入

当前矩阵摘选(完整数据见 docs/SUPPORTED-HARDWARE.md):

芯片等级一句话特征
MT7601UA(94%)全场最快 WEP,约 500 IVs/s
AR9271A(92%)2.4 GHz 全套装,接收与内核驱动持平
MT7921AUA本批最佳 RX,双频全套
RT5572B(85%)5 GHz 对近处 AP 注入不稳
RTL8187LC(71%)老款 802.11g 卡,无自动 ACK
RTL8814AUD(60%)RX 会卡死,WEP 限速 10–20 IVs/s

怎么用这套评级选 USB 网卡

按下面的顺序看,基本不会选错:

  1. 先定等级档位:预算内优先 A 级。只用 2.4 GHz 可选 AR9271、MT7601U 这类单频 A;要 5 GHz 就选 MT7610U、MT7612U、MT7921AU、RTL8822BU 等双频 A
  2. 再核 RX 与 ACKs:两项任一为 ❌ 直接排除(如 RTL8814AU、RT2500USB),纸面规格再好也不碰;重度依赖 WPS 的用户优先选 ACKs ✅ 的卡
  3. 用 Port 区分"可修"与"无解":Port ⚠️ 是移植差距,属于待修 bug,可以等更新;等级低而 Port ✅ 的是芯片上限,无解
  4. 关注 WEP 场景的 IVs/s:如果你的目标网络是 WEP,这块卡的 IVs/s 直接决定破解耗时,看对应芯片文档里的实测数字
  5. 留意 provisional 标记:Stress 一栏为 ⬜ 的卡尚未完成浸泡测试,其等级是暂定值,等数据补录后可能变动

想自己动手验证,可以按 docs/GRADING.md 里的逐卡清单走:先跑 Linux 基线,再跑 wifit3,最后对比;历史数据会自动归档到scripts/baseline/下的history/目录。

买卡前你可能想问的四个问题 ❓

评级是脚本自动算出来的吗?Port 保真度百分比由对比脚本算出,但字母等级是人工按规则综合裁定的。它是全项目的一致性锚点,刻意不盲跑,避免出现"技术上能跑就高分"的误导性数字。

"相对全场最佳"是不是意味着等级会越测越低?是的。锚点就是测得最高的那张卡,新卡入池后标准自动抬高,早期评级标注为暂定,锚点卡会在池子扩大后复测复标。这是特性而不是 bug——它保证 A 级始终代表真实的第一梯队。

同一芯片有 DKMS 和 mainline 两个移植版,看哪个?默认以 DKMS 版为准。Port 的对比只在"和同一 Linux 驱动比较"时才有意义,跨驱动的数字会单独注明,不算作真实保真度。

列表里没有的网卡能自己测吗?可以先跑基线脚本得到数字,但拿不到正式等级。新芯片的纳入流程要求手里有实物卡加一份干净的冷启动 USB 抓取,方法记录在 docs/porting/METHODOLOGY.md,在此之前矩阵里对应位置保持 ⬜。

收尾:一句话记住这套模型

wifit3 的评级 =五维(RX/TX/ACK/Port/Stress)× 三项加权(35% + 45% + 20%)× 一条红线(RX 挂则封顶 D)。下一步:打开 docs/SUPPORTED-HARDWARE.md 对照矩阵选出目标芯片,再翻 src/wifit3/chips/ 下对应芯片目录的.md文档,查看该卡每一轮测试的日期、数字与问题说明——结果表与过程文档双轨存放,让每个等级都能追溯、能复核。

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

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

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进