难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

本文是无文件恶意软件系列的一部分。 该系列的所有其他部分:

在本系列文章中,我们将探讨黑客只需付出最少努力的攻击方法。 在过去 文章 我们已经介绍了可以将代码本身插入到 Microsoft Word 中的 DDE 自动字段有效负载中。 通过打开网络钓鱼电子邮件中附加的此类文档,粗心的用户将允许攻击者在其计算机上获得立足点。 然而,2017年底,微软 关闭 这个漏洞用于攻击DDE。
该修复添加了一个注册表项来禁用 DDE函数 在Word中。 如果您仍然需要此功能,则可以通过启用旧的 DDE 功能来返回此选项。

不过,最初的补丁仅覆盖 Microsoft Word。 其他 Microsoft Office 产品中是否存在这些 DDE 漏洞,这些漏洞也可能在无代码攻击中被利用? 是的,当然。 例如,您还可以在 Excel 中找到它们。

活人之夜 DDE

我记得上次我停在 COM scriptlet 的描述上。 我保证我会在本文后面讨论它们。

同时,让我们看看 Excel 版本中 DDE 的另一个邪恶的一面。 就像在 Word 中一样,有些 Excel中DDE的隐藏功能 允许您毫不费力地执行代码。 作为一个从小长大的Word用户,我对这些领域很熟悉,但对DDE中的功能却一无所知。

我惊讶地发现在 Excel 中我可以从单元格调用 shell,如下所示:

难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

您知道这是可能的吗? 就我个人而言,我不

这种启动 Windows shell 的能力是由 DDE 提供的。 你还可以想到很多其他的事情
您可以使用 Excel 的内置 DDE 函数连接到的应用程序。
你和我的想法是一样的吗?

让我们的 in-cell 命令启动一个 PowerShell 会话,然后下载并执行链接 - 这 прием,我们之前已经使用过。 见下文:

难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

只需粘贴一点 PowerShell 即可在 Excel 中加载并运行远程代码

但有一个问题:您必须将此数据显式输入到单元格中,此公式才能在 Excel 中使用。 黑客如何远程执行此DDE命令? 事实是,当 Excel 表打开时,Excel 将尝试更新 DDE 中的所有链接。 信任中心设置长期以来能够禁用此功能或在更新外部数据源的链接时发出警告。

难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

即使没有最新的补丁,您也可以在 DDE 中禁用自动链接更新

微软本来就是自己 我劝告 2017年公司应禁用自动链接更新,以防止Word和Excel中的DDE漏洞。 2018年2007月,微软发布了Excel 2010、2013和XNUMX的补丁,默认禁用DDE。 这 文章 Computerworld 描述了该补丁的所有细节。

那么,事件日志呢?

尽管如此,微软还是放弃了 MS Word 和 Excel 的 DDE,从而最终认识到 DDE 更像是一个错误而不是功能。 如果由于某种原因您尚未安装这些补丁,您仍然可以通过禁用自动链接更新并启用在打开文档和电子表格时提示用户更新链接的设置来降低 DDE 攻击的风险。

现在的问题是:如果您是此攻击的受害者,从 Word 字段或 Excel 单元格启动的 PowerShell 会话是否会显示在日志中?

难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

问题:是否记录通过 DDE 启动的 PowerShell 会话? 答案:是的

当您直接从 Excel 单元格而不是作为宏运行 PowerShell 会话时,Windows 将记录这些事件(见上文)。 同时,我不能声称安全团队可以轻松地将 PowerShell 会话、Excel 文档和电子邮件之间的所有点连接起来并了解攻击从哪里开始。 我将在关于难以捉摸的恶意软件的永无休止的系列的最后一篇文章中回到这一点。

我们的COM怎么样?

在以前 文章 我谈到了 COM scriptlet 的主题。 它们本身很方便。 技术,它允许您将代码(例如 JScript)简单地作为 COM 对象传递。 但随后这些脚本被黑客发现,这使他们能够在受害者的计算机上站稳脚跟,而无需使用不必要的工具。 这 视频 来自 Derbycon 的演示展示了内置 Windows 工具,例如 regsrv32 和 rundll32,它们接受远程 scriptlet 作为参数,黑客基本上无需恶意软件的帮助即可进行攻击。 正如我上次展示的,您可以使用 JScript scriptlet 轻松运行 PowerShell 命令。

原来是一个很聪明的人 研究员 找到了运行 COM scriptlet 的方法 в Excel 文档。 他发现,当他尝试将文档或图片的链接插入单元格时,某个包被插入其中。 这个包悄悄地接受远程 scriptlet 作为输入(见下文)。

难以捉摸的恶意软件历险记,第五部分:更多 DDE 和 COM Scriptlet

繁荣! 另一种使用 COM scriptlet 启动 shell 的隐秘、静默方法

经过低级代码检查后,研究人员发现了它到底是什么 一个错误 软件包中的软件。 它并不是为了运行 COM scriptlet,而只是为了链接到文件。 我不确定是否已经有针对此漏洞的补丁。 在我自己使用预装 Office 2010 的 Amazon WorkSpaces 进行的研究中,我能够复制结果。 然而,当我稍后再尝试时,却没有成功。

我真的希望我告诉了你很多有趣的事情,同时表明黑客可以通过一种或另一种类似的方式渗透到你的公司。 即使您安装了所有最新的 Microsoft 补丁,黑客仍然可以使用许多工具在您的系统中站稳脚跟,从我开始本系列文章时使用的 VBA 宏到 Word 或 Excel 中的恶意负载。

在这个传奇的最后一篇(我保证)文章中,我将讨论如何提供智能保护。

来源: habr.com

添加评论