摘要:具体来说,“通过 Apple 登录"验证用户的时候,服务器会提供一份用于验证身份信息的JWT密令(JSON Web Token,可以理解为一张车票),而支持“通过 Apple 登录"的第三方应用会通过JWT来确认登录用户的身份(验票)。Bhavuk发现,虽然苹果公司在发起请求之前要求用户先登录到自己的苹果账户(身份证),但在下一步的验证服务器上,它并没有验证是否是同一个人在请求JWT。

“通过 Apple 登录"是苹果于今年三月推出的一项新功能,该功能希望通过使用现有的 Apple ID为用户提供一种快速、轻松且私密性更强的登录 App 和网站的方式。不过最近曝光的一项已经修复的高危漏洞显示了该功能的私密安全性或许并不如苹果所想象的那样安全。

近日,因报告了存在于“通过 Apple 登录"中的严重高危漏洞,苹果向印度漏洞安全研究专家Bhavuk Jain支付了10万美元的巨额赏金。

据了解,该漏洞允许远程攻击者绕过身份验证,接管目标用户在第三方服务和应用中使用“通过 Apple 登录“创建的帐号。具体来说,“通过 Apple 登录"验证用户的时候,服务器会提供一份用于验证身份信息的JWT密令(JSON Web Token,可以理解为一张车票),而支持“通过 Apple 登录"的第三方应用会通过JWT来确认登录用户的身份(验票)。Bhavuk发现,虽然苹果公司在发起请求之前要求用户先登录到自己的苹果账户(身份证),但在下一步的验证服务器上,它并没有验证是否是同一个人在请求JWT。

这意味着攻击者可以通过一个受害者的苹果ID去申请JWT,随后通过JWT而非ID信息通过第三方验证。就像是你的身份信息被盗用买了一张火车票,然后别人可以用你的火车票冒用身份证去游乐园,去买机票,汽车票或者其它任意需要验证身份信息的事情。

Bhavuk表示:“许多开发者已经将‘通过 Apple 登录'整合到应用程序中,目前Dropbox、Spotify、Airbnb、Giphy都支持这种登录方式。这个漏洞的影响是相当关键的,因为它可以让攻击者完全接管(这些)账户。"

在发放奖金的之后,苹果公司除了确认该漏洞已修复外,还将调查此前是否存在受到该漏洞影响的账户。

相关文章