跳到正文

Office 宏检查

Office Macro Inspector

从 .docm/.xlsm/.pptm 和老式 .doc/.xls 里取出 VBA 工程,逐个模块显示源码并高亮自动运行过程和危险调用,同时列出外部链接、DDE 域和 Excel 4.0 宏表。

启用宏的文档不会告诉你点下“启用内容”之后它会做什么;这个决定必须在代码运行之前做出。这里不在 Office 里打开文档就把 VBA 工程提取出来,把源码展示给你,连同文档里其他可以携带可执行行为的地方。

🔒 完全在你的浏览器里运行macrovbaofficethreat

文件只在你的浏览器里打开。不会执行任何宏,也不会发到任何地方。这是结构检查,不是杀毒——它告诉你这份文档长什么形状,不告诉你它是不是已知的恶意程序。

把 Office 文件拖进来

.docm .xlsm .pptm .dotm .xlam 这类宏文档,以及老式的 .doc .xls。.docx 或 .xlsx 也收,并会确认它里面没有宏。

怎么用

  1. 把文档拖进来

    `.docm`、`.xlsm`、`.pptm` 以及旧的 `.doc`/`.xls` OLE 格式都能读。文档从不交给 Office,所以什么都不会执行。

  2. 找自动运行的入口点

    `AutoOpen`、`Document_Open`、`Workbook_Open` 和它们的同类,一旦启用宏就会运行,不需要再点一下。它们被高亮,因为敌意文档就是从这里开始的。

  3. 读被标记的调用

    `Shell`、`CreateObject`、`WScript`、`URLDownloadToFile`、混淆过的字符串拼接——工具会高亮它们,而源码完整地摆在那里,你可以读到它们实际在做什么。

  4. 也检查非 VBA 的渠道

    外部链接、DDE 域和 Excel 4.0 宏表根本不需要 VBA 工程存在就能执行。正因如此,它们单独列出。

常见问题

它会告诉我文档是不是恶意的吗?

不会。它列出文档包含什么;判断是你的事。没有结论,没有评分,没有特征库,因为一个会说“安全”的工具,恰恰会在要紧的那些情况下说错。

它没找到宏。文件就干净了吗?

它的意思是没有找到 VBA 工程、DDE 域或 Excel 4.0 宏表。文档仍然可以带着嵌入对象、远程模板引用,或者针对解析器本身的漏洞利用,这些它一样都不找。

把可疑文件拖到这里安全吗?

文件在你的浏览器里作为字节解析,里面的任何东西都不会执行,也不会上传。这比在 Office 里打开它安全得多,这就是这个工具的意义。

VBA 源码看起来像乱码。

混淆在敌意宏里很正常——拆开的字符串、`Chr()` 运算、死代码。工具按文件里存储的样子展示源码,不尝试去混淆,所以你看到的就是文件里装的。

可以从这些接进来

接下来

这些工具吃得下当前工具的产出,结果可以直接送过去。