【无线安全实验4】使用WiFiGrab获取无线PIN码 文章目录1 原理分析1.1 WPS在线攻击1.2 WPS离线攻击2 实验过程本文使用小白抓包工具演示WPS PIN码离线逆向过程以供学习与技术分析。本次实验以无线安全审计目的意在对路由器安全强度进行测试仅做学习研究之用。请注意遵循相关法律法规。【教程合集】【无线抓包实验1】抓包获取隐藏WiFi名称【无线抓包实验2】5G WiFi抓包跑包全流程【无线抓包实验3】批量抓包与无客户端抓包【无线安全实验4】WPS离线破译原理与实验1 原理分析详细原理介绍https://blog.csdn.net/2301_81348092/article/details/1518432441.1 WPS在线攻击PIN码为8位纯数字而第8位为前面1-7位的校验和所以总共只有10的7次方种组合。而由于PIN码的验证过程是分段式的即先验证前4位再验证后4位则攻击者只需先猜测前4位组合104再猜测后四位组合103即最多11000种组合即可猜出正确PIN码。而WPS协议最初默认没有对PIN的验证次数进行限制这就使在线PIN坡解成为了可能。传统的在线攻击方案可以借助 reaver 或 bully 简便地实现信号良好情况下大约 3s/pinWPS1.0无锁 PIN 现象平均几小时即可攻破一台路由器。1.2 WPS离线攻击现在多数路由器都是 WPS2.0WSC会出现锁 PIN 现象一定程度提高了安全性。可就算是几次 PIN 尝试的机会也留给了攻击者可乘之机。2014年Dominique Bongard演示了一种离线WPS的方法对某些存在安全漏洞的路由器可在不到一秒内破译。该攻击利用了某些路由厂商芯片只能生成低熵的伪随机数进而坡解加密过程。攻击称为“pixie-dust attack”翻译为“小精灵尘埃攻击”或“仙尘”攻击外国人起名灵感感觉大都跟游戏影视作品有关。入网设备和AP之间没有传输PIN码是通过计算PIN码的Hash值来验证的。如果PIN码验证失败流程会止于M4阶段。根据之前在线PIN坡解过程分析攻击者可以获取到PIN码最终计算产物E-Hash1和E-Hash2AP发送的M3帧以及中间计算值AuthKey、PKE、PKE而初始参数PIN码与两个中间计算使用的随机数E-S1和E-S2是不知道的。但是如果攻击者能猜测到AP生成的随机数E-S1和E-S2就可以通过代入所有PIN码组合去猜测验证最终获取到PIN码。那么怎么能猜到AP生成的随机数呢Dominique Bongard发现某些路由器的芯片生成的是不安全的伪随机数Pseudo-Random Number GeneratorPRNG导致其可以通过上一个随机数进行逆向预测。例如Broadcom基本上使用C中的Rand()函数在Ralink中随机数始终不会生成因此为0而RTL819x生成的随机数存在复用N1、E-S1、E-S2均相同。易受攻击的路由器收录https://docs.google.com/spreadsheets/d/1tSlbqVQ59kGn8hgmwcPTHUECQ3o9YhXR91A_p7Nnj5Y/edit#gid2048815923在攻击过程中M1阶段受攻击路由器会生成随机数N1E-Nonce到M3阶段又会生成的随机数E-S1和E-S2这两个随机数是紧接着N1生成的。而N1可以直接捕获到如果路由器生成的是伪随机数就可以进行逆向分析。2 实验过程其实现在大多数路由器已经没有WPS漏洞了越新的路由器会采用更新的无线安全标准如WPA3同时禁用WPS功能。无线安全水平是在不断提升的但也不排除还有少部分老旧路由器没有被淘汰更新。本次实验使用的软件WiFiGrab进行原理分析。官网链接https://wwifi.cc.cd/software/wifigrab/百度云盘下载https://pan.baidu.com/s/1Q9oWrHF_nKgwOtKyVcb7IQ?pwdxxwd123云盘下载https://www.123684.com/s/q496Td-Ru95H接入USB抓包网卡后启动软件。在设置中可同时启用2.4G和5G扫描并将扫描时间改长一些确认。点击扫描WiFi对附近无线网络进行扫描。扫描完成可以观察边框颜色黑色边框说明AP启用了WPS灰色边框说明AP未启用WPS软件通过AP信标帧中的wifi_protected_setup_state字段确定。仅对已启用WPS的AP进行测试需注意隐藏WiFi即使启用了WPS也无法直接进行WPS攻击因为不知道WiFi名称无法接入。但其实WiFi名称是可以通过抓包获取的不过本软件不涉及该内容。以笔者自己的路由器荣耀CD16进行测试选择目标后点击PIN。运行后WPS离线攻击没有成功说明该路由器没有伪随机数漏洞。观察日志可以看到软件如前面分析的对AP发起WPS的流程。通过M1到M3交互获取到E-Nonce、PKR、PKE、AuthKey等信息然后尝试猜测E-S1和E-S2但未猜测成功该AP可能基于物理过程生成的是真随机数或是使用其他算法生成的随机数。笔者对周围的路由器也进行了安全测试发现大多数路由器也不存在此漏洞是较新的路由设备。但也有极个别路由器可能是采用老式芯片的光猫或路由器是有该漏洞存在的。前文有易受攻击的路由器收录的信息而WPS的广播信息中有两个字段Model Name和Model Number标识了AP设备的型号与编号由此能得知AP是否易受攻击。易受攻击的路由器在软件中会显示为蓝色边框同时在MAC地址后侧括号中会显示该设备信息如Ralink Wireless Access Point RT2860。笔者找到了个别显示蓝色边框的路由器进行测试发现其PIN码信息可以被计算出来且只需要不到十几秒时间。