Apple Touch ID漏洞可能会让攻击者劫持 iCloud 帐户

苹果今年早些时候修复了iOS和macOS中的一个安全漏洞,该漏洞可能允许攻击者未经授权访问用户的iCloud帐户。

IT安全公司Computest的安全专家Thijs Alkemade于2月发现了该漏洞,该漏洞存在于Apple实施的TouchID(或FaceID)生物识别功能上,该功能对用户进行了身份验证以登录Safari上的网站,特别是那些使用Apple ID登录的网站。 该漏洞通过披露程序将问题报告给Apple后,iPhone制造商在服务器端更新中解决了该漏洞。

认证缺陷

漏洞的核心主要是:当用户尝试登录需要Apple ID的网站时,将提示以使用Touch ID对登录进行身份验证。这样做会跳过两因素身份验证步骤,因为它已经利用了多种因素进行标识,例如设备和生物特征信息。 在登录到Apple域(例如“ icloud.com”)时,通常会使用ID和密码进行对比,其中网站嵌入了指向Apple登录验证服务器(“ https://idmsa.apple.com”)的iframe,来处理身份验证过程。

Apple Touch ID漏洞可能会让攻击者劫持 iCloud 帐户

URL还包含其他两个参数-标识服务(例如iCloud)的“ client_id”和具有成功验证后要重定向到的URL的“ redirect_uri”。

但是,在使用TouchID验证用户的情况下,iframe的处理方式有所不同,因为它与AuthKit守护程序(akd)通信以处理生物识别身份验证,并随后检索icloud.com使用的令牌(“ grant_code”)页面以继续登录过程。

为此,daemon与“ gsa.apple.com”上的API通信,向该API发送请求的详细信息,并从该API接收令牌。

Computest发现的安全漏洞存在于上述gsa.apple.com API中,从理论上讲,它可以滥用这些域来验证客户端ID,而无需进行身份验证。

Alkemade指出:“即使akd提交给它的数据中包含client_id和redirect_uri,它也不会检查重定向URI是否与客户端ID相匹配。” “相反,AKAppSSOExtension仅在这些域上应用了白名单。所有以apple.com,icloud.com和icloud.com.cn结尾的域都被允许。”意味着攻击者可以利用Apple任意一个子域上的跨站点脚本漏洞来运行JavaScript代码的恶意代码段,这些代码段可以使用iCloud客户端ID触发登录提示,并使用授权令牌在icloud上获取会话.com。

Apple Touch ID漏洞可能会让攻击者劫持 iCloud 帐户

设置伪热点来接管iCloud帐户

在另一种情况下,可以通过在第一次连接到Wi-Fi网络(通过“ captive.apple.com”)时显示的网页上嵌入JavaScript来执行攻击,从而使攻击者可以访问用户,只需接受该页面上的TouchID提示即可创建该帐户。

“恶意Wi-Fi网络可以与JavaScript启动的OAuth作为iCloud的网页回应,” 艾尔克梅德说。“用户会收到一个TouchID提示,但不清楚含义是什么。如果用户在该提示下进行身份验证,则其会话令牌将被发送到恶意站点,从而使攻击者可以在iCloud上为其帐户提供会话。”

“通过在用户希望接收热点的位置(例如,在机场,酒店或火车站)设置一个伪造的热点,就有可能获得访问大量iCloud帐户的权限,允许访问图片的备份,手机的位置,文件等等。”

这并不是Apple第一次在身份验证基础结构中发现安全问题。苹果在5月修补了一个影响其“用Apple登录”系统的漏洞该漏洞使远程攻击者可以绕过身份验证,并接管已使用Apple登录功能注册的第三方服务和应用程序上目标用户的帐户。

 

 

稿件与封面来源:The Hacker News,译者:叶绿体。

本文由 HackerNews.cc 翻译整理,

转载请注明“转自 HackerNews.cc ” 并附上原文链接。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论