IE XXE注入0 day漏洞

栏目: 编程语言 · XML · 发布时间: 5年前

内容简介:概述安全研究人员John Page近日发布了关于IE浏览器的可扩展标记语言XML(eXtensible Markup Language)外部实体(external entity)(XXE)注入0 day漏洞。攻击者可以利用该漏洞从受害者计算机中窃取机密信息或本地文件。下面分析如何利用该漏洞的攻击链。XXE注入是利用了XML分析器的不合适的限制XML外部实体引用(CWE-611),用来访问非授权的内容。XXE注入利用了错误配置的文件类型定义(CWE-827),文件类型定义用来为描述xml这类标记语言的文件类型

概述

安全研究人员John Page近日发布了关于IE浏览器的可扩展标记语言XML(eXtensible Markup Language)外部实体(external entity)(XXE)注入0 day漏洞。攻击者可以利用该漏洞从受害者计算机中窃取机密信息或本地文件。下面分析如何利用该漏洞的攻击链。

XXE注入是利用了XML分析器的不合适的限制XML外部实体引用(CWE-611),用来访问非授权的内容。XXE注入利用了错误配置的文件类型定义(CWE-827),文件类型定义用来为描述xml这类标记语言的文件类型。比如,攻击者可以用含有外部实体引用的恶意XML文件,滥用file://协议来访问本地文件,或滥用http://来访问web服务器上的文件。

Page提到的IE XXE注入漏洞是在打开一个精心伪造的MIME HTML web档案(.mht)文件,用户与浏览器交互用 (Ctrl+K)或(Ctrl+P)时触发的。但是用户交互可以通过window.print()这样的JS函数来模拟。一旦用户打开了恶意.mht文件,攻击者就可以从用户系统中窃取文件。

但成功利用该漏洞需要高超的社会工程技术。比如,攻击者必须引诱用户下载恶意.mht文件并手动触发本地设置。

Microsoft在官方文档中给出的回应是IE本身不允许这类恶意行为。攻击者必须诱使或使用户通过社会工程方法来下载恶意文档,比如通过垃圾邮件附件或钓鱼攻击活动来触发下载。而且下载的文件必须用浏览器打开。

漏洞影响

成功利用该漏洞的攻击者可以获取用户系统上敏感文件的访问权限,也可以为进一步发起攻击提供监视信息。

XXE注入和攻击并不少见,但会引发许多安全风险。事实上,XXE攻击是OWASP中列出的主流软件和 工具 的主要威胁。攻击活动中滥用.mht文件作为攻击向量,也可能会被利用套件滥用来作为信息窃取器。

攻击链分析

为了成功利用该漏洞,恶意XML文件必须在攻击者的HTTP服务器上。XML文件必须在ENTITY tag中给出要从用户系统中窃取的文件,这在HTTP消息代表一个请求或响应。对应的文件需要在恶意MHTML文件中作为外部实体被引用,用户可以手动在计算机上执行。

IE XXE注入0 day漏洞

图1. 指定了要从用户系统中提取的文件的恶意XML文件

攻击者必须诱使用户通过外部攻击向量来下载恶意MHTML文件,比如社会工程的垃圾邮件附件或钓鱼邮件。邮件客户端必须用IE来打开恶意文件。IE是所有Windows版本中打开MHTML文件的默认应用程序,所以用户不需要指定打开的应用程序。如图3所示,当恶意MHTML文件被打开后,有漏洞的IE客户端会向攻击者的服务器发送一个GET请求来提取恶意XML文件。

IE XXE注入0 day漏洞

图2. 使用IE XXE漏洞来下载恶意XML文件的样本MHTML文件

IE XXE注入0 day漏洞

图3. 从客户端发给攻击者服务器来获取恶意XML文件的请求包

如图1所示,恶意XML文件中含有要提取的文件的详情,以及攻击者控制的服务器的URI信息。攻击者在恶意XML文件中引用的文件的内容会发回给攻击者的服务器。

IE XXE注入0 day漏洞

图4: 发送文件到攻击者服务器的请求包

安全建议

截止目前,微软还没有发布该漏洞的补丁。研究人员建议用户不要打开未知来源的文件,尽量不要从未来来源下载和打开文件,不要随意点击邮件中的链接。确保操作系统和应用程序更新到最新版本。系统管理员、开发人员也应该遵循预防XXE攻击的一些安全最佳实践。


以上所述就是小编给大家介绍的《IE XXE注入0 day漏洞》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

python 3标准库

python 3标准库

道格·赫尔曼 / 机械工业出版社 / 2018-10 / 199

在本书中,你会看到用来处理文本、数据类型、算法、数学计算、文件系统、网络通信、Internet、XML、Email、加密、并发性、运行时和语言服务等各个方面的实用代码和解决方案。在内容安排上,每一节都会全面介绍一个模块,并提供一些很有价值的补充资源链接,这使得本书成为一本理想的Python标准库参考手册。一起来看看 《python 3标准库》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换