测试所用环境:

McAfee ePO 5.10.0

Endpoint Security 套件 10.6.1

=========================================

在Endpoint Security Threat Prevention中,有一个“访问保护”策略,其中可以自定义规则,通过识别可执行文件(PE)的数字签名的“签名者”,来排除或禁止某些可执行文件运行。

此功能相较于Windows系统自带的数字证书策略更为灵活,因为它不去验证完整的数字签名,只检查数字签名的“签名者”信息。

比如,管理员希望在公司系统中禁用360全家桶,恰好这些全家桶安装包都是带数字签名的。但仔细观察可发现,全家桶中不同产品、不同时期发行的,数字签名所用的证书都有所不通。如果使用Windows的数字证书策略禁止,需要把许多个证书加入“不信任”分组中,即便是域环境,初始工作量也很大。而且无法避免360以后再签发新的证书。

使用“访问保护”策略,可以更为简单。(具体操作方法后附。)只需要定义一次数字签名的“签名者”,即可识别360全家桶。即便是在不同时期签发的证书,其“使用者”(即数字签名的签名者)基本不会变化。“签名者”的定义以如下形式表现:

C=CN, S=BEIJING, L=BEIJING, O=\"BEIJING QIHU TECHNOLOGY CO., LTD.\", OU=*, CN=\"BEIJING QIHU TECHNOLOGY CO., LTD.\"

可注意到,上面OU元素后面跟随的是通配符。在其他元素中同样可以使用通配符。

*********************此处为重点******************

在McAfee的策略中通过数字签名定义可执行文件,需要遵循如下规则:

(有一些限制在McAfee的官网中没有说明,是我们在试验时发现的。)

1、以颠倒的元素顺序排列,使用半角逗号分隔,不得换行(指不能有换行回车符);

2、如果某个元素的值中含有半角逗号,那么这个值需要用半角双引号圈起来。反之,如果一个元素的值中没有半角逗号,则不得使用双引号;

3、在Windows系统中,字母不区分大小写;

4、元素的值可以使用通配符(*);

5、元素不能少,元素的顺序不能乱;

6、部分“签名者”信息只能在ePO中录入,在Endpoint Security Threat Prevention软件中录入会提示错误。比如含有中文字符或者含有E(e-mail)元素的;

7、元素、值和等号之间不能有空格。如“C=CN”是正确的,“C = CN”及“C =CN”都是错误的。

 

***********最佳实践***********

用Endpoint Security Threat Prevention阻止带有特定数字签名的程序运行(以360/奇虎全家桶为例)。

在ePO主菜单中,找到“策略目录”,选中“Endpoint Security Threat Prevention”产品,再选中“访问保护”,编辑下发的策略(规则)。

进入到编辑模式后,点击“显示高级”,展开高级编辑视图。在“规则”编辑中,点击“添加”,新增一条规则。

给规则起个名字,比如“按数字签名阻止程序运行”。选中“阻止”和“报告”。“可执行文件”和“用户名”两处均默认留空,表示任何可执行文件和任何用户名。

在下方“子规则”处点击“添加”,进入子规则编辑视图。

为子规则起个名字,比如“阻止特定签名程序运行”。“子规则类型”选择“进程”,“操作”选择“运行”。

在下方“目标”处点击“添加”,添加一个可执行文件的特征描述。

起个名字,比如“360-1”。“包含状态”默认选择“包含”。勾选“启用数字签名检查”,单选“签名者”,输入信息如下:

C=CN, S=BEIJING, L=BEIJING, O=\"BEIJING QIHU TECHNOLOGY CO., LTD.\", OU=*, CN=\"BEIJING QIHU TECHNOLOGY CO., LTD.\"

依次点击四次“保存”按钮,存储修改过的策略。

如需添加更多“签名者”,则重复最后的步骤即可。

收藏 打印