WEP 有线等效加密(已废弃)
WEP 概述
WEP(Wired Equivalent Privacy,有线等效加密)是 IEEE 802.11-1997 原始标准中定义的安全机制。其设计目标是使无线网络的保密性达到与有线网络相当的水平——但这一目标从未真正实现。
⚠️ WEP 已被证明完全不安全,不应在任何场景中使用。
WEP 加密原理
RC4 流密码
WEP 使用 RC4 流密码进行加密:
密文 = 明文 ⊕ RC4(Key)
其中 Key = ICV || IV || TransmitKey
密钥结构
组成部分 |
长度 |
说明 |
|---|---|---|
IV(Initialization Vector) |
24 bits (3 bytes) |
初始化向量,明文传输 |
TransmitKey |
40/104 bits |
"64位"或"128位"WEP的实际密钥部分 |
ICV(Integrity Check Value) |
32 bits |
CRC-32 校验值 |
WEP "64-bit": 24-bit IV + 40-bit Key
WEP "128-bit": 24-bit IV + 104-bit Key
加密流程
发送端:
1. 选择/递增 IV(24 bit,仅 16777216 种可能)
2. 拼接: SeedKey = IV || TransmitKey
3. 生成 RC4 密钥流: Keystream = RC4(SeedKey)
4. 计算 ICV = CRC-32(Plaintext)
5. 加密: Ciphertext = (Plaintext || ICV) ⊕ Keystream
6. 发送: IV (明文) || Ciphertext
接收端:
1. 提取 IV
2. 拼接 SeedKey = IV || TransmitKey
3. 生成相同密钥流: Keystream = RC4(SeedKey)
4. 解密: Plaintext || ICV = Ciphertext ⊕ Keystream
5. 验证 ICV
WEP 的安全缺陷
1. IV 空间过小(致命缺陷)
24-bit IV = 仅 16777216 种可能
高流量网络中,IV 在几分钟内就会重复使用
IV 重用 → 相同 RC4 密钥流 → 可直接 XOR 获取明文
如果 IV₁ = IV₂:
Keystream₁ = Keystream₂
Ciphertext₁ ⊕ Ciphertext₂ = Plaintext₁ ⊕ Plaintext₂
(已知明文攻击:知道部分明文即可恢复其余)
2. ICV 使用 CRC-32(线性校验)
CRC-32 是线性函数,不具密码学安全性:
CRC(A ⊕ B) = CRC(A) ⊕ CRC(B)
攻击者可以修改密文并相应调整 ICV,接收端无法检测篡改。
3. RC4 密钥调度弱点
某些 IV 组合会导致 RC4 密钥流的前几个字节可预测:
FMS Attack(Fluhrer, Mantin, Shamir, 2001):特定 IV 模式泄露密钥字节
Klein Attack(2003):利用 RC4 状态偏差统计恢复密钥
4. 静态密钥
TransmitKey 在设备配置后永不改变
一旦密钥被破解,所有历史和未来通信都可解密
WEP 攻击方法
被动攻击(仅监听)
攻击名称 |
所需数据包数 |
破解时间 |
|---|---|---|
AirCrack (统计) |
~50,000 |
几分钟 |
FMS Attack |
~20,000 |
几秒到几分钟 |
KoreK Attack |
~10,000 |
更快 |
主动攻击(加速收集 IV)
1. ARP Request Injection:
- 注入伪造的 ARP 请求
- AP 回复 ARP Response(加密)
- 快速积累带有不同 IV 的数据包
2. Chop-Chop Attack:
- 逐字节剥离密文
- 利用 ICV 线性特性验证猜测
实际破解工具
Aircrack-ng:最流行的 WEP/WPA 破解套件
AirPcap + Wireshark:抓包和分析
Weplap:专门针对 WEP 的快速攻击
为什么 WEP 被废弃?
数学上可证明不安全:IV 重用是设计缺陷,无法修补
破解成本极低:免费工具 + 普通无线网卡 = 几分钟内破解
行业共识:NIST、FBI、CISA 均明确建议禁用 WEP
迁移建议
立即禁用所有 WEP 配置
**升级到 WPA2-AES(最低)**或 WPA3(推荐)
老旧设备无法支持 WPA2? → 更换设备,不要使用 WEP