什么是KRACK漏洞(Key Reinstallation Attacks)?
KRACK漏洞,即密钥重装攻击漏洞,是2017年10月16日由比利时研究人员Mathy Vanhoef(马蒂·万赫弗)发布的WPA/WPA2协议安全问题。该漏洞通过WPA/WPA2协议在实现上的缺陷,触发密钥的重安装,可能使中间人攻击者获得解密无线数据包的能力。
通用漏洞披露网站(CVE)记录了10几个KRACK漏洞可能引发的问题(CVE-2017-13077 ~ 13082,CVE-2017-13084 ~ 13088),实际上这十几个漏洞均指向同一个问题--密钥重装。
这类安全缺陷存在于 Wi-Fi 标准本身,而非特定某些产品或者实现方案中。本质上,为了保证安全,一个密钥只应该安装和使用一次,而WPA2却没有保障这一点。
论文《Key Reinstallation Attacks:Forcing Nonce Reuse in WPA2》内的POC(Proof of Concept),对一部 Android 手机执行了一次 KRACK。在本次演示中,攻击者有能力对受害者传输的全部数据进行解密。对于攻击方而言,这一攻击方式非常易于实现,因为Android 以及 Linux 会在攻击者的引导下(重新)安装一条全零加密密钥。
论文也指出,在攻击其他设备时(无全零加密密钥漏洞的设备),虽然解密全部数据包难度极大,但攻击者仍然有能力解密相当一部分数据包。实际上,论文作者承认,他自己还没有这部分攻击的POC。
KRACK漏洞的攻击对象和攻击方式
该漏洞主要是针对 Wi-Fi 接入的客户端(手机、笔记本、pad等设备),诱发客户端进行密钥重装,从而带来可能被解密的隐患,被攻击的首要条件是攻击者在物理位置上非常靠近目标 Wi-Fi 网络,才可能进行重装密钥诱导。
可能的攻击方式包括:
1. 通过KRACK漏洞比较容易触发Linux和Android 6.0已知的全零密钥安装漏洞,造成所有报文容易被解密;
2. KRACK漏洞攻击削弱了WPA2加密对重放攻击的防御,增加了终端受到重放攻击的风险;
3. 如果已经获取部分报文的明文和密文,则可能通过KRACK漏洞解密更多报文,但不能解密所有报文;
4. 若不能获取明文和密文,理论上存在解密少量报文的可能性,但难度极大。
Wi-Fi 使用者应该如何对待该漏洞
1. 该攻击是所有终端厂商都有能力解决的漏洞,请咨询或者查询官方升级版本,升级终端系统版本后就可以预防该漏洞。
2. Linux和Android6.0以上版本,请尽快更新版本,针对此版本的攻击比较容易。
3. 对于其它设备而言,该漏洞的攻击成本相对比较高,所以请冷静对待,避免不必要的恐慌。
4. 漏洞主要是针对客户端,所以仅仅升级AP或者家用路由器,无法避免该漏洞。
5. KRACK漏洞不会造成密码泄露,所以无需修改网络密码。
漏洞对AP设备的影响
对锐捷AP影响较小,只有AP运行在以下较少使用的两种场景下,当前的软件版本才会受此漏洞影响,相关的解决方案如下:
· 通过加密信号进行WDS桥接时,非根桥AP发给根桥AP的报文可能被解密。解决方法:请联系TAC和400,获取新的补丁版本。
· 开启802.11R FT功能后,终端漫游时,AP发给终端的报文可能被解密。实际上锐捷AP默认关闭该功能,所以不需要特殊处理。
>>>友情提示<<<
在该漏洞细节曝光之后,Linux、微软、苹果相继都发布了补丁,我们强烈建议大家及时的更新自己的系统版本或者安装补丁,截至目前为止,主流终端的补丁进展如下:
· Windows终端:微软已于10月10日的安全累积更新中修复KRACK漏洞。请开启Windows 10的自动更新,旧版本Windows请及时升级到Windows 10。
· iOS终端:苹果已于10月16日宣布修复此漏洞,请接收iOS推送更新。
· Android终端:Google将于11月修复此漏洞。国内厂商的Android系统并非原生,请向各厂商了解安全更新事宜。
· Linux:wpa_supplicant已发布一个更新修复此漏洞,请通过包管理器更新组件。
对于此,大家有其他疑问,欢迎致电锐捷网络7*24小时服务热线。
原文发布时间为:2017-10-18
本文作者:佚名
本文来自云栖社区合作伙伴51CTO,了解相关信息可以关注51CTO。