安基网 首页 资讯 安全报 查看内容

Google动态邮件功能出现XSS漏洞,可让黑客透过Gmail发动攻击

2019-11-26 10:41| 投稿: xiaotiger |来自: 互联网


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: 安全专家发现Gmail动态邮件功能出现跨站攻击(cross-site scripting,XSS)漏洞,能让攻击者透过此类电子邮件发动攻击,所幸Google已在上个月修补Gmail这项漏洞。这个漏洞是由安全公司Securitum在动态邮件功能AMP4Email发现。AMP4Email是Google今年初发表了动态Gmail服务,可在电子邮件加入动态HTML属 ...

安全专家发现Gmail动态邮件功能出现跨站攻击(cross-site scripting,XSS)漏洞,能让攻击者透过此类电子邮件发动攻击,所幸Google已在上个月修补Gmail这项漏洞。

这个漏洞是由安全公司Securitum在动态邮件功能AMP4Email发现。AMP4Email是Google今年初发表了动态Gmail服务,可在电子邮件加入动态HTML属性,让使用者可直接在邮件中回复活动邀约、填写问卷或浏览目录。例如有人在GoogleDocs中加注评论时提及某位用户时,该用户即可收到更新的Gmail邮件看到该评论,而直接在邮件中回复。

为了防止AMP4Email遭XSS等攻击行为,Google设计了验证机制,即一组允许放入动态邮件的HTML标签和属性的白名单。不过研究人员发现AMP4Email仍然出现设计漏洞。他们发现id属性不在禁止标签名单上,而可能让黑客用以建立HTML元件,导致名为DOM Clobbering的攻击。

简单而言,这类手法会将DOM元素的id属性加为文件的属性或网页的全局变量,导致原有文件属性或全局变量被覆盖,或者劫持某些变量属性,而造成XSS攻击。

DOM Clobbering是浏览器一项旧有功能,迄今仍对许多应用程式带来麻烦。Securitum首席安全研究员MichaBentkowski举例,在建立HTML元素且希望从JavaScript建立参照时,一般是用document.getElementById('username')或document.querySelector('#username')等函数,但是并不是唯一方法。也可以利用全局window物件属性,因此window.username在此也等于document.getElementById('username')!。这种方法即为DOM Cloberring,碰上应用程式根据某些全局变量(如if(window.isAdmin){…})进行决策时,就产生了漏洞。

在AMP4Email中,某些id属性的值是被限制的。但研究人员发现在AMP_MODE下,如果函式尝试下载JavaScript档案时会发生404错误,致使后续出现的URL出现「未定义」的属性,而负责检查未定义元素的程序码会去检查AMP_MODE.test和window.testLocation的值是否为真。在概念验证攻击中,撰写程序造成window.testLocation overload即可控制URL。

虽然在真实情境下,AMP中的属性安全政策(CSP)会阻止攻击100%执行,但是研究人员8月间在Google的抓漏大赛中发现这项漏洞并通报Google。9月获得Google回复是「很棒的bug」。Google于10月中旬回复已修补漏洞。

资料来源:iThome Security



小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

本文出自:https://www.toutiao.com/a6761053357294486020/

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

 最新
返回顶部