防止执行Windows可执行文件

有没有办法告诉Windows(XP及以上)不执行文件(* .exe文件),这是存在于某些文件夹以外的驱动器/文件夹,我提到? 简而言之,我希望仅执行“ 白名单 ”的可执行文件。

我认为这比要求用户不要从他们从家里带来的任何垃圾CD运行任何可执行文件要好。

您需要软件限制策略 。 现代Windows的这个未充分利用的function允许pipe理员允许或限制基于path运行的可执行文件,甚至基于encryption签名。 顺便说一句,你不仅仅需要EXE。 软件限制策略有一个需要限制的30或40个额外types的文件(如CMD和SCR,屏幕保护程序)的列表。 另外,你可以阻止DLL的。

我认为它的有效性远远好于反病毒。同时,要教育用户关于现代恶意软件使用的社会工程攻击,例如让用户点击ListenToThisMusic.mp3.exe,很难。

我会小心这个。 你将无法百分之百地locking所有的东西,而且你将使这些机器几乎不可能让用户使用。 你应该看看教育你的用户,并把过程,政策和教育到位。 您需要在限制操作和最终用户生产力之间find适当的平衡。

我看到很多公司里浪费的$$$,他们让用户生活绝对地狱,只是为了让支持人员更容易些。

您可以在GPO中使用软件限制策略将其列入白名单,但我不确定它的效果如何。 我敢打赌,在大多数地方,与大多数非恶意用户一起工作的小甜甜圈,但我不敢打赌我的职业生涯在任何地方工作,我不会指望在我预期会受到攻击的地方如教育环境)。

你当然可以通过ACL和软件限制的组合来阻止代码从磁盘的某些设备和区域运行,这是一个有用的安全工具,但是我将它作为安全策略的一小部分,而不是一个基础。

您可以使用思科安全代理的规则(在“仅观看”期限后进行培训)阻止之前没有运行的任何可执行文件。

如果需要,您可以允许来自特定目录的可执行文件。

黑名单要比白名单容易得多。 最有可能你有一个你不想让用户运行的想法。 Windows处理这种情况的方式是通过GPO中的软件限制策略。 软件限制策略可用于允许软件运行以及拒绝运行。 有四种不同的方法可供使用,它们是:散列规则,证书规则,path规则和Internet区域规则。

散列规则规则在其匹配中使用文件的MD5或SHA-1散列。 这可能是一场艰苦的战斗。 试图用一个散列规则来阻塞像pwdump这样的东西,会导致对于每个不同版本的pwdump都有很多条目。 当新版本出来时,你也需要添加。

path规则基于文件系统上文件的位置。 所以你可以限制“\ program files \ aol \ aim.exe”为例子,但是如果用户select把它安装到“\ myapps \ aol \ aim.exe”中,它将被允许。 你可以使用通配符来覆盖更多的目录。 如果软件具有registry项,但是您不知道将在何处安装,则还可以使用registrypath。

证书规则对于包含证书的软件很有用。 这主要是商业软件。 您可以build立一个允许在您的系统上运行的Certs列表,并拒绝其他所有内容。

Internet区域规则仅适用于Windows安装程序包。 我从来没有使用过,所以我不能评论它。

一个适当的GPO将使用这些规则中的几个来涵盖一切。 限制软件要求你真正想到你想要阻止的事情。 即使如此,它可能仍然是不正确的。 Technet在使用软件限制政策方面有一些很好的文章,我相信通过您最喜爱的search引擎,微软网站上还有其他的优秀文档。

祝你好运!