TMAegis
更多 office 规则

TMA-OFFICE-2.2.4.7.2.10

Ensure 'Prevent Excel from running XLM macros' is set to 'Enabled'

高级别 1自动化office

说明

This policy setting will prevent Excel from running Excel 4.0 (XLM) macros. XLM macros were first added to Excel in 1992 and were disabled in Excel (Build 16.0.14427.10000) by Microsoft in 2021. The recommended state for this setting is: Enabled. Rationale: XLM is data macro format from the early nineties that was not built with security in mind. Macros can be easily exploited and are a favorite hiding place of malicious code. User setting: the audit checks HKEY_USERS\<SID>\SOFTWARE\Policies\Microsoft\office\16.0\excel\security:xl4macrooff (REG_DWORD) in every loaded user hive (S-1-5-21-*) and is compliant when each holds 1. It prints 'no-user-hive-loaded' (FAIL) when no user profile is loaded, so scan while users are logged on.

检查方式

审计方法: Windows 注册表

registry
$sids = @(Get-ChildItem -Path 'Registry::HKEY_USERS' -ErrorAction SilentlyContinue | Where-Object { $_.PSChildName -match '^S-1-5-21-\d+-\d+-\d+-\d+$' } | ForEach-Object { $_.PSChildName }); if ($sids.Count -eq 0) { 'no-user-hive-loaded' } else { $bad = @(); foreach ($s in $sids) { $v = (Get-ItemProperty -Path ('Registry::HKEY_USERS\' + $s + '\SOFTWARE\Policies\Microsoft\office\16.0\excel\security') -Name 'xl4macrooff' -ErrorAction SilentlyContinue).'xl4macrooff'; if (-not ($null -ne $v -and @(1) -contains [int64]$v)) { $bad += $s + ':xl4macrooff=' + $v } }; if ($bad.Count -eq 0) { 'compliant' } else { 'non-compliant: ' + ($bad -join ', ') } }
预期输出
compliant

修复方式

修复方法: 操作指南或基础设施补丁

Configure through Group Policy (User Configuration): User Configuration\Administrative Templates\Microsoft Excel 2016\Excel Options\Security\Trust Center\Prevent Excel from running XLM macros = Enabled

属性

操作系统
任意
标签
officeproductivitycis-l1
参考
CIS Microsoft Office Enterprise Benchmark v2.0.0 - 2.2.4.7.2.10 Ensure 'Prevent Excel from running XLM macros' is set to 'Enabled'

检查本机

请在您有权审计的机器上运行此命令。扫描为只读操作。

shell
tmaegis scan --target office