英语 | 日语
2022 年 3 月 3 日,微软宣布将更改 Windows 上 Office 应用程序的默认行为,以阻止来自互联网的文件(例如电子邮件附件)中的宏。
公告摘录:
VBA 宏是恶意行为者获取访问权限以部署恶意软件和勒索软件的常见方式。因此,为提高 Office 的安全性,我们将更改 Office 应用程序的默认行为,以阻止来自互联网的文件中的宏。
...
此更改仅影响运行 Windows 的设备上的 Office,且仅影响以下应用程序:Access、Excel、PowerPoint、Visio 和 Word。
此更改将随版本 2203 开始推出,首先于 2022 年 4 月初面向当前频道(预览)发布。稍后,此更改将适用于其他更新频道,例如当前频道和月度企业频道。
这是针对恶意 Office 文档文件防御的一大改进。
根据该公告,是否阻止宏取决于文件的 MOTW(Mark of the Web)属性。网页浏览器和电子邮件客户端等应用程序会为来自互联网的下载文件和电子邮件附件添加 MOTW。MOTW 存储在 Zone.Identifier NTFS 备用数据流中。
为了阻止从压缩文件中解压出的恶意 Office 文档文件中的宏,压缩软件必须在压缩文件带有 MOTW 时将 MOTW 传播到解压出的文件。如果压缩软件不传播 MOTW,压缩文件中的恶意 Office 文档就可能绕过阻止。
由此产生了一个问题:“哪些压缩软件可以将 MOTW 传播到解压出的文件?” 因此,我测试了一些压缩软件并总结了结果。
| 名称 | 测试版本 | 许可证 | MOTW 传播 | 默认启用 | 备注 |
|---|---|---|---|---|---|
| Windows 资源管理器的"全部提取"内置功能 | Windows 11 25H2 | 专有 | 是 ✔️ | 是 ✔️ | |
| 7-Zip | 26.02 | GNU LGPL | 是 ✔️ | 否 ❌ *1 | |
| Bandizip | Standard Edition 7.45 | 免费软件 | 是 ✔️ | 是 ✔️ | 仅针对特定文件扩展名 *2 |
| CubeICE | 3.6.1 | 免费软件 / 专有 | 是 ✔️ | 是 ✔️ | |
| Explzh | 10.01 | 商业用途专有 | 是 ✔️ | 是 ✔️ | |
| File Compact | 8.00 | 专有 | 是 ✔️ | 是 ✔️ | |
| NanaZip | 6.5.1767.0 | MIT | 是 ✔️ | 是 ✔️ | 可配置为针对特定文件扩展名传播 *3 |
| PeaZip | 11.2.0 | GNU LGPL | 是 ✔️ | 是 ✔️ | |
| TC4Shell | 21.3.0(试用版) | 专有 | 是 ✔️ | 是 ✔️ | |
| Total Commander | 11.58(试用版) | 专有 | 是 ✔️ | 是 ✔️ | |
| WinRAR | 7.23(试用版) | 专有 | 是 ✔️ | 是 ✔️ | 默认仅针对特定文件扩展名 *4 |
| WinZip | 77.0(试用版) | 专有 | 是 ✔️ | 是 ✔️ | |
| Ashampoo ZIP Free | 1.0.7 | 免费软件(需要注册) | 否 ❌ |
*1:尽管 7-Zip 自 22.00 版本起就支持 MOTW 传播,但默认情况下是禁用的。您可以通过 7-Zip 文件管理器中的“工具” -> “选项” -> “7-Zip”的“Propagate Zone Id stream:”选项为 7-Zip GUI 启用该功能。

当您将该选项设置为“Yes”时,7-Zip 会将 MOTW 传播到所有解压出的文件。当您将其设置为“For Office files”时,7-Zip 会将 MOTW 传播到具有以下文件扩展名的文件:
您还可以通过将注册表 HKEY_CURRENT_USER\SOFTWARE\7-Zip\Options\WriteZoneIdExtract DWORD 设置为 1 来启用 MOTW 传播。
对于 7-Zip CLI,无论上述选项如何,都需要使用 -snz 开关才能传播 MOTW。
*2:根据 Bandizip 的文档,Bandizip 会将 MOTW 传播到具有以下文件扩展名的文件:
我之前使用一个只包含文本文件的 ZIP 压缩文件测试过 Bandizip,错误地认为 Bandizip 不会传播 MOTW。
*3:NanaZip 自 6.0 Preview 1 版本起默认启用了 MOTW 传播。您可以通过 NanaZip GUI 中“选项” -> “集成”的“Propagate Zone Id stream”选项进行配置。

当您将其设置为“For unsafe files”时,NanaZip 会将 MOTW 传播到具有以下文件扩展名的文件:
NanaZip 支持通过注册表使用系统级策略。这些策略会覆盖用户设置。
*4:WinRAR 7.0 引入了“Propagate Mark of the Web”选项。您可以选择以下值:
该选项仅由 WinRAR GUI 支持。无论该选项如何设置,WinRAR CLI 都不会传播 MOTW。

默认值为“对于可执行文件和 Office 文件”,WinRAR 会将 MOTW 传播到具有以下文件扩展名的文件:
当您将该选项设置为“对于 Office 文件”时,WinRAR 会将 MOTW 传播到具有以下文件扩展名的文件:
当您将该选项设置为“对于用户定义的类型”时,可以指定文件扩展名。
*5:IZArc 4.6 版本引入了“Propagate Mark of the Web”选项,并且默认启用。然而,无论该选项如何设置,IZArc 似乎都不会传播 MOTW。
在这些示例中,使用 Set-MOTW.ps1 手动为 ZIP 压缩文件 motw-test.zip 设置了 MOTW,然后使用 Get-MOTW.ps1 显示解压文件的 MOTW。Set-MOTW.ps1 和 Get-MOTW.ps1 可在我的 PS-MOTW 仓库中找到。
使用 Windows 资源管理器或 WinZip(28.0 版本除外)解压出的文件的 MOTW:

使用 7-Zip、Bandizip、File Compact、NanaZip 或 PeaZip 解压出的文件的 MOTW:

使用 CubeICE、Explzh、TC4Shell 或 WinRAR 解压出的文件的 MOTW:

使用 Total Commander 解压出的文件的 MOTW:

请参阅以下博客文章:
它们对于理解 MOTW 非常有帮助。
请通过 Issues 或 Pull requests 提供您的测试结果。因为我是日本人,对比表中包含一些您可能不知道的日本压缩软件。
请参阅关于 Mark-of-the-Web (MOTW) 的详细信息。该文章比较了 Windows 内置解压缩工具和 7-zip 的行为。您可以用类似的方式测试您喜欢的压缩软件。
我创建了 PS-MOTW,这是用于手动设置 / 显示 / 移除 MOTW 的 PowerShell 脚本。您可以用它来测试压缩软件。
请通过 Issues 提供详细信息,或通过 Pull requests 提供修复。我很乐意进行修正。
默认情况下,来自互联网的宏将在 Office 中被阻止
https://docs.microsoft.com/en-us/deployoffice/security/internet-macros-blocked
关于 Mark-of-the-Web (MOTW) 的详细信息
https://nolongerset.com/mark-of-the-web-details/
下载与 Mark-of-the-Web
https://textslashplain.com/2016/04/04/downloads-and-the-mark-of-the-web/
从红队视角看 Mark-of-the-Web
https://outflank.nl/blog/2020/03/30/mark-of-the-web-from-a-red-teams-perspective/
VHD 和 VHDX 文件的危险
https://insights.sei.cmu.edu/blog/the-dangers-of-vhd-and-vhdx-files/
颠覆信任控制:Mark-of-the-Web 绕过
https://attack.mitre.org/techniques/T1553/005/
Nobutaka Mantani (@nmantani)
| CAM UnZip | 5.25.4.0 | 商业用途专有 | 否 ❌ |
| PowerShell 的 Expand-Archive cmdlet | 7.6.4 | MIT | 否 ❌ |
| Express Zip | 11.28 | 商业用途专有 | 否 ❌ |
| IZArc | 4.6 | 免费软件 | 否 ❌ | 尽管提供了 "Propagate Mark of the Web" 选项 *5 |
| LhaForge | 2.0.1 | MIT | 否 ❌ |
| Lhaplus | 1.74 | 免费软件 | 否 ❌ |
| PowerArchiver | 22.10.02(试用版) | 专有 | 否 ❌ |
| StuffIt Expander | 15.0.8 | 免费软件 | 否 ❌ |
| Windows 11 的 tar.exe (bsdtar) | 3.8.4 | BSD 2-clause | 否 ❌ |
| Universal Extractor 2 | 2.0.0 RC 3 | GNU GPLv2 | 否 ❌ |
| ZipGenious | 6.3.2.3116 | 免费软件 | 否 ❌ |
| Zipware | 1.6 | 免费软件 | 否 ❌ |
| 名称 | 测试版本 | MOTW 传播行为 |
|---|
| Windows 资源管理器的"全部提取"内置功能 | Windows 11 25H2 |
|
| 7-Zip | 26.02 |
|
| Bandizip | Standard Edition 7.45 |
|
| CubeICE | 3.6.1 |
|
| Explzh | 10.01 |
|
| File Compact | 8.00 |
|
| NanaZip | 6.5.1767.0 |
|
| PeaZip | 11.2.0 |
|
| TC4Shell | 21.3.0(试用版) |
|
| Total Commander | 11.58(试用版) |
|
| WinRAR | 7.23(试用版) |
|
| WinZip | 77.0(试用版) |
|
可以。如果磁盘映像文件的格式不支持 NTFS 备用数据流,则无法为磁盘映像文件中的文件设置 MOTW。另请参阅以下内容:
2022 年 4 月 11 日更新:
根据 Didier Stevens (@DidierStevens) 的博客文章 .ISO Files With Office Maldocs & Protected View in Office 2019 and 2021,Office 2019 和 2021 使用受保护的视图来打开存储在带有 MOTW 的 ISO 文件中的 Office 文档。此行为于 2021 年 8 月引入。
2022 年 11 月 30 日更新:
根据 Bill Demirkapi (@BillDemirkapi) 的推文,微软通过 2022 年 11 月 8 日发布的安全更新修复了 Windows 上对 ISO 和 VHD 等虚拟磁盘容器文件 MOTW 的处理。当应用程序打开从互联网下载的虚拟磁盘容器文件中的文件时,这些文件将继承该虚拟磁盘容器文件的 MOTW。