千家信息网

Office文档嵌入对象点击执行的技巧是什么

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这期内容当中小编将会给大家带来有关Office文档嵌入对象点击执行的技巧是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。简介Microsoft Office相信
千家信息网最后更新 2025年11月07日Office文档嵌入对象点击执行的技巧是什么

这期内容当中小编将会给大家带来有关Office文档嵌入对象点击执行的技巧是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

简介

Microsoft Office相信大家都用过。Office在文档中嵌入对象极大的方便了我们的日常使用,但同时也为我们带来了众多安全问题。可以说,Office文档为攻击者提供了各种方法来诱骗受害者运行任意代码。当然,攻击者也可能会尝试利用Office漏洞,但更常见的情况是,攻击者会向受害者发送包含恶意宏或嵌入式(Packager)可执行文件的Office文档。

为此,微软在Office的安全问题上也下了不少的功夫。Office中有个名为受保护的视图(Protected View)的安全功能,如果Office文档来自于互联网,那么该功能会以受限方式打开该文档。这个功能的目的是限制可运行的Office组件,以防止攻击者自动利用诸如OLE、Flash以及ActiveX等对象中存在的漏洞。在Office 2016和Office 365还添加了其它的安全措施(如GPO等),这样当用户从Internet下载文档时宏将完全被禁用,以及阻止在Packer文件扩展名黑名单列表中的文件类型运行。

当然,即便如此安全问题依旧存在,但这些措施也在一定程度上减少了此类攻击的发生。最近,Matt Nelson向我们演示了使用SettingContent-ms文件运行任意命令的方法。由于这些文件并不包含在文件类型的黑名单列表中,因此攻击者可以诱骗受害者从Office文档运行嵌入的SettingContent-ms文件。目前,此类文件类型已被添加到了黑名单中。在2018年8月的补丁更新中,微软还发布了一个修复程序,即如果不是从%WinDir%\ImmersiveControlPanel.打开这些文件的,则会进行阻止。

我将向大家介绍另外两种诱骗受害者运行恶意代码的方法。这两种方法都需要有一定量的用户交互。MSRC指出"这种技术需要结合大量的社会工程学技巧:受害者必须要对安全警告说'Yes' ,且在非保护模式下运行"攻击者才有可能得手,因此并不会针对该问题发布任何的修复程序。

Shell.Explorer.1

Shell.Explorer.1 OLE对象(CLSID {EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B})充当嵌入式Windows资源管理器或IE浏览器。此OLE对象可以嵌入到Office文档中,并可作为持久对象保存在文档中。专有格式用于持久化Shell.Explorer.1对象,在偏移量76 (0x4C)处可以找到熟悉的结构。可以看到位于此偏移处的结构是ShellLink (LNK) [MS-SHLLINK]。

当初始化(加载)Shell.Exporer.1对象时,ShellLink结构将被解析为常规LNK文件。然后,该对象从ShellLink获取ID列表,并以此来导航到提供的文件, (shell) 文件夹或网站。

嵌入Windows资源管理器对象

当提供了文件夹路径后,该对象的行为类似于Windows资源管理器。可以浏览文件或文件夹,甚至可以通过双击来执行文件。攻击者可能会滥用此功能来嵌入Windows资源管理器,从而打开包含可执行文件的远程共享。如果攻击者可以说服受害者双击文件,就可以从该远程共享运行可执行代码。

但这种攻击者的实现条件较为苛刻。首先,OLE对象需要单击才能激活。其次,用户需要双击OLE对象才能实际获得可用的Windows资源管理器视图。最后,用户还需要双击Windows资源管理器视图中的文件。这其中的任何一步出现问题,都将导致失败。

在某些情况下,管理员可能会限制一些用户对某些文件夹或硬盘的浏览权限。这种情况下,嵌入Windows资源管理器对象就会很方便。例如,如果限制对C:盘的访问,则本地用户可以使用包含嵌入式Windows资源管理器的Office文档来绕过该限制。此外,该对象也可用于窃取NetNTLM哈希值,但这对于Office文档来说并不难,因此使用单击激活OLE对象是没有意义的。

Internet Explorer

当Shell.Explorer.1充当嵌入式Internet Explorer时,除了可以在文档中嵌入Web浏览器之外,它还允许我们浏览本地计算机上的文件,以及远程(共享和网站)上的文件。但这依然需要与用户产生交互,可以说这是无法避免的。单击激活也适用于此模式,单击该对象将触发Internet Explorer的文件下载功能,这将向用户弹出一个"文件下载"对话框。如果用户单击"运行"或"打开"(主要取决于文件格式),则将执行该文件。

某些文件类型(如EXE文件)还将会触发一个额外的警告对话框。但我们可以通过使用其他可执行文件类型,来避免该警告弹框(例如SettingContent-ms文件格式等)。

对于控件禁用IE保护模式,这将阻止其他对话弹框 - 如UAC对话框。因此,只需要单击两次就可以运行恶意代码,即单击激活,然后 运行/打开。Shell.Explorer.1对象,也是解决Office 2016/365中文件扩展名黑名单的一个很好的方法。因为,Shell.Explorer.1并未使用黑名单列表。

POC

以下PowerShell脚本将尝试创建包含嵌入式Internet Explorer对象的Word文档。该脚本使用Packager对象创建了一个看起来像是嵌入文件的对象,单击该对象将触发文件下载功能。

Microsoft Forms 2.0 HTML 控件

Microsoft Forms 2.0对象库包含许多可以在Office文档中使用的"HTML"ActiveX控件。这些控件在初始化时被标记为安全,并且不需要用户为嵌入它们的文档启用ActiveX。存储格式比Shell.Explorer.1对象简单得多。本质上,它是由对象的CLSID和HTML片段(UTF-16编码)组成的。HTML片段(HTML fragment)的格式正确与否并不重要,对象只会搜索它支持的属性。以下是支持action属性的两个对象:

- Forms.HTML:Image.1 (CLSID {5512D112-5CC6-11CF-8D67-00AA00BDCE1D})

- Forms.HTML:Submitbutton.1 (CLSID {5512D110-5CC6-11CF-8D67-00AA00BDCE1D})

单击设置了action属性的嵌入对象,将打开定义的URL。常规URL将在默认浏览器中打开,但文件URL(包括共享文件)将会被直接打开。这将弹出一个警告对话框,但此对话框与其他警告对话框略有不同,如下图所示。

Forms.HTML:Image.1支持src属性,可用于配置文档中显示的图像。使用图像可以伪装对象,例如将其伪装成嵌入文档诱使受害者点击它。

需要提醒的是,当Office文档包含Web标记时,将会弹出另外一个警告对话框,向用户表明它是从Internet下载的。此对话框的提示将更为明确,从一个远程攻击者的角度来看,这种技术并不实用。

POC

以下PowerShell脚本可用于创建具有嵌入Forms.HTML:Image.1对象的Word文档,单击该对象将打开计算器。

受保护视图

如上所述,当Office文档包含Web标记时,则会向用户表明它是从Internet下载的。这种情况下,文档将在受保护的视图中打开。在此模式下,将禁用文档中存在的任何嵌入对象。除非攻击者利用漏洞绕过受保护视图,否则攻击者就需要结合社工的技巧来欺骗受害者单击"启用编辑(Enable Editing)"。

防御

特别关注包含以下对象的文档:

- Shell.Explorer.1 / {EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B}

- Forms.HTML:Image.1 / {5512D112-5CC6-11CF-8D67-00AA00BDCE1D}

- Forms.HTML:Submitbutton.1 / {5512D110-5CC6-11CF-8D67-00AA00BDCE1D}

Shell.Explorer.1对象从对象中提取LNK文件,并检索ID列表查找单击对象时打开的内容。我们的GitHub上的ShellLink .NET类库可用于从LNK文件中读取ID列表。

HTML Forms对象更容易解析。作为防御者应该知道有多种方法可以在Office文档中存储对象。例如,ActiveX控件也可以嵌入作为PersistPropertyBag对象,其中对象的属性设置在XML文件中(例如,activeX1.xml)。

上述就是小编为大家分享的Office文档嵌入对象点击执行的技巧是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

对象 文件 文档 攻击 攻击者 用户 运行 对话 管理 受害者 对话框 资源 资源管理 安全 功能 方法 视图 保护 浏览 属性 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 监控服务器硬盘坏会怎么样 北京盈丰伟业网络技术有限公司 个人如何网络安全事件 网络安全最好的专科学校 网络技术团队队名 数据库第三版课后答案第四章 集中管理服务器平台 廊坊软件开发制作 要求重视保密制度和网络安全 外国服务器排行 软件开发什么项目挣钱 计算机三级网络技术目标规划 宁波鑫矿互联网科技 猫头鹰 网络安全 网络技术简单面试题 数据库系统工程师都考什么 实用计算机网络技术教程 3D设计软件开发工程师 平台软件开发合同模板 如何入侵网站数据库 光电信息技术从事软件开发 服务器常用的冗余技术 联想r650服务器怎么重装系统 数据库between范围 北京ios软件开发销售电话 省委网络安全委员会第二次会议 大学生网络安全的课件 总工会网络安全工程师招生 浙江云执网络技术有线公司 易语言怎么给数据库添加数据
0