Macrome 项目使用教程
1. 项目介绍
Macrome 是一个专为红队和分析师设计的 Excel 宏文档读写工具。它允许用户创建包含宏的 Excel 文档,并支持对宏进行混淆处理,以提高安全性。Macrome 支持多种操作模式,包括构建模式、转储模式和反混淆模式,适用于不同的使用场景。
2. 项目快速启动
2.1 安装与构建
首先,克隆或下载 Macrome 项目仓库:
git clone https://github.com/michaelweber/Macrome.git
然后,使用 dotnet
命令运行或构建项目:
dotnet run -- build --decoy-document Docs/decoy_document.xls --payload Docs/popcalc.bin
或者,构建项目并运行生成的二进制文件:
dotnet build
cd bin/Debug/netcoreapp2.0
dotnet Macrome.dll deobfuscate --path obfuscated_document.xls
2.2 使用示例
以下是一个使用 Macrome 构建包含宏的 Excel 文档的示例:
dotnet Macrome.dll build --decoy-document path/to/decoy_document.xls --payload /path/to/shellcode.bin
此命令将生成一个包含宏的 Excel 文档,当用户打开文档并启用宏时,将执行指定的 shellcode。
3. 应用案例和最佳实践
3.1 红队渗透测试
Macrome 可以用于红队渗透测试中,通过创建包含恶意宏的 Excel 文档,诱导目标用户启用宏,从而执行恶意代码。例如,可以使用 Macrome 生成一个包含反弹 shell 的 Excel 文档,用于远程控制目标系统。
3.2 安全分析
分析师可以使用 Macrome 对现有的 Excel 宏文档进行反混淆处理,以便更好地分析文档中的宏代码。例如,可以使用 Macrome 的反混淆模式来解密被混淆的宏代码,以便进行进一步的安全审计。
4. 典型生态项目
4.1 EXCELntDonut
EXCELntDonut 是一个与 Macrome 类似的工具,专门用于生成包含恶意宏的 Excel 文档。它支持将 .NET 程序集嵌入到 Excel 文档中,并自动生成相应的宏代码。EXCELntDonut 可以与 Macrome 结合使用,以生成更加复杂的恶意文档。
4.2 Donut
Donut 是一个用于生成 shellcode 的工具,支持将 .NET 程序集转换为 shellcode。Donut 生成的 shellcode 可以直接作为 Macrome 的 payload 使用,从而实现将 .NET 程序集嵌入到 Excel 文档中的功能。
通过结合这些工具,用户可以创建高度定制化的恶意 Excel 文档,适用于各种渗透测试和安全分析场景。