售前咨询
技术支持
渠道合作

不可忽视的Wi-Fi漏洞,“密钥重装攻击”KRACK攻击

随着互联网的技术水平越来越高,在日常生活中占据的地位也水涨船高。但上个月中,Wi-Fi 网络保护协议之WPA2 被曝存在严重安全漏洞,Wi-Fi正在遭受KRACK攻击,全球无线网络正面临着严峻的网络安全威胁。

KRACK攻击

KRACK攻击全称为Key Reinstallation Attacks,中文名密钥重装攻击。KRACK是一种针对客户端的攻击方式,漏洞利用方法是攻击者根据合法WiFi伪造同名的钓鱼WiFi,并利用漏洞迫使无线客户端连接到钓鱼WiFi,这样攻击者就可以对无线客户端的网络流量进行篡改,抓取社交网站账号密码。

以下常见漏洞与披露(简称 CVE)码,用于追踪哪些产品会受到此次密钥重装攻击中特定安装手段的影响:

CVE-2017-13077: 在四次握手当中重新安装成对加密密钥(PTK-TK)。

CVE-2017-13078: 在四次握手当中重新安装组密钥(GTK)。

CVE-2017-13079: 在四次握手当中重新安装完整性组密钥(IGTK)。

CVE-2017-13080: 在组密钥握手当中重新安装组密钥(GTK)。

CVE-2017-13081: 在组密钥握手当中重新安装完整性组密钥(IGTK)。

CVE-2017-13082: 接收一条重发快速 BSS 切换(简称 FT)重新关联请求,并在处理过程中对成对加密密钥(PTK-TK)进行重新安装。

CVE-2017-13084: 在 PeerKey 握手当中重新安装 STK 密钥。

CVE-2017-13086: 在 TDLS 握手当中重新安装隧道直连设置(简称 TDLS)PeerKey(TPK)密钥。

CVE-2017-13087: 当处理无线网络管理(简称 WNM)睡眠模式响应帧时,重新安装组密钥(GTK)。

CVE-2017-13088: 当处理处理无线网络管理(简称 WNM)睡眠模式响应帧时,重新安装完整性组密钥(IGTK)。

需要注意的是,每个 CVE 码皆代表着密钥重装攻击的一种特定实例。这意味着每条 CVE ID 都描述了特定的协议漏洞,且每一条 CVE ID 都可能影响到多家供应商。

攻击因素

KRACK攻击主要是针对WPA2协议的四次握手过程,使用了一种叫做Key重新安装攻击(KRACK)新的攻击技术。我们知道当客户端试图连接到一个受保护的WiFi网络时,AP将会发起四次握手,完成相互认证。

同时,在四次握手过程中将会协商好一个新的用于加密接下来通信数据的加密密钥。

在四次握手过程中,当客户端收到AP发来的Message 3后将会安装加密密钥key,用于加密正常的数据帧。因为message可能丢失或者被丢弃,如果AP没有收到响应AP将会重新传输message3,这样客户端可能会收到多次message3。客户端每次收到此message都会重新安装加密key,从而重置加密协议使用的增量发送数据包号nonce和接收重放计数器。而攻击者可以通过收集和重放重新发送四次握手中的message3强制重置nonce,从而成功攻击加密协议,解密客户端发送通信数据包,截获敏感信息。

另外,这一漏洞似乎是由WiFi标准中的一句话引起的。该标准建议,一旦首次安装,就可以从内存中清除加密密钥。当客户端收到四次握手的重传message3时,它将重新安装现已清除的加密密钥,有效地安装了一个全为零的密钥。

值得注意的是本次攻击没有获取到wifi网络的密码,也没有获取在四次握手过程中协商的新生的加密密钥。

注:

高级加密标准(AES)是一种对称密钥密码,即使用相同的密钥来加密和解密。虽然传统上标准的AES加密位宽是128位的纯文本分组密码块,但它也可以用作流加密,即在WPA2中的应用。现在,采用流加密算法的问题在于重新使用一个对称密钥中的随机数,可以完成握手中的全部解密过程 。然而随机数永远不允许在同一个密钥采用两次。在WPA2标准中,一个随机数基本上是一个数据包计数器,主要包括:

生成(0,密钥)→第一部分密钥流

生成(1,密钥)→第二部分密钥流

生成(2,密钥)→第三部分密钥流

生成(2 ^ 48,密钥)→最后一部分密钥流

一旦达到计数器的最大允许值(2 ^ 48),就会产生一个新的密钥,并将计数器复位为0。由于每当计数器重置为0(提示,提示)时,密码都被重设,因此,相同的对称密钥密码永远不会被重用。

影响范围

由于漏洞缺陷存在于WiFi协议层,这意味着所有支持WPA2的客户端都将遭受影响。根据描述,此密钥重装攻击可用于:

WPA1及WPA2

个人及企业网络

Ciphers WPA-TKIP, AES-CCMP 和 GCMP

虽然Windows及iOS在实现“4次握手”时,不接受“消息3”的重传(未遵守802.11标准),在4次握手中不会遭到密钥重置攻击的影响,但在Group Key Handshake以及802.11r中的FT handshake中依然可被攻击。

其中,wpa_supplicant 2.4及2.5版本实现了协议注释内容“一旦安装后,就可从内存中清除加密密钥”,将导致客户端会安装值全为零的秘钥。因此使用了这些wpa_supplicant版本的Linux及Android设备将遭受严重威胁。

下图为wpa_supplicant版本发布时间线:

官网的补遗中提到,对于wpa supplicant 2.6,采用John A. Van Boxtel提出的方法依然可以攻击—— 通过以与原始消息1中使用的相同的ANonce伪造的消息1,然后将重传的消息3转发给受害者。

时间线

2017年7月14日左右,Mathy Vanhoef – 便向所测产品的设备供应商发出了通知。在与多个供应商沟通后发现漏洞普遍存在于几乎所有设备上,实为协议的漏洞而非实现的问题。

2017年8月24日,Mathy Vanhoef在Black Hat Webcast上发表了《[Securely ImplementingNetwork Protocols: Detectingand Preventing Logical Flaws][4]》,讲述对网络协议中逻辑漏洞的检测方法。

2017年8月28日,CERT/CC向供应商发出了广泛的通知。

2017年10月6日,上线漏洞官网,及Paper上披露漏洞细节。

截止目前,利用工具暂未公布。

防护

及时更新无线路由器、手机,智能硬件等所有使用WPA2无线认证客户端的软件版本。(有补丁的前提下)

有条件的企业及个人请合理部署WIPS(无线入侵防御系统),及时监测合法WiFi区域内的恶意钓鱼WiFi,并加以阻断干扰,使其恶意WiFi无法正常工作。

无线通信连接使用VPN加密隧道及强制SSL规避流量劫持与中间人攻击造成的信息泄漏。

在不使用WiFi时关闭手机WiFi功能,公共WiFi下不要登录有关支付、财产等账号、密码。如需登录、支付,将手机切换至数据流量网络。

家用WiFi该怎么使用就怎么使用,WPA/WPA2本身是安全的,也不用修改WiFi密码。

修复情况

2017年10月2日,Linux的hostapd和wpa_supplicant 补丁已公布,详见 https://trustauth.cn/security/2017-1/。

2017年10月10日,微软在Windows 10 操作系统中发布补丁 KB4041676

苹果在最新的 beta 版本iOS、macOS、 tvOS和 watchOS中修复了无线网络安全漏洞

上一篇:

下一篇:

相关新闻

 

领取优惠
免费预约

申请试用SSL证书

提交成功!

咨询客服