苹果设备被曝存在peap认证漏洞 研究人员对官方修复方案存疑-k8凯发天生赢家

苹果设备被曝存在peap认证漏洞 研究人员对官方修复方案存疑
作者:雷锋网 发布时间:2019-05-19

研究人员发现苹果设备在peap认证上存在缺陷,攻击者可强迫苹果设备接入恶意热点。研究人员称,即使身份验证服务器(radius)也不能证明密码的真实性,该错误依然允许攻击者强制任何apple设备(ios,macos或tvos)与恶意接入点关联。

初遇cve-2019-6203

报告撰写者dominic称,去年我们在准备defcon的演讲时,迈克尔(另一位研究人员)和我正尝试实施hostapd-wpe的eap攻击试验。在此次攻击中,身份验证服务器将接受任何用户名,之后的动作并非将证明密码内容返回到工作站的步骤(因为它不知道密码),而是将eap成功消息发送回工作站。

“对于迈克尔的执着,我拒绝了很长一段时间。因为我觉得这种攻击方案不会奏效。因为在mschapv2中,验证服务器实际上证明了密码内容回到决策端的过程,即使不能,我认为决策段也会拒绝继续执行,毕竟这就是保障安全的重点。”

令dominic出乎意料的是,在唯一的一次测试中hostapd-wpe的eap攻击试验竟然成功了,几乎全部接受实验的apple设备(ipad,iphone,macbook)都成功连接到恶意接入点。由于wpe是由brad antoniewicz编写的,我只得向他询问问题所在:

1.png

在这之后,dominic针对此次发现进行了大量研究,并在4月份尝试进行了cve-2019-6203漏洞攻击的再现实验。

复现apple漏洞

复现攻击的第一步,是找出漏洞的所在之处。通常来说,peap-mschap v2的认证过程分为两个阶段:

1、验证服务器身份和建立tls隧道。服务端将向客户端发送服务端的证书信息,通过后建立tls隧道保护传输的数据。

2、在tls隧道内通过mschap v2进行双向认证。

在frame 4、frame 5中,验证者和客户端的response都是通过双方的challenge passwordhash username计算得出的,并发向对方进行身份验证。

那么,如何复现apple漏洞攻击呢?

1.png

2008年,安全研究员joshua wright编写了一个名为freeradius 的补丁。wright的wpe攻击试验同样使用了绕过peap-mschap v2的方式,最终,它可以通过建立虚假peap-mschapv2热点得到个人用户请求,并在第二阶段获取challenge、ntresponse 和 username。

“与之类似的原理,同样可以应用在此次研究中。”dominic称,我用同样的方式复现了peap认证上的漏洞攻击cve-2019-6203。

具体方法如下:

安装:

hostapd-wpehttps://github.com/opensecurityresearch/hostapd-wpe/blob/master/hostapd-wpe.patch 这是在kali中使用“apt-get install hostapd-wpe”完成的,以下假定该方法。

使用-e开关运行它以启用“eap success”

https://github.com/opensecurityresearch/hostapd-wpe/blob/master/readme#l135

在ios设备上,在wifi下,连接到“hostapd-wpe”网络。选择信任证书。可以使用任何凭据。

设备将连接,运行dnsmasq以分发dhcp将显示设备获取ip。

使用以下示例配置尝试使用wpa_supplicant进行相同的客户端连接将不起作用:

network = {

ssid =“hostapd-

wpe ” key_mgmt = wpa-eap

eap = peap

phase2 =“auth = mschapv2”

identity =“test”

password =“password”

ca_cert =“/ etc / hostapd-wpe / certs / ca.pem “

}

如此一来,将看到请求者将拒绝最终的消息验证者并断开连接。

修复问题及k8凯发天生赢家的解决方案

复现试验中,未打补丁的apple设备跳过发送验证器响应并且仅按照第7帧发送mschapv2成功帧。这导致易受攻击的apple设备轻松在其状态机制中跳过。随后它会发送一个peap响应——hostapd-wpe向其发送eap-success。

dominic称,这意味着如果apple设备连接到未知用户密码的恶意ap,它不仅会获得netntlmv1质询响应,设备也将连接到网络。由于eap的网络通常是企业网络,apple设备会认为它与之相关(没有用户交互),此时也可以进行响应式攻击。

该缺陷影响2019年3月25日前的ios、macos、tvos版本,包含macbook、iphone、ipad、apple tv等多种苹果设备。但令dominic感到困惑的是,已修补的设备在peap,mschapv2和wpa2级别上表现出完全相同的行为,即设备仍然连接到网络,在某些情况下甚至会请求dhcp。这是一个例子:

1.png

相反,apple 在连接后使设备与网络断开连接。设备显示“无法连接”错误,并且设备上显示的日志条目显示:

1.png

dominic解释道,这有点像一名保安在守护一座大楼,一旦有人进去无论是谁都会被全部赶出去。虽然它具有解决问题的效果,但很让人担心会不会暴漏出其他危险讯号。

“然而,在测试修复后的系统时,我确实注意到一个异常值,当在设备连接但导出不同的pmk时,握手的第二个消息中由mic证明(这就是repo中的wpa代码所用的)出现了异常。当然,我觉得这只是一次偶然,因为pmk来自外部tls会话并且未启用加密绑定,这应该是没有可能的。”

目前,dominic仍不能确认这个问题是否真的存在,他表示会在之后的研究中用多台苹果设备展开试验,找出答案。

建议:

验证在最终eap-success消息中发送的消息验证器,并且不允许ios / macos设备连接到无法证明用户密码知识的恶意接入点。

可以在以下位置找到执行此验证的wpa_supplicant示例:

https ://w1.fi/cgit/hostap/tree/src/eap_peer/mschapv2.c#n112

网站地图