VBA脚本文件重定向

渗透技巧 12个月前 admin
305 0 0
VBA脚本文件重定向
VBA脚本文件重定向

1. 简介

VBA脚本文件重定向
VBA脚本文件重定向

 通过Office文档进行宏攻击是一种非常常见的手段,宏的功能十分强大,将Office文档中嵌入以VBA(Visual Basic for Applications)编写的宏代码脚本,当运行Office文档时,便可以执行各种命令。但是宏代码通常很难隐藏,分析人员可以直接打开宏编辑器查看宏的源码,分析脚本的功能。虽然微软提供了工程加密工具对脚本进行保护,在打开编辑器时需要输入密码进行验证后才能查看脚本,但是这种加密可以通过替换脚本中的加密模块进行验证绕过。VBA脚本文件重定向能够将脚本默认文件vbaProject.bin进行替换,在打开文本时加载其他文件,增加分析者的分析复杂程度。

VBA脚本文件重定向
VBA脚本文件重定向

2. vbaProject.bin

VBA脚本文件重定向

    在 Office 2007 之后的 Office 文档格式采用的是 OOXML 标准格式。那什么是 OOXML 标准?这里的 OOXML 的全称是 Office Open XML File Formats 或被称为 OpenXML 格式,这是一个基于 zip+xml 定义的文档格式。简单的说就是Office文档是一些xml文档压缩文件,因此我们将一个word文档进行zip解压,可以获得一些xml文件,其解压结果如下。

VBA脚本文件重定向

当文档中包含宏时,在word目录下会有一个二进制文件,其名字为vbaProject.bin,该文件保存了宏代码。

VBA脚本文件重定向

vbaProject是宏默认工程的名字,那如果我们修改宏工程的名字,Office文档的解压文件是否会改变?答案是不会,即使改了工程名,在Office文档中依然使用vbaProject.bin作为脚本的名字。例:我们创建一个新的Office文档,编写宏代码,将宏代码工程的名字名为为myproj,之后将Office文档解压,发现解压后vbaProject.bin的名字没有变化。

VBA脚本文件重定向

VBA脚本文件重定向
VBA脚本文件重定向

3. 脚本重定向

VBA脚本文件重定向

    假设我们有这样的需求,将vbaProject.bin文件进行伪装,如一个WORD文档中有styles.xml的文件,我们将vbaProject.bin替换为styIes.xmI(使用大写的i来伪装小写L),用以欺骗分析者的眼睛,使其很难找到脚本文件,无法进行密码替换,这便是脚本重定向。

VBA脚本文件重定向

    要实现脚本重定向,需要将vbaProject.bin的名称修改为styIes.xmI,之后还需要再修改三个文件,保证该文件可以被正常打开,其中一个文件是根目录的[Content_Types].xml,另外两个文件在解压目录的word_rels文件夹中。

VBA脚本文件重定向

    [Content_Types].xml中需要添加一个标签,内容为:

<Default Extension="xmI" ContentType="application/vnd.ms-office.vbaProject"/>

    这一步是为了让Office文档去读取xmI(I是大写的i)文件来获取宏代码,在添加时我们可以观察原始配置信息,WORD文档是通过读取.bin为后缀的文件来获取宏代码。

VBA脚本文件重定向

    完成标签添加后,打开word_rels文件夹,修改vbaProject.bin.rles文件的名字,将其修改为styIes.xmI.rels,然后打开document.xml.rels,搜索vbaProject.bin,找到后将其修改为styIes.xmI,与文件进行关联。

VBA脚本文件重定向

    上诉内容修改完成后,将word文件重新压缩,并修改后缀即可,打开文件发现文件可以正常打开,宏也可以正常运行,在做重定向时文件名和配置信息可以根据个人需求进行替换。

VBA脚本文件重定向
VBA脚本文件重定向

4. 总结

VBA脚本文件重定向
VBA脚本文件重定向
VBA脚本文件重定向

VBA脚本文件重定向通过修改Office文件加载宏方式,替换脚本文件来达到伪装的目的,反之,我们可以通过查看[Content_Types].xml和document.xml.rels文件查看Office文档是否对脚本文件进行重定向来发现其中的威胁。

VBA脚本文件重定向
VBA脚本文件重定向

——The  End——

VBA脚本文件重定向
VBA脚本文件重定向

丈八网安蛇矛实验室成立于2020年,致力于安全研究、攻防解决方案、靶场对标场景仿真复现及技战法设计与输出等相关方向。团队核心成员均由从事安全行业10余年经验的安全专家组成,团队目前成员涉及红蓝对抗、渗透测试、逆向破解、病毒分析、工控安全以及免杀等相关领域。

原文始发于微信公众号(蛇矛实验室):VBA脚本文件重定向

版权声明:admin 发表于 2023年5月12日 下午6:01。
转载请注明:VBA脚本文件重定向 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...