|
||||
这条规则本意是阻止所有被指派的文件从Local Settings目录(包括其子目录)启动,但是经过验证发现,“**”和“*”是完全等效的,并且“*”不包括“\”。那么这条规则的实际意思就是“阻止所有被指派的文件从Local Settings的一级目录运行”,不包括Local Settings目录本身,也不包括二级及其下的所有子目录。我们来看看Local Settings目录下的一级目录有哪些呢?默认情况下是:Temp、Temporary Internet Files、Application Data、History,那么这条规则里就包括有禁止TEMP目录下的所有被指派的文件运行的意思,其根本结果就是会造成很多软件无法安装。因为有些软件在安装时会先行解压到TEMP目录。
影响最大(简直可以列入本年度十大最错误的做法中了)的一条:?:\autorun.inf “不允许的”
相信对软件限制策略有研究的筒子都见过这条规则吧,这条规则的本意是阻止所有盘根目录下的autorun.inf文件运行,以阻止U盘病毒的运行。它也确实达到了它的目的, autorun.inf文件双击的时候被阻止了。但病毒被阻止了吗?答案是否定的,病毒还是会被正常运行。
为什么呢?我们来了解一下系统是怎么处理autorun.inf文件的。
首先,svchost.exe读取autorun.inf,然后explorer.exe读取autorun.inf,再然后explorer.exe将 autorun.inf里的相关内容写入注册表中MountPoints2这个键值。只要explorer.exe成功写入注册表,那么这个autorun.inf文件的使命就完成了,U盘里的病毒就等着你去双击U盘了。
那么我们的软件限制策略中,将autorun.inf设为”不允许的”这一做法在这个过程中起到什么作用?
很遗憾地告诉你:没有任何作用。
真要说它起到的作用,仅仅是阻止你打开autorun.inf这个文件而已。所以,对于autorun.inf的所有策略,都是无效的。
真要想防止U盘病毒的运行,策略的设置只有一种方法:
?:\*.*不允许
意思就是阻止所有盘下面的被指派文件运行。当然,如果你只想阻止U盘下的文件运行的话,那就将规则里的“?”改为具体的盘符即可。
下次我们介绍组策略规则的权限分配及继承。