苹果Sign In with Apple爆可被劫持账号的漏洞

研究人员披露苹果iOS的隐私登录技术Sign in with Apple有零时差攻击漏洞,可能导致用户账号被劫持。苹果已经在接获通报后完成修补。

Sign in with Apple是苹果去年在iOS 13及iPad OS加入的隐私登录技术。它使用类似OAuth 2.0的身份验证技术,用户可使用苹果产生的随机电子邮件信箱来登录网站或App账户,而无需使用真实的Apple Email ID。

运行原理来看,苹果服务器会在用户终端认证后,发出一则包含Email ID的JWT(Jason Web Token)当作私钥给终端设备,而在用户登录第三方应用程序或网站时,结合终端设备的JWT及苹果服务器传来的公钥,以完成验证登录。

研究人员Bhavuk Jain发现,他可以利用任何Email ID,促使苹果服务器发送JWT,其中的签章还可以成功通过苹果公钥的验证,这表示攻击者可连接任何email ID,进而刼持用户的网站或应用程序账号。因此即使用户隐藏自己的email ID也无法保障不被黑。

由于去年秋天开始,苹果规定所有支持第三方登录工具的App,都必须集成Sign in with Apple,因此研究人员指出,新发现的漏洞影响相当重大。所有高知名的App,包括Dropbox、Spotify、Airbnb、Giphy等都受到影响。

Jain四月发现漏洞后通报苹果,苹果已完成修补,同时通过漏洞挖掘奖励方案发出10万美元奖金给了这名开发人员。苹果对The Hacker News说,没有发现有任何黑入该漏洞的证据。

Sign in with Apple可能还有其他安全隐忧,例如苹果去年九月完成标准化的OpenID Connect大部分实例,但是独缺实例PKCE(Proof Key for Code Exchange by OAuth Public Clients),OpenID基金会认为,这可能使Sign in with Apple遭到程序代码注入或重放(replay)攻击。