⑴首先,svchost.exe 读取 autorun.inf,然后 explorer.exe 读取 autorun.inf,再然后 explorer.exe 将 autorun.inf 里的相关内容写入注册表中 MountPoints 这个键值。只要 explorer.exe 成功写入注册表,那么这个 autorun.inf 文件的使命就完成了,U盘里的病毒就等着你去双击U盘了。
⑵那么我们的软件限制策略中,将 autorun.inf 设为“不允许的”这一做法在这个过程中起到什么作用?
⑶很遗憾地告诉你:没有任何作用。
⑷真要说它起到的作用,仅仅是阻止你打开 autorun.inf 这个文件而已。所以,对于 autorun.inf 的所有策略,都是无效的。
⑸真要想防止U盘病毒的运行,策略的设置只有一种方法:?:*.*不允许 意思就是阻止所有盘下面的被指派文件运行。当然,如果你只想阻止U盘下的文件运行的话,那就将规则里的“?”改为具体的盘符即可。当然还有其它很多办法来防止U盘病毒的,这个我会在文后附上其它解决方法的,欢迎筒子们进行验证。让我们去伪存真,找到最好的解决办法吧:)
⑹、规则的权限分配及继承
⑺这里的讲解的一个前提是:假设你的用户类型是管理员。
⑻在没有软件限制策略的情况下,如果程序a启动程序b,那么a是b的父进程,b继承a的权限
⑼现在把a设为基本用户,b不做限制(把b设为不受限或者不对b设置规则效果是一样的)然后由a启动b,那么b的权限继承于a,也是基本用户,即:
⑽a(基本用户)-> b(不受限的)= b(基本用户)
⑾若把b设为基本用户,a不做限制,那么a启动b后,b仍然为基本用户权限,即
⑿a(不受限的)-> b(基本用户)= b(基本用户)
⒀可以看到,一个程序所能获得的最终权限取决于:父进程权限 和 规则限定的权限 的最低等级,也就是我们所说的最低权限原则
⒁若我们把IE设成基本用户等级启动,那么由IE执行的任何程序的权限都将不高于基本用户级别,只能更低。所以就可以达到防范网马的效果——即使IE下载病毒并执行了,病毒由于权限的限制,无法对系统进行有害的更改,如果重启一下,那么病毒就只剩下尸体了。
⒂甚至,我们还可以通过NTFS权限的设置,让IE无法下载和运行病毒,不给病毒任何的机会。
⒃这里,我们来看一下NTFS的权限(这里的权限是NTFS权限,与规则无关)。NTFS的所有权限如下:
⒄遍历文件夹/运行文件 (遍历文件夹可以不管,主要是“运行文件”,若无此权限则不能启动文件,相当于AD的运行应用程序)
⒅允许或拒绝用户在整个文件夹中移动以到达其他文件或文件夹的请求,即使用户没有遍历文件夹的权限(仅适用于文件夹)。
⒆列出文件夹/读取数据
⒇允许或拒绝用户查看指定文件夹内文件名和子文件夹名的请求。它仅影响该文件夹的内容,而不影响您对其设置权限的文件夹是否会列出(仅适用于文件夹)。
⒈允许或拒绝查看文件中数据的能力(仅适用于文件)。
⒉允许或拒绝用户查看文件或文件夹属性(例如只读和隐藏)的请求。属性由 NTFS 定义。
⒊创建文件/写入数据
⒋“创建文件”允许或拒绝在文件夹中创建文件(仅适用于文件夹)。“写入数据”允许或拒绝对文件进行修改并覆盖现有内容的能力(仅适用于文件)。