我一直在研究对WPS PIN的蛮力攻击,我了解到,因为最后一个数字是校验位数,并且PIN在M4和M6消息中被分成两半,所以我们可以在11.000次尝试中强行执行WPS PIN。
不过,我最近听说了Pixie对WPS的攻击,它说它利用了一些路由器的低熵。Pixie攻击到底是什么,它如何影响WPS?还有一个问题,如何从蛮力的WPS PIN中找到WPA密钥?
发布于 2016-06-01 10:28:32
Pixie的工作原理是利用E-S1和E-S2非the生成的弱点,它们用于生成加入者散列,如皮克斯粉尘攻击中所描述的那样。
传统攻击攻击网络攻击WPS的两个部分(PSK1,PSK2),本质上是野蛮攻击--强制所有可能的PIN选项,直到找到为止。这必须针对目标在网上完成,因此需要很长时间。
WPS交换涉及到计算两个散列(E-Hash1,E-Hash2),它们来自两个非Key (E-S1,E-S2),加入者和注册员的公钥(PKE,PKR),authkey (从密钥派生键/KDK导出的值)和WPS PIN的两个一半(PSK1,PSK2)。攻击者知道PKE、PKR、E-Hash1和E-Hash2的值,因为路由器会将它们提供给您(或者您将它们作为客户端提供),您需要找到E-S1、E-S2、PSK1和PSK2的正确组合,以便脱机中断散列。
破解PSK1和PSK2部件相对容易;PSK1只有10,000个可能的值,PSK2只有1,000个可能的值(最后一个数字是校验和),而且每个散列都是分开的,所以只需要计算11,000个散列。在现代系统上,这不需要太多的时间。
然而,问题是,您需要知道两个值E-S1和E-S2的值。这使得离线蛮力方法站不住脚,因为这是128位值.
Pixie Dust攻击的关键是E-S1和E-S2非not在许多路由器中没有安全生成。例如,已知MediaTek路由器对这两个值只使用零。在某些Broadcom路由器中,使用的PRNG是弱的(可能是LFSR或类似Mersenne Twister之类的东西),它还用于生成PKE。通过猜测possilbe PRNG种子值,直到找到一个与路由器提供的相同的PKE,您就可以轻松地生成E-S1和E-S2值。Realtek路由器使用Unix时间戳(以秒为单位)生成PKE、E-S1和E-S2值,但由于生成速度较快,通常情况是E-S1 = E-S2 =PKE(或者E-S1 = E-S2 = PKE+1,如果它在第二个边界上运行),而且由于我们知道PKE,所以我们现在知道E-S1和E-S2。
这就是为什么皮克斯攻击这么快的原因。它不对活动路由器尝试11,000个可能的PIN (这很慢,可能导致路由器阻塞您),而是捕获WPS哈希值并脱机破解它们,利用当前代中的弱点,这样它只需要针对每个可能猜测的E-S1和E-S2值对尝试11,000个PIN值。
https://security.stackexchange.com/questions/124774
复制相似问题