我正在尝试采取一些额外的恶意软件预防措施,通过限制在少数位置执行 *.exe - 特别是当用户可能选择直接从 Zip 文件打开可执行文件时,各种压缩工具解压到的临时文件夹。
来自 TechNet 文章,http://technet.microsoft.com/nl-nl/library/cc786941%28v=ws.10%29.aspx:
您可以在路径规则中使用环境变量。由于路径规则是在客户端环境中评估的,因此使用环境变量(例如 %Windir%)的能力允许规则适应特定用户的环境。
...
路径规则可以包含 ? 和 * 通配符,允许诸如“*.vbs”之类的规则匹配所有 Visual Basic Script 文件。以下示例说明了通配符的用法:
- “\DC-??\login$” 匹配 \DC-01\login$、\DC-02\login$
- “*\Windows” 匹配 C:\Windows、D:\Windows、E:\Windows
- “c:\win*” 匹配 c:\winnt、c:\windows、c:\windir
我有这些路径规则(我已单独应用它们以及以各种组合应用它们):
%APPDATA%\*.exe
%APPDATA%\*\*.exe
%LOCALAPPDATA%\*.exe
%LOCALAPPDATA%\*\*.exe
%TEMP%\*.exe
%TEMP%\7z*\*.exe
%TEMP%\wz*\*.exe
%TEMP%\Rar*\*.exe
...理论上应该表示直接位于用户临时文件夹下的可执行文件,以及以 Winzip、WinRAR 和 7-zip 可能命名其临时文件夹的方式命名的临时文件夹中的可执行文件(例如%TEMP%\7zSF20.tmp\the_file.exe
)。
和有效;%APPDATA%
无效。%LOCALAPPDATA%
%TEMP%
出现在 %TEMP% 下被阻止,但这只是因为在默认设置下,它们也符合%LOCALAPPDATA%\*\*.exe
规则(默认情况下,Temp 位于 AppData\Local 下)。
我原本以为这是部分文件夹名称中的通配符的问题,但看起来这是特定于 %TEMP% 变量的使用的问题(因此重写)。
我已经确认的两种解决方法(以及我不愿意使用它们的原因)是:
%LOCALAPPDATA%\Temp
代替使用%TEMP%
- 严格来说,这是不正确的,因为
%TEMP%
变量可以设置为不同于%LOCALAPPDATA%\Temp
。
- 严格来说,这是不正确的,因为
使用
%HKEY_CURRENT_USER\Environment\TEMP%
- 基于注册表的路径规则似乎适用于所有子文件夹——我更喜欢稍微轻松一点的方式(这样我就不必到处去白名单一切别的)
- 基于注册表的规则似乎受到限制,因此您无法拥有更具体的规则,例如
%HKEY_CURRENT_USER\Environment\TEMP%\7z*\*.exe
- 我后来发现
%HKEY_CURRENT_USER\Environment\TEMP%7z*
会接近(\
变量和子文件夹之间不应该指定,并且之后不能指定文件名掩码)
- 我后来发现
- 从技术上来说这也是不正确的,因为这个注册表位置只包含应该在开始流程本身,而不是流程可能会被改变成什么在过程中该过程 - 例如,如果您打开命令提示符,
SET TEMP=C:\
从提示符发出并运行该程序,它将不适用)。
(不管怎样,我尝试在 GPO 的计算机和用户部分中同时独立配置 SRP,以防一个覆盖另一个,或者%TEMP%
在计算机和用户级别以不同的方式解析。)
这个变量有什么特殊之处,%TEMP%
以致它不适用于此,而类似的变量%LOCALAPPDATA%\Temp\\wz*\\*.exe
却适用?
更新:
看来该限制专门针对%TEMP%
环境变量。我已经编辑了该问题。
答案1
当您在 cmd.exe 或 command.com 中检查 %TEMP% 的内容时,程序可能会看到与您不同的内容。有时它们不一样。
但无论如何,在软件限制策略中使用环境变量是一个坏主意,因为恶意软件可以改变该变量。
答案2
我用它来阻止来自 %TMP% 和 %TMP%*\ 的 exe 文件,它看起来很奇怪,但它在 Win7 pro 客户端上运行良好,启用了 UAC,当前用户没有管理权限。
%HKEY_CURRENT_USER\Environment\TEMP%*exe
%TEMP%\*\*.exe
我尝试使用%TEMP%\Rar*\*.exe
并成功阻止了从%TEMP%\Rar15\putty.exe
和从运行%TEMP%\Rar14.tmp\putty.exe
我认为 %TEMP% 可能没有什么特别之处。我仔细检查了一下,我使用的注册表项路径不会影响%TEMP%\Rar*\*.exe
答案3
请尝试以下操作:
%HKEY_CURRENT_USER\Environment\TEMP%7z*/*.exe
在关闭 % 后省略反斜杠 (\),然后对子目录使用正斜杠 (/)
我找到了这个参考: https://www.sysadmins.lv/blog-en/software-restriction-policies-rule-creation.aspx