如果计算机上的防病毒软件通知 Office 应用程序 ((如 Word、Excel 或 PowerPoint)) 文件中的 VBA) 或 Excel 4.0 (XLM) 宏Visual Basic for Applications (执行了防病毒软件认为是恶意的操作,则会出现此对话框。
注意
Excel 4.0 (XLM) 宏是使用旧宏语言创建的宏,它们仅在 Excel 中运行。 尽管 Microsoft 365 专属 Excel仍运行 XLM 宏,但我们鼓励你将它们迁移到最新版本的 Microsoft Visual Basic for Applications (VBA) 。
什么是宏?它们是由谁创建的?什么是安全风险?
宏可自动执行经常使用的任务,从而节省键击和鼠标操作的时间。 如果您一遍又一遍地执行相同的操作,您可以将这些步骤记录为宏,以便宏可以为您执行这些步骤,从而节省您的时间。
许多Visual Basic for Applications (是使用 VBA) 创建的,并由软件开发人员编写。 但是,某些 VBA 宏会引发潜在的安全风险。 具有恶意意图的人经常使用宏来悄悄地将恶意软件(例如病毒)安装到计算机上或组织的网络中。
这是怎么发生的?
从 Windows 10 开始,Windows 中提供了反恶意软件扫描接口 (AMSI) 功能。 此功能允许系统上运行的应用程序(如 Word 或 PowerPoint) ) (有关应用程序中运行的脚本或宏行为的信息传递给计算机上运行的支持 AMSI 接口的反恶意软件服务。 然后,如果操作模式看起来有害,防病毒软件会在 Office 运行代码之前通知 Office。
如果防病毒软件发现宏正在执行恶意操作,Office 会通知你,然后终止 Office 进程,而无需运行恶意指令。
如果看到此对话框...
打开的文件可能试图执行防病毒软件认为是恶意的操作。
如果你认为某个 Office 文件被不正确地报告为恶意文件,可以将文件移至 Office 中属于“可信位置”功能的位置、 将文件的当前位置添加到“受信任的位置”,或对 文档中的 VBA 宏进行数字代码签名。
注意
无法对 Excel 4.0 (XLM) 宏签名。
如果在执行步骤 2 中的某个操作后,该文件仍被报告为恶意文件,则你可能已将恶意软件运行时扫描功能的设置设置为验证所有文件,而不考虑信任程度。 可以使用 组策略 配置何时启用 AMSI 扫描 (请参阅下面的) 。
恶意软件运行时扫描功能的设置
默认情况下,Office 将为 Office 文件中运行的 VBA 或 XLM 宏启用恶意软件运行时扫描。
有两个例外:
- 文件是从使用 Office 应用程序注册的受信任位置之一打开的。 有关详细信息,请参阅: 添加、删除或更改受信任的位置。
- 该文件包含由受信任的签名提供程序进行数字代码签名的 VBA 宏。 有关详细信息,请参阅: 对宏项目进行数字签名。
此行为可通过组策略设置宏运行时扫描范围控制。
如果你的设备由组织管理,则必须联系 IT 管理员才能更改此设置。