0x00 背景知识
WPS(Wi-FiProtected Setup,Wi-Fi保护设置)是由Wi-Fi联盟组织实施的认证项目,主要致力于简化无线网络的安全加密设置。有两种模式,注册名模式输入pin码即可,注册模式按下AP上的按钮即可。
多米尼克•邦加德发现一些无线ap产生随机数的方法不安全(像著名的128位随机数E-S1,和E-S2),如果我们能搞清楚随机数是什么,就很容易发现ap的wps pin因为在ap一定会给我们包含pin的hash校验值。
0x01 算法分析
在每一个wps设备中都有以下算法
E-Hash1 = HMAC-SHA-256(authkey) (E-S1 | PSK1 | PKE | PKR) E-Hash2 = HMAC-SHA-256(authkey) (E-S2 | PSK2 | PKE | PKR)
简单说,-E-Hash1和2是我们需要暴力破解的hash值
HMAC-SHA-256 一种hash函数 PSK1/PSK2 是路由器的pin码 最多10000种可能 PKE 是注册名设定模式下的公钥 PKR 是注册设定模式下的公钥,为了校验wps改变的合法性和预防重放攻击
假设我们已经知道PKE,PKR,Authkey,E-Hash1和E-Hash2(所有这些都从reaver发布的修改版本中得来),我们已经找到E-S1和E-S2(因为我们只是暴力破解他们或者他们就等于0),我们可以通过hash函数运行的所有数据,并尝试每一个pin和秘密随机数),直到我们有一个匹配的hash。 0x02 从AP路由器的响应中校验PIN码的正确性
2. 如果攻击者在发送M6后接收到EAP-NACK消息,则后一半PIN错误八位的PIN码中最后一位是校验码,由前七位得到,大大缩短了破解难度。
下面流程图展示了完整的暴力破解过程
0x03受影响的产品
Realtek产品漏洞是芯片生成注册随机数和生成E-S1,E-S2使用了相同的算法。意味着如果信息交换发生在同时,它们的值就都相同。找到随机数的种子,通过改变种子来逆推它们,不简单但是可行。
唯独特殊的是Ralink厂商,完全的没有E-S1和E-S2,都是零,just hack。
0x04 Kali2.0中的无线工具
(1)reaver 和 pixie
reaver 结合pixie
先贴出官方的视频地址
https://vimeo.com/126489367
airmon-ng start wlan0 //开启网卡 airodump-ng wlan0mon //监听模式,查找开启wps的ap reaver -i wlan0mon -b [ap’s mac] -vv -K 1 //reaver破解pin-K 1 选项 结合pixies 灰尘攻击 得到pin码 reaver-i mon0 -b [ap's MAC] -p PIN8位数 //通过wps pin 获取密码
reaver的其他功能
1、reaver -S //生成一个小的DH key 加快破解速度。
通常一个验证请求会在0.5到3秒内完成,计算Diffie-Hellman共享密钥会占据大量的时间,生成一个很小的DH公钥会使计算变的简单。
注意:如果测试的是realtek 的ap 不要用 -S 选项加快破解速度
2、部分路由器会禁止暴力尝试pin码,自动锁定5分钟,强制关闭等等。
然而我在读reaver源代码时发现开发者专门为此做了优化,堪称业界良心。
3、reaver -P //此选项reaver进入循环模式,打破wps的规则不用M4消息以此突破封锁,用于结合pixie收集hash函数,以便日后分析比较,没准还能发现更多的漏洞芯片。
(2)无线渗透神器 Aircrack-ng v1.2 RC2更新
Aircrack-ng是无与伦比的渗透工具套件——任何无线渗透测试或评估都必不可少。在这个最新Aircrack-ng中,除正常的bug修复和代码改进外,其他值得注意的特点是:
1、airmon-ng现在能够解密WPS。 2、airodump-ng也有了一些新的选项比如-wps 和 -uptime 3、airtun-ng 增加了wpa的 ccmp tkip 两种加密和解密方法 4、新的接口命名约定,再见mon0,你好wlan0mon !
最近的几个版本,aircrack-ng套件捆绑airmon-zc,它使用一种改进的方法,把无线网卡进入监听模式,以及更详细的输出选项。随着Aircrack-ng 1.2 RC2的发布,airmon-zc正式取代了原始Airmon-ng。
(3)然而在开始无线测试之前还需要解决重大的问题
KALI网卡的配置一直让人头疼
airmon激活网卡前最好先运行airmon-ng check kill,结束一些不必要的进程。
有的驱动文件中并没有监听模式,我曾经用的RTL8187网卡,安装了附赠的驱动后在旧版kali中各种受折磨,不过幸好新版内置了这款网卡的驱动直接可以使用。
(附赠官方KALI网卡导购指南,请阅读原文)
*本文作者:月尽西楼,参考百度盘资料,本文属FreeBuf原创奖励计划,未经许可禁止转载