导语:近日,安全研究人员证实了一个OAuth 2.0 协议漏洞的存在,允许进行简单的远程攻击操作,威胁全球超过10亿的Android应用程序账户数据安全。
近日,安全研究人员证实了一个OAuth 2.0 协议漏洞的存在,允许进行简单的远程攻击操作,威胁全球超过10亿的Android应用程序账户数据安全。
周五(11月4日)在 2016欧洲黑帽会议上,来自香港中文大学的三位研究员Ronghai Yang(杨荣海,音译),Wing Cheong Lau(刘永昌),和Tianyu Liu(刘天宇,音译)展示了一种针对 Android和 iOS 应用程序无需用户授权即可登录 Facebook 、谷歌和新浪微博账户的方法,而此类数百种应用程序已被下载超过二十四亿次、超过十亿账户受到威胁。
单点登录功能使用了不安全的Oauth2.0协议
研究员称大多数手机应用支持单点登录( SSO )功能。SSO是目前比较流行的企业业务整合的解决方案之一,用户只需要登录一次就可以访问所有相互信任的应用系统。然而,该功能使用了不安全的Oauth2.0协议,Oauth 是允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表)而无需将用户名和密码提供给第三方应用的协议。
理论上,当用户通过 OAuth 协议登录第三方应用程序时,应用程序会与ID提供商(例如 Facebook )检查其是否具有正确的身份验证详细信息。
下面为该团队在欧洲黑帽大会上的演示图片:
然而,中国研究人员发现,大量的应用程序的开发人员没有正确检查ID提供商(例如 Facebook )发送的信息有效性。
攻击验证
专家解释称,服务器应用程序忽略了验证用户和ID提供商是否有关联,只验证ID提供商(例如 Facebook )信息的真伪。攻击者可利用OAuth协议漏洞通过修改服务器设置伪装成来自 Facebook 、谷歌或是其他ID提供商的数据,从而发动中间人攻击登录账号。
通过这种技术,攻击者可以运用应用程序的漏洞访问用户数据,泄露用户敏感信息,严重威胁用户的数据安全。
刘永昌专家告诉《福布斯》:
这个问题是一个非常基本的错误,但是造成的影响确实非常严重的。例如,如果一个黑客入侵了一个旅游APP,他就可以获取用户的全部行程信息;入侵一个酒店预定APP,他就预定一个房间并让受害者为其买单;或者他们可以简单地窃取用户个人信息,如个人住址或银行卡信息等。很多的第三方开发者都不具备这种防御能力,大多数情况下,它们都是使用谷歌或Facebook的推荐,但是如果他们没有正确地操作,他们的应用程序将更加开放也更加危险。
专家们发现,很多的中国和美国Android应用程序都支持SSO服务,而且下载量非常大,研究人员解释道,攻击超过24亿的下载应用将受到这种攻击影响。
安全专家估计,超过10亿个不同类型的手机应用程序账号将在此次攻击中遭遇数据劫持的危险。
安全人员并没有在iOS设备上进行任何测试,但是他们认为,该攻击同样适用于苹果应用程序。
研究人员表示:“尽管我们目前只在Android平台进行了演示,但是这种漏洞与平台本身是无关的:只要应用程序运用基于OAuth2.0的SSO服务,那么无论是iOS 或是Android用户的应用程序都会受到影响。”