查看: 74370|回复: 301
收起左侧

[其他相关] 如何走进comodo的世界【规则篇】

  [复制链接]
柯林
发表于 2010-1-15 18:59:48 | 显示全部楼层 |阅读模式
本帖最后由 柯林 于 2010-1-21 11:16 编辑

本文写给新手做参考,依据所接触的资料及个人经验进行整理,文中错误之处,请大家多多批评指正。

为了简明扼要地说明,本文用五个小篇章来阐述如何使用comodo,主要是规则方面的说明。对于comodo各个界面上各种选项的说明,不是本文的内容,请参阅论坛上的相关教程贴。文中所述以V3为例子,基本原理是各个版本都适用的,至于各个版本的差别所带来的变化,只需作相应的变更即可。

第一章:基本介绍

comodo如何用?这个问题取决于你的安全需要。如果你的安全需要不高,直接用默认的安全模式再搭配一款像样的杀软即可。如果你的安全需要有点高,那么还是自己打磨吧。

怎么打磨?就是把规则按照自己的需要进行规划布局和修改完善。

如何规划布局?这个由个人的全局统筹安排能力及逻辑思维能力来体现,,说白了就是根据自己掌握的知识以及对HIPS的相关了解,构思一个防御方案后进行编辑调整。

多余的话就不扯了,就从人人都会的地方开始吧——选择一个comodo自带的防御方案(或者叫做策略),在它的基础上经过一些简单的修改和规则的添加,打磨出自己的规则来。

就选proactive这个策略吧。点击COMODO-proactive Security,再点击“激活”,当策略名后面出现“活动”字样时,就表示启用了这套方案(见下图):


选这个,是因为它的监控项目很全面(见下图)【图中打勾的就是监控的项目】:


动手之前先做个简明的分析:

1、comodo的监控是如何起作用的?

一切HIPS都是依据规则进行判断和过滤的,comodo也不例外。请打开“D+高级设置”的“计算机安全规则”,这里面是D+规则的总监控室和指挥中心,一切程序行为的判断都是以这里面的规则为依据的。当一个程序行为发生,如果处于comodo的监控范围内,comodo就会调用这里面的规则来加以比对和执行——有规定的就按规定处理,无规定的由全局规则处理。所谓全局规则,就是这里面垫底的那条“所有应用程序*”的规则,因为*代表任何程序,所以它是对所有程序都起作用的规则。当我们打开这条全局规则进行查看时,会发现里面全部选项都是询问,这样,当comodo调用这条规则来进行判断的时候,就会弹出询问窗口给用户选择。当用户勾选弹窗上的“记住我的选择”,comodo就把它当作用户的设定自动在“计算机安全规则”里添加一条规则;如果不勾选“记住我的选择”,则用户的选择只对本次操作有效,comodo将不会在“计算机安全规则”里添加规则,下次面对同样问题时,comodo依然会弹出窗口让用户选择。(相关图片如下):


D+的操作判断,是以“计算机安全规则”里面的规则为依据的。里面的规则是以程序为单位的,每个程序一条规则。每一条应用程序规则都包含了3D的内容——毛豆的HIPS是把3D行为全部集中到一个程序规则里面进行管理的。

每一条应用程序规则打开后,显示如下画面:


“访问权限”是对程序的授权——允许它做什么和不允许它做什么。

“保护设置”是对程序的保护——不允许其它程序对它做这些事情,相当于放进“保险箱”。

一般来说,对于系统主要进程、杀毒软件等重要的进程,可以进行“保护设置”把它们放进“保险箱”,防止恶意程序对它们的破坏。

现在,让我们暂时忘记“保护设置”,集中精力于“访问权限”的设置——绝大部分的操作设置都是在这里面进行的。

点击“访问权限”,弹出编辑画面,上面显示了3D的各项内容。如果你习惯了其它HIPS3D分开进行设置的话,到了comodo这里就要转变习惯。所有的3D规则设置,全部在一条程序规则的编辑画面上进行完成,实际上也很方便。

细看编辑画面,你会发现,大部分都是AD的项目,FDRD的项目各有一项:


AD设置里面的“受保护的com接口”和RD设置里面的“受保护的注册表”以及FD设置里面的“受保护的文件/目录”,是援引D+“常规设置”里面的“我的受保护文件”、“我的受保护的注册表”、“我的受保护的COM接口”里面设定的保护项目来作规则内容的(见下图):


可以通过“常规设置”里面的受保护文件、受保护注册表、受保护COM接口来加大监控范围。注意,当你添加相关保护设置的时候,一定要注意,仅仅在“组(G...”里面添加是不起作用,必须要引入受保护的项目里面才有用。新手刚开始学用comodo的时候,沿用官方给定的默认保护内容即可。

这里注意一下,我们自己设置程序分组以便在“计算机安全规则”里面进行使用时,程序分组是在“我的受保护文件”里面进行添加设置的(见下图):


关于程序分组加以引用的问题,后面再说,这里暂且放下。

2、comodo的规则流程及逻辑关系是怎样的?

ComodoD+执行规则判定时,会首先检查“常规设置”的“我的拦截文件”里有无设置需要保护的文件,若有,则禁止任何程序访问那些文件——禁止读取、修改、创建、删除。Comodo基本上是不防读取的,只有“我的拦截文件”里面的东西除外。如果你有私密的文件需要保护,请放入“我的拦截文件”里。注意,放入该区里面的文件禁止任何程序访问,包括你自己也不能访问,你若想访问它们,请把里面的相应规则删除,或者暂时禁用D+

检查过“我的拦截文件”后,转入“计算机安全规则”里进行规则的查找和匹配。依据从上到下的顺序加以查找匹配,依据程序路径快速查找规则,找到就加以检查,有适合的规定的就加以执行,无则继续向下查找,如果一直找不到就由全局规则(所有应用程序*)来处理(见下图):


找到合适的应用程序规则之后,按照该条程序规则里面设定的内容进行处理。每条应用程序规则里面同一项目的相关规定,它们之间的优先级别是:

修改/允许的内容>修改/阻止的内容>允许/阻止>询问(见下图):


同一项目的规则执行按照上图所示的优先级顺序加以执行。“修改”里面的内容可以对前边设置的内容(询问,允许、阻止)进行覆盖,类似于例外排除。例如,当我们设定阻止一个应用程序访问其它程序内存的时候,如果想添加几个允许它去修改内存的程序,就可以打开“修改”的编辑画面添加例外允许。由于“修改”里面的内容优先级较高,习惯上称之为“优先允许”和“优先阻止”。

善于应用优先级关系进行组合,可以编制出满意的规则,这个问题留待后面讨论。这里注意一下,优先级3的“允许”和“阻止”是同级的关系,不存在谁优先于谁的问题,选哪个就按哪个执行。

当我们开始制作一套简单的规则时,“计算机安全规则”里面实际上只有两条应用程序规则与该程序相关,对该程序起作用。一条是该应用程序的规则,一条是全局规则,它们之间的关系及规则的执行顺序流程如下:


小结一下:“计算机安全规则”里面的规则执行,是按照从上到下的顺序加以查找匹配的。同一条应用程序规则里面,操作的优先顺序是“优先允许”>“优先阻止”>“允许/阻止”>“询问”。如果有两条或两条以上的规则涉及同一程序,那么,将会按照从上到下的关系,首先执行完上面规则的“优先允许/优先阻止”、“允许/阻止”的精确操作后,才会执行下面规则的相关操作。如果上面的规则已经允许了相关行为,下面的规则再对同一行为设置阻止,下面这条规则就是废物。认真领会些逻辑关系,将帮助你写出正确、有效的规则。

3、哪些项目影响方案的强度?

     在我们正式动手打磨规则之前,概览一下,看看有哪些方面会影响防御方案的强度。

大致上说,因素有这么一些:

●所用模式:疯狂模式,安全模式,干净PC模式,学习模式,安全程度是逐次下降的,到禁用时D+就被关闭,一点防护都没有了。

刚开始入手打磨自己规则的,推荐使用安全模式。

●保护内容:常规设置里面的文件保护、注册表保护、COM接口保护,划定了这三个项目的监控范围。在comodo支持的范围内,监控越广,显然安全系数越高,但也不是绝对成正比。安全防护要考虑效率问题,成本过高实际上是不划算的,一般情况下只须对要害部位进行防御,处理重要问题即可。

新手沿用comodo自带的内容即可,以后再做修订。

●数字签名:盗用和假冒数字签名的事时有所闻,要追求高安全,这一项就尽量限制或不要使用。可以在“常规设置”的“我的信任软件商”名单里删除一些名单,也可以在D+设置里面禁用信任数字签名。


●可执行镜像控制设置:设置监控的可执行文件及控制级别,可以在可执行文件被加载到内存前实施拦截,也能拦截恶意程序读取缓存里面的内容。

刚开始时,控制级别和文件检查使用默认的即可。打磨得差不多时再调高控制级别和添加文件检查项目。


●规则设置:规则强不强,安全不安全,好用不好用,最根本的因素,还是这个。规则的防御思想,规则之间的逻辑关系及流程,规则的破绽及错误……所有这些都会影响规则的质量。

大致的轮廓就是这样,在我们制作规则和实施管理时,不要忘记了这些关系。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 6人气 +6 收起 理由
guohouzuo + 1 相当精彩!
走丢啦 + 1 精品文章
rushmore + 1 精品文章,期待续作!:)
lorchid + 1 感谢分享
hu3167343 + 1 期待精品文章

查看全部评分

柯林
 楼主| 发表于 2010-1-15 19:00:04 | 显示全部楼层
本帖最后由 柯林 于 2010-1-20 02:17 编辑

回复 1# 柯林
第二章:透过三种权限的实例来看对程序的授权

双击一个程序运行它时,comodo弹出询问框,如果询问框上的“记住我的回答”是打勾的,comodo将依据用户的选择,自动在“计算机安全规则”里生成一条应用程序规则。

例如,当我双击桌面上金山office的文字处理软件wps.exe的快捷图标,comodo弹窗询问,我选择允许后,comodo就自动生成了一条规则。“计算机安全规则”里双击这条规则,看到它的设置(授权)如下:


上图显示,除了程序运行,其余的全部允许。这样的授权,跟系统程序是一样的。这样的权限合适吗?实际上,严格来说,这样的授权是不合适的,除了系统程序和安全软件(杀毒软件、防火墙、沙盘),一般的应用程序是不应该这样授权的。

想一想,如果浏览器之类的上网工具,也是这样的全部允许的权限,结果就是可以任意下载exe等可执行文件到任何地方,可以任意修改可执行文件,可以任意修改注册表,结果多恐怖!要是这样的程序被病毒感染或控制,突然发飙的话,后果不堪设想!——最简单的例子,比如它修改了QQ.exe,让QQ变成木马,又或者下载了一个自动运行的病毒放在磁盘根目录下,等我们双击磁盘时自动运行病毒……

是不是所有程序都是这么授权的?当我双击桌面上的opera图标,运行opera浏览器,什么弹窗都没有,“计算机安全规则”里已经自动生成一条规则如下:

上图可见,它限制了opera浏览器的RD和FD行为,不再允许无节制的进行任意的RD及FD操作了,相关操作要征询用户的意见了。看来,comodo还是有区别对待的,对于浏览器等上网程序有所控制。那么它这控制是可靠的吗?这话题后面再说。

顺便请看下图:


以全局规则为分界线来看的话,为什么有的规则会位于全局规则之上?个人认为,这是因为,这些规则都是comodo弹窗询问时得到的规则,是comodo无法确定是否安全而交由用户处理得到的规则。位于其上是充分尊重用户的意愿。

为什么有的规则会位于全局规则之下?个人认为,这是comodo根据内部集成的白名单,根据comodo社区用户提交的该程序的设置经过优化处理后形成的官方规则来自动加以配置,这跟用户自己手动配置规则的性质是一样的,都是没有经过弹窗询问就得到的规则,所以置于全局规则之下。

置于全局规则之上及之下有什么区别和影响吗?区别当然是有一点的,根据规则流程,置于全局规则之上的会优先被comodo检索到,置于全局规则之下的会后被检索到。无论是置于全局规则之上,还是置于全局规则之下,都跟全局规则有关系,如果你修改了全局规则的设置,都会对它们造成影响。相对来说,位于全局规则之下的程序,受到的影响更大一些——无法使用优先允许来排除全局规则里设定的阻止及优先阻止的内容。当你设定的规则失效的时候,请检查规则流程导致的原因。

其实,程序规则位于全局规则之下还是全局规则之上,是有一个小秘密的,这个秘密将在第四章揭晓。

规则的位置,是可以调整的。只要在“计算机安全规则”里选定一条规则,按住鼠标左键,就可以把它上下移动到理想的位置。规则位置调整,就是排序,目的之一是为了使规则具有逻辑以符合设定的先后顺序,目的之二是为了优化规则的执行效率,目的之三是为了美化——规则移动归类,避免杂乱无章,便于查找和管理。

下面进入本章的主题——程序授权。

如何给程序授权,是一个很复杂的问题。授权太高,有风险;授权太低,程序无法正常运作。安全与易用之间寻找平衡,这是授权的艺术。听起来有癞蛤蟆打呵欠——信口胡吹的味道。

简单来说,应用程序可以划分为五类——可信的,安全的,需要限制的,未知有风险的,有害的。

可信的——系统进程,计算机安全软件【杀毒软件、防火墙、沙盘】,可以给予图1所示的全部允许的权限。

安全的——日常应用软件,文字处理、画图软件、系统优化工具、恶意软件清理等,可以给予低于杀软类软件的权限。

需要限制的——上网类程序【浏览器、QQ、网络影视、下载工具】,搜狗输入法等,可以给予基本权限,然后根据各种软件不同的特点,额外允许或阻止一些东西。

未知有风险的——不明程序,需要谨慎处理,可给予监控(全部询问)的权限。

有害的——恶意软件、流氓软件、间谍软件、广告软件、木马、病毒,没什么说的,全部阻止加以隔离。

我们需要处理的,主要是头三类程序。下面举例说明。

    例1、杀毒软件,给予可信程序的全部允许权限。

具体操作:“计算机安全规则”画面上,点击“添加”,弹出的对话框上点击“选择”→寻找到杀软的路径【注意:路径选择一经确定就会变灰,不可更改,如果你要发布规则追求通用,那么应该在确定路径前修改成通配符路径。一般用户及讲求高安全的,用绝对路径是最好的】:


然后点击“访问权限”,弹出的编辑画面上给予全部允许的权限即可(参见图1)。

为什么要这样授权?那是根据各选项的内容进行确定的。各个选项是什么含义?论坛上的教程贴中已经讲过,comod帮助文档中也有介绍,为了便于我们做规则,这里再简单提一提:

运行一个可执行程序——谁都看得懂,无需废话解释,就是运行一个程序。实际上它包含了启动一个进程和创建一个进程。当你在日志中看到某应用程序创建某进程被拦截,指的就是这东东——A程序运行B程序被阻止。

进程间内存访问——包括了读取内存和修改内存两部分。极端危险的事件。Windows操作系统为每一个应用程序分配了一个4GB的虚拟内存空间,用来存放代码和数据。如果A程序修改了B程序的内存,就可能在其代码中添加恶意指令来控制该程序【术语上应该讲进程,为了通俗易懂,就说习惯上的程序吧】。鉴于毛豆的读写不分,谨慎允许该项吧。

注意,访问权限里的内存访问,说的是允不允许它去访问别的进程内存;保护设置里的内存访问,说的是允不允许别的进程来访问它的内存。

窗口事件或者事件钩子——习惯上的说法是安装全局钩子,帮助文档里的说法是执行钩子。极端危险的事件。钩子的作用就是截取(指令、信息、数据),后果就是窃密、盗号,劫持等。钩子通常是dll文件。杀毒软件和comodo等也是通过下钩子的方式来监控的。

注意,访问权限里的钩子,说的是允不允许它执行钩子?至于是执行哪些钩子,当然是应该加以限制的。通常允许执行system32下的系统dll钩子是安全的。保护设置里的钩子,可以理解成允不允许别的程序把那个钩子伸到它的身上钩住它;对于杀软、HIPS等安防软件来说,可以理解成允不允许在它们的钩子之上加装别的钩子,如果允许,那么新装的钩子将先于杀软和HIPS的钩子截取信息。

进程终止——通俗讲,就是允不允许它结束别的正在运行中的程序。专职运行结束进程的,有csrss.exe,任务管理器,comodo、冰点安防软件的杀进程工具。一般程序没必要结束别的进程。专业解释可以参看相关资料。一般情况下,一个程序结束它自己创建的进程是正常的。

结束进程与挂起进程的差别是,挂起进程只是暂停,结束进程是停止并退出。

注意:访问权限里的进程终止,说的是允不允许它结束别的进程;保护设置里面的进程终止,说的是允不允许别的程序来结束它的进程。

设备驱动程序安装——安装驱动,极端危险的事件之一。驱动程序是运行在内核态的,ring0级,一般的运行在ring3级的程序是管不到它的。除非安装新的硬件或者杀毒软件之类的安防软件,其它的禁止吧。

窗口消息钩子——正确的翻译应该是窗口消息。一般来说没有什么危害。恶意的消息洪水会导致程序的进程崩溃,玩测试工具时可以禁止该项操作。

注意,访问权限里的设置,说的是允不允许它向别的进程发送窗口消息;保护设置里面的设置,说的是允不允许别的进程给它发送窗口消息。

受保护的COM接口——程序可以通过COM接口使用相关组件,可以关闭系统、修改系统时间、调试提权、后台调用IE等进程偷偷上传、下载……

受保护的注册表键——这个不需要解释了。危险事件。允许该项操作,程序可以任意访问注册表,修改设定保护的注册表内容将不再过问。防止,阻止该项操作,程序不可以修改受保护的注册表内容。

受保护的文件目录——重要目录、路径,指定的exe等文件的保护。危险事件。如果允许该项操作,FD操作的创建、修改、删除活动将不受限制。严重情况下可以彻底搞坏系统。

本地环回网络——跟网络活动有关的AD行为。本地环回网络用于网络测试及提供服务之用。使用路由器时远程管理路由器,以及某个软件提供代理服务或者充当服务端时会用到它。

域名解析客户端服务——允不允许该程序使用域名解析功能?允许,则该程序执行域名解析的活动不受阻止。

内存——访问物理内存。关于该项的危害,帮助文档里说“恶意程序尝试访问物理内存运行各种漏洞---最有名的是“缓冲区溢出”漏洞。一个接口允许在特定的内存地址中存放一定量的数据,但如果恶意程序提供大量的数据到该地址就会导致缓冲区溢出。大量的数据会覆盖内存中的内部数据结构并导致系统被迫执行恶意程序的代码。”根据这些说明,主要是防止恶意程序的。一般情况下,能够限制的程序尽量限制吧,对于不明程序一定要严格限制,安全可信和必要的程序可以允许【例如系统进程,安防软件,内存整理工具等】。

屏幕监视器——访问屏幕,获取屏幕信息。截图软件,游戏等会使用此功能。一些窃密软件也会使用该功能。没必要的就不要允许吧。

磁盘——磁盘底层访问。允不允许绕过系统直接进行磁盘的底层读写?除了wmiprvse.exe和磁盘清理、碎片整理工具外,其它的阻止吧。按照帮助文档里的说法,阻止该项可以防止获取磁盘上存储的数据、删除硬盘上的文件、格式化驱动器或者用写垃圾数据的方法来损坏文件系统。

键盘——键盘记录,获取你输入的内容。盗号木马最喜欢的事情,出于防盗考虑,不明程序、没必要的程序都禁止吧。记事本,文字处理文件,绘图工具,游戏等需要输入文字信息的软件,需要允许,浏览器登录某些站点输入帐号密码等可能也需要允许。

了解了这些选项,怎么样给程序授权,应该基本上没问题了。再看两个例子。

2、文字处理软件wps.exe,给予中等权限:


3、火狐浏览器,给予基本权限,并作一些限制(不允许运行cmd.exerundll32.exe,只允许安装使用系统的钩子等):


照猫画虎,自己规划吧。

软件如何授权,实际上并无任何死板教条的规定,完全是可以个人自己主宰的,但也不是可以任意胡为的。论坛上发布交流的别人的成功经验,特别是高手的意见及规则,都是十分宝贵的参考。自己的相关经验及认识,以及规则的编排布局,都是可以灵活应用而达到理想效果的。

文中所举例子仅供参考,请根据自己的理解及需要,结合自己规则的布局灵活掌握。


附加话题,为什么一二两章不讨论学习模式呢?因为这里面涉及了一个秘密,这个秘密留待第四章揭晓,可能会令你大吃一惊。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 1人气 +1 收起 理由
vocation1985 + 1 在二楼显著位置加人气

查看全部评分

柯林
 楼主| 发表于 2010-1-15 19:01:24 | 显示全部楼层
本帖最后由 柯林 于 2010-1-22 11:57 编辑

第三章:如何防御病毒

病毒防御,原理上说很简单——阻止病毒文件的创建,阻止或者破坏掉病毒行为,就防住了病毒。如果把病毒文件的创建也归入病毒行为之一的话,那就只需阻止病毒行为即可。

哪些是病毒行为?归纳网上各种病毒分析,主要的大致有这么一些:

1、创建病毒文件到备份文件卷,有机会就运行。

2、创建病毒文件到回收站,有机会就运行。

3、创建病毒文件到磁盘根目录,同时在磁盘根目录创建一个autorun,.inf驱动文件指向病毒,当用户双击磁盘时在后台自动运行病毒。

4、创建病毒文件到windows目录下并运行。

5、创建病毒文件到system32目录下并运行。

6、创建病毒驱动文件,或者改写系统里面的驱动文件。

7、.修改用户hosts文件,实现网址重定位,让杀毒软件等无法连接服务站点更新病毒库,把用户的访问劫持到病毒网站下载病毒。

8、假冒系统进程或文件。修改、删除、替换系统文件,让系统无法正常运行或者无法进入系统,严重时让系统彻底报废。

9、通过修改、替换的方式感染系统目录下的可执行文件,甚至是整个磁盘上的可执行文件。

10、修改注册表,添加病毒自启动键,修改IE的相关设置以便把IE首页指向病毒站点或者是给IE添加各种插件,修改系统重要设置以进行破坏——映像劫持、禁用安全模式等。

11、在开始菜单的启动里添加项目,以便下次开机随系统启动病毒。

12、在windows下的Tasks里添加计划任务,让病毒在计划好的时间运行。

13、通过修改其它进程内存、创建远程线程、安装全局钩子的方式注入其它进程。钩子可以截取信息,可以阻断信息的传递,还可以修改信息再转发给目标进程实施欺骗。

14、通过底层操作来窃密或者执行破坏——底层屏幕访问可以截屏,底层键盘记录可以窃取用户帐号、密码,底层磁盘访问可以读取磁盘上存储的信息、文件,可以写入病毒文件或者格式化磁盘。

15、结束某个进程,以便启动一个假冒的病毒进程来替代,或者是结束杀软防火墙等安防软件的进程而使其功能失效。

16、调用系统高危程序来达成病毒目的。例如调用cmd.exerundll32.exenet.exe等来执行修改可执行文件、运行dll、停止或启用某项服务等。

17、利用系统功能实现病毒目的。例如,访问COM接口使用系统组件;访问服务管理器来注册自身服务——比如在服务管理器(scm)里注册自身为通过svchost.exe加载的服务dll组件之一。

18、连接网络,下载病毒文件,把窃取的信息上传给病毒作者。

粗略统计,大致上有这18种行为。只要用规则控制或者阻止这18种病毒行为,基本上就能够防住90%以上的病毒,这就是克毒保本的“降龙十八掌”。

病毒要达到它自身的目的,必须保证病毒行为的顺利进行。要有行为就必须有主体,这个主体就是病毒文件。病毒文件包括可执行文件和一些配置文件、数据文件等,我们需要防范的主要是可执行文件——主要有exedllsysbatcompifvbsautorun.inf等文件。如果你留心病毒分析报告,统计一下,你会发现,病毒主体90%都是exe文件和dll文件,在它们运行的过程中,会释放sys驱动文件、bat批处理文件、autorun.inf驱动文件……

病毒主体一旦成功创建并激活运行,就会有一系列的后续动作产生——修改、创建exedllsys等文件,访问服务管理器添加服务或加载驱动,修改注册表以实现自启动,添加开机启动项目,添加任务计划,注入其它进程,底层访问磁盘、屏幕、键盘,修改hosts文件……

如果,我们能够阻止病毒文件的创建,后续的一系列行为及危害就不会产生,这就叫做入口防御,主要是FD的规则。(入口防御并不仅仅指FD的文件创立,它还包括ADRD方面的病毒早期行为,一句话,能够在病毒行为的早期就实施拦截,让病毒的后期行为无法完成,这就叫入口防御)这是一种防御思想,叫做早期防御。

相应地,还有一种防御思想,假设我们能够限制或破坏掉病毒的行为,让病毒即使运行起来也无法干坏事——比如,病毒要调用cmd.exe不让它调用,要往系统目录下创建文件不让它创建,要修改exe等可执行文件不让它修改,要访问注册表不让它访问……这是另一种防御思想,叫做后期防御。

如果把早期防御与后期防御结合起来,就能实现双保险。不过,有人认为这样是功能重叠属于浪费行为,提倡早期防御与后期防御的相互配合与互补——合理安排搭配,有些方面放到早期防御,有些方面放到后期防御,这一方遗漏的由另一方来弥补。

究竟采用哪种方式,完全由个人喜好来决定。至于效果,最终要落实到规则上来。

在整个病毒防御的实施过程中,我们实际上需要考虑的有两个方面——

第一个方面,对未知程序的风险判断,防止病毒创建和运行:

前面已经说过,D+的甄别过滤,是依据“计算机安全规则”里设定的规则来进行的。打开“计算机安全规则”,里面已经设定好了规则的,是已知程序,未知程序没有对应规则将会交由全局规则来处理。

打开全局规则,你会发现,全部选项都是询问,没有例外允许的内容。如果你的功力够,凭据全局规则的监控询问,完全可以通过弹窗来阻止病毒的入侵和作乱。

依据何在呢?请打开D+→“常规设置”→“我的受保护文件”:


看上图,可执行文件和系统重要文件已经列入了监控范围。如果一个未知程序想要创建或修改一个exe文件,comodo的全局规则将根据“我的受保护文件/可执行文件”里的受保护项*.exe弹窗询问,如果你并没有下载一个exe文件,也没有安装一个程序,毫无疑问,这是极不正常的行为,你应该阻止那个exe文件的创建,通常情况下正常程序是不可能去修改一个exe文件的,何况这还是一个未知程序,所以无需多言,你也应该阻止。同理,如果一个未知程序想要添加一个开机启动项,全局规则将根据上图中“开始目录”下的C:\Documents and Settings\All Users\「开始」菜单\程序\启动\*这条规则弹窗询问,你点阻止就拦截了它。如果一个未知程序想要删除系统盘上的?:\ntldr文件好让你下次开机进不了系统,全局规则将根据上图中“重要的文件/目录”下的?:\ntldr这条规则弹窗询问,你点阻止就让它的阴谋不能得逞。

这样看来,拦截病毒不也是很简单?默认规则貌似已经很不错。是的,只要你会判断,采用安全模式的默认规则,对于未知程序的恶意行为是能够拦截的。事实上,很多高手就是这样使用来测试病毒的。

对于不熟悉正常行为与恶意行为的甄别判断的新手,担心误点允许导致恶劣结果,那么,适当地修改一下全局规则,让它自动判断和过滤掉一部分内容,一来保证了安全度的提高,二来减少了弹窗,你应该是乐意的吧?

既然是修改全局规则,事情就变得很简单了——打开全局规则的编辑画面,找到对应的项目,把自己想要实施的拦截内容添加到例外阻止里,就有规则帮你自动把关拦截了。

回顾18种病毒行为,哪些是我们可以添加到全局规则里自动拦截的呢?

系统备份还原,是由svchost.exe来进行的,comodo已经将svchost.exe划为系统更新程序——允许操作和改写系统文件,svchost.exe操作备份文件卷的行为已经在全局规则之上提前允许,剩下来的,有哪个程序是需要往备份文件夹卷里创建、修改、删除文件的呢?没有!这就好办了,阻止未知程序改写备份文件卷:全局规则→访问权限→受保护的文件/目录→修改→阻止的文件/文件夹→添加?:\System Volume Information\*

如果,已经有病毒文件创建到了备份文件卷里,那么,应该阻止任何程序去启动或调用它:全局规则→访问权限→运行一个可执行文件→修改→阻止的应用程序→添加?:\System Volume Information\*

通过这两条FDAD规则的限制,未知程序的第一种病毒行为就被拦截了,不再需要弹窗询问交由用户选择。怎么样,是不是很简单?

其它那些病毒行为的拦截,也用同样的方法处理即可。不过,要分析权衡,灵活处理。例如,大部分病毒,会创建exedll文件到C:\WINDOWS路径下和C:\WINDOWS\system32下,如果你不考虑安装软件的问题,完全可以进行FD限制:全局规则→访问权限→受保护的文件/目录→修改→阻止的文件/文件夹→添加%windir%\*.exe及添加%windir%\system32\*.exe等规则。如果要考虑程序安装,那就不要这样弄了,反正comodo已经把exedll等可执行文件列入了监控名单,有未知程序企图创建、修改、删除windows下面及sysytem32下面的exedll等文件,comodo会弹窗询问,你只要知道,如果不是正在安装程序,有谁要创建、修改这两个路径下的可执行文件,那么90%的可能性就是病毒,直接点阻止即可。

这里注意几个小问题:

comodo的通配符支持,官方没有清晰的说明,论坛上交流的经验大部分是个人摸索的结果。%windir%\*.exe的写法是否包含了%windir%\system32\*.exe?自己验证一下。

%windir%\*的写法是包含了整个windows目录里的所有文件——涵盖任意层子目录下的可执行文件及非可执行文件。

comodo是不防文件夹的创建的。

③一般情况下,不建议在AD的运行程序的规则中添加优先阻止%windir%\*.exe%windir%\system32\*.exe的规则,至于禁运%windir%\*更是属于自杀行为。如果你没有在全局规则之上排除干净系统进程对系统目录下的可执行文件的调用,可能会导致系统出错、死机、开机无法进系统。

一般来说,当我们搭配一款杀软使用时,就没有必要考虑安装程序了,安装软件时禁用D+即可。这样的话,FD可以阻止%windir%\*.exe%windir%\*.dll,顺便再阻止%windir%\*.sys%windir%\*.com

再添加一些可添加的拦截规则,做个具有初等强度的防御方案吧。

病毒喜欢到回收站里藏身,那就全局规则→访问权限→受保护的文件/目录→修改→阻止的文件/文件夹→添加?:\Recycle?\*,但是这样一来,执行删除操作移动到回收站里的以D打头的正常文件也禁止创建了,没关系,利用规则优先级关系来排除——全局规则→访问权限→受保护的文件/目录→修改→允许的文件/文件夹→添加?:\Recycle?\D*即可。回收站病毒的防御,其实可以换个思路——我不管你在回收站里创建什么文件,我只要禁止回收站里的文件运行即可。

磁盘根目录,是熊猫等U盘感染性病毒喜欢的藏身之地。不用说了,FD添加优先阻止?:\*.exe?:\autorun.inf即可。等一下,这样行吗,没问题吗??:\*.exe的写法不是包含了任意盘符根目录开始到任意层子目录下的所有exe文件,当自己移动、复制一个exe文件不也受限了吗?检查explorer的规则,发现comodo自动配置的规则已经允许explorer访问受保护的文件/目录,根据规则流程,explorer不受影响,没问题。但是这样的规则,将导致浏览器和快车等下载工具无法下载exe文件到本地磁盘上,暂时不考虑它。

如果磁盘根目录下已经创建了此类病毒,要防止它运行,是不是在AD规则的运行程序里写上优先阻止?:\*.exe即可?不要这样写,如果系统程序及应用程序没有排除干净,?:\*.exe实际包含了任意盘符根目录开始到任意子目录的exe文件,连系统盘都包括在内,那要出问题的。所以,暂时不管这个,限制autorun.inf吧——全局规则→访问权限→设备驱动程序安装→修改→阻止的驱动→添加?:\autorun.inf

再限制一下hosts文件的修改:全局规则→访问权限→受保护的文件/目录→修改→阻止的文件/文件夹→添加%windir%\system32\drivers\etc\hosts【这样设置之后,如果自己要用记事本打开hostst编辑屏蔽网址,要么在记事本的规则里排除,要么暂时禁用D+

一般来说,是不会往计算机里创建修改bat文件、pif文件、cmd文件、cpl文件、scr文件的:全局规则→访问权限→运行一个可执行文件→修改→阻止的应用程序→添加*.bat*.cpl以及*.pif以及*.cmd以及*.scr

病毒最爱调用的cmd.exenet.exe等高危程序加以阻止:全局规则→访问权限→运行一个可执行文件→修改→阻止的应用程序→添加%windir%\system32\cmd.exe%windir%\system32\conime.exe%windir%\system32\cscript.exe%windir%\system32\net*.exe%windir%\system32\wscript.exe%windir%\system32\debug.exe%windir%\system32\format.*%windir%\system32\reg*.exe%windir%\system32\sc.exe%windir%\system32\taskkill.exe%windir%\system32\tasklist.exe

Com接口也是很需要防范的,就把“伪COM接口——特权端口”列入阻止吧,其余的监控:全局规则→访问权限→受保护的com接口→修改→阻止的com接口→添加→com组→伪COM接口——特权端口

这里顺便解释一下这几个特权端口:

LocalSecurityAuthority.Backup  ………………备份

LocalSecurityAuthority.Restore  ………………还原

LocalSecurityAuthority.Debug   ………………调试提权

LocalSecurityAuthority.Shutdown ………………关闭系统

LocalSecurityAuthority.SystemEnvironment ………………检测和设置系统环境,Environment类主要是用来提供有关当前环境和平台的信息以及操作它们的方法

LocalSecurityAuthority.SystemTime  ……………………系统时间

注册表,限制一下自动运行和IE设置及系统设置等比较重要的捡几项防治一下,其它的监控:全局规则→访问权限→受保护的注册表键→修改→阻止的注册表键→添加→

Comodo

*\Software\Microsoft\Windows\CurrentVersion\Run*

*\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\*

*\Software\Microsoft\Windows NT\CurrentVersion\Windows\Run

*\SOFTWARE\Microsoft\Internet Explorer\Main\Start Page

*\SOFTWARE\Microsoft\Internet Explorer\Main\Search*

*\SOFTWARE\Microsoft\Internet Explorer\Main\Default_Page_URL

*\SOFTWARE\Microsoft\Internet Explorer\Main\Default_Search_URL

*\SOFTWARE\Microsoft\Internet Explorer\Main\Search Bar

*\SOFTWARE\Microsoft\Driver Signing\Policy

*\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options*

*\SYSTEM\CurrentControlSet\Control\SafeBoot*

*\SOFTWARE\Policies\Microsoft\Windows\Safer*

   好了,这样简单设置一下,自动拦截过滤以对抗未知恶意病毒的能力加强了(上面所述设置截图如下):

   

注意,这样设置后,不仅未知程序受影响,位于全局规则之下的已知程序规则也受影响。如果极个别程序因此无法正常使用,请把其规移动到全局规则上添加优先允许加以排除。

全局规则中添加病毒黑名单来加强过滤,也是一个可以参考的方法。黑名单的缺陷是——病毒程序日新月异,黑名单需要与时俱进,实际上并不是一个理想的方法,如果喜欢这种方式,可以针对一些著名的病毒做一下即可,例如灰鸽子、威金、磁碟机、机器狗、猫癣……黑名单对于可安装软件的规则来说是有用的,著名病毒及流氓软件放进黑名单,可以在安装软件的过程中执行过滤。新手搭配杀毒软件来用的,可以不用理会这个问题。
      第二个方面,已知程序的防控
      从HIPS的角度来说,除了HIPS本身,无法确信哪一个程序是绝对安全的。任何一个程序,如果给予全部授权的话,HIPS对它的监控基本上已经不存在了,它爱干什么都可以。为了防止病毒对它进行控制来做坏事,除了加强对未知程序的监管之外,对于所给予的已知程序的规则要做适当的调整。
      凡是权限太大的,没有约束的行为,都要进行规则调整。具体的操作,请参看第二章里的程序授权自己把握,原则上以消除隐患为目标,以不妨碍正常使用为度。这种调整,属于深入打磨的话题,下一章会专门进行讨论,这里简单提一下。调整规则来削权限制,不仅可以防止程序被病毒操控,还可以防止程序本身的流氓行为。
      上述对未知程序和已知程序的监管,都是从D+上来考虑的,对于喜欢联网作怪的木马病毒来说,除了用D+进行源头上的扑杀,还有一道坚固屏障——防火墙。
     如果木马程序已经存在并被允许运行,只要防火墙切断它的联网,它弄到的情报也没法外送,危害还是不能发生。这样讲,并不是说防火墙就是万能的,事实上最好的防御方法还是源头防御——让本机干干净净的没有一个病毒木马。当然,防火墙对于联网病毒木马可以起到最后的限制作用。
如何用防火墙防止联网的病毒木马?答案再简单不过——禁止病毒木马联网。对于自己拿不准的未知程序,可以先阻止,待确认无害后再改成允许。
      防火墙规则怎么做?如果你对防火墙方面有所了解,制定规则是很简单的事情。如果对防火墙方面不了解,可以用最简单的办法处理——依据自己的使用情况,选择一个适合的隐身模式设置一下,剩下的交由弹窗处理。隐身模式的设置参考下图:
      
      像上图这样设置一下之后,剩下的可以借助弹窗完成——当一个程序想访问网络时,comodo会弹出询问框,不想让它上网的就阻止,想让它上网的就允许。comodo会根据程序的要求,对程序访问运程端口以及开放本机端口寻求你的意见,你可以视需要选择允许或阻止。注意:除了QQ和p2p软件,一般的程序是不需要开放本机端口的。
     顺便再完善一下,svchost开放135端口是危险的,改成阻止;如果你是外网,无须共享本机资料,system开放的139、445及137、138端口改成阻止:
      
      病毒防御基本上就是这样子。对于U盘病毒,如何防范呢?你只须以U盘路径写一条全部阻止的规则即可,假如你的U盘盘符是H,你就写一条H:\*全阻止【从运行程序到键盘全部都是阻止】的规则,把它放到全局规则之上即可。
      病毒防御,实际上并不难,无非是针对病毒行为进行拦截即可。病毒有些什么行为?可以观看病毒分析贴——论坛上大小姐发布的病毒分析贴,网络上各大安全厂商发布的病毒播报及分析,都是很好的资料。
    章末总结: 病毒防御,从未知程序和已知程序两方面的规则上来监管,主要防御对象是未知程序。
    典型病毒行为,遗漏了一个网马——除了使用浏览器下载exe文件,一般IE缓存和临时文件夹是不会生成exe等可执行文件的。为了可以正常下载exe文件和程序安装,可以禁止IE缓存运行程序,监控IE缓存生成exe文件,临时文件夹运行程序可以监控询问。

细致分析,病毒行为还有很多,例如,system文件夹里是不可能有exe文件的,有则为病毒;C:\WINDOWS\Fonts里是不可能有exe、dll等文件的,只有字体文件,有些病毒会冒充字体文件……用心搜罗,会积少成多的。概括来看,18病毒行为再加一个IE缓存和临时文件夹监管,基本上已经全了。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 1人气 +1 收起 理由
liudianshui + 1 辛苦辛苦

查看全部评分

柯林
 楼主| 发表于 2010-1-15 19:02:27 | 显示全部楼层
本帖最后由 柯林 于 2010-5-15 13:33 编辑

第四章:修改完善,继续深入打磨


     前面三章的内容,初步探讨了规则的做法,分析了安全模式由弹窗生成规则的不可靠性,为了安全需要,我们可以继续修改完善,深入打磨。有兴趣的就跟随本章开始升级之旅吧。
     无论是学习模式得到的规则,还是安全模式弹窗生成的规则,只要你肯花一点时间,稍微打磨一下,它就会变得相对安全。例如,第三章里以默认安全模式为基础,经过少许修改得到的加强规则,只要稍微处理一下,就会更加强化!具体操作很简单,除了系统程序、comodo、杀软的规则外,其余的程序规则,请一律移动到全局规则之下(参考下图):
     
     这样做有什么好处?好处就是——你可以对访问权限里面的每一项设置自由更改。如果你发现,原先在全局规则之上的程序规则,当你自己修改后又回弹成老样子的话,这时就再也不会了。
     为什么会这样呢?老实说,我也不清楚,只知道——凡是由弹窗得到的规则,如果置于全局规则之上,你要自由修改,可能是无效的。例如,一个程序规则,弹窗询问时你点允许,得到的规则就是全部允许,如果你把其中的某几项改成询问,只要下次碰到与其中一项有关的行为时,comodo弹窗询问,只要你点允许并记住我的回答,所有的选项又全部变成了允许。
     如果你要自由改订,你需要记住:
     1、弹窗生成的自动置于全局规则之上的程序规则,移动到全局规则之下可以自由修改。
     2、comodo没有弹窗就自动生成的规则,无论在全局规则之上还是全局规则之下,都可以自由修改。
     3、你自己手动添加的程序规则,无论在全局规则之上还是全局规则之下,都可以自由修改。
     4、如果你要使用全局规则垫底的布局,对于全局规则之上由弹窗生成的规则,必须一律删除,然后自己重新写一条相同路径的规则,就可以对其自由修改。
     

关于弹窗生成选项的说明,以上所言有遗漏,请参看:http://bbs.kafan.cn/thread-688156-1-1.html

     顺便提请注意一下,当你修改规则之后,一定要记得保存设置,“确定→应用→应用→应用”请不要少点一个。设定之后,最好重新打开规则看一下,你设定的内容是不是已经在里面了,否则可能空欢喜一场。
     好了,现在可以采用“安全学习模式”——请把各应用程序的规则,各种选项除了明确可以选择允许或阻止的外,其余的一律改成询问,接下去要做的事就是交给毛豆弹窗——每一个具体行为,无论你是选择允许还是阻止,comodo都会把你的选择当作设定一一添加在对应的程序规则里(优先允许或优先阻止),天长日久之后,你得到的就是属于你自己的、符合本机实情的独特的安全规则【安不安全,由你的判断能力来决定】。(参看图1)
     要用学习模式的话,一定要用这种“安全学习模式”。
     说到学习模式,前面已经提过,要揭晓一个秘密,什么秘密呢?请你先看我用学习模式得到的截图:
     
     发现没有,学习模式得到的这个图,跟上面提倡的第一图是一样的,不同之处在于,上面第一图是我们费力地一个一个移动才得到的,而学习模式却是自动得到的。这样说来,学习模式并非一无是处?回答这问题前请再看两图:
     
     
     看到了没有,学习模式生成的应用程序规则,并不逊于安全模式生成的规则,而且由于学习模式自动把生成规则置于全局规则之下的关系,并没有出现安全模式弹窗生成的全部允许授权的事情。是不是很意外,学习模式好像比安全模式生成的规则更好一些?有兴趣的可以自己验证。
     论坛上曾经出现过的意见——先用学习模式跑一阵,然后切换到安全模式的观点,是有可取之处的。只不过要注意,不能长时间跑,只要用学习模式重启后,把你安装好的应用程序挨个双击运行一遍即可,之后就可切换回安全模式。目的是生成上面演示的第二图,不用再费力地把程序规则一个个移动到全局规则之下。如果长时间跑,comodo在程序规则中自动添加的不合理的例外允许就太多,那样就会变成不安全了。注意,这样使用,要保证你的机子干净,不要运行病毒木马恶意程序,也不要运行安装程序,更不要在这种情况下联网。
      大致上来说,学习模式是可以使用的,使用得法是基本安全的。新手可以使用这种方法来得到一个初步的框架。
     当然,用学习模式得到的规则,跟前面说的用安全模式得到的规则,授权都是不合适的(参看上图),需要按上面讨论的方法,用“安全学习模式”的方法来生成真正可行的规则。而且特别要注意一点,学习模式生成的程序规则,某些项目里面自动添加的优先允许的内容可能太宽泛了,不合适,需要修改。而有些例外允许,根本就是不对的,例如优化大师,学习模式自动添加了例外允许它更改IE备用搜索主页的内容(优化大师捆绑的改为百度搜索),这是个流氓动作:
     
     对于学习模式,要批判性地使用。使用它的目的,是为了得到一个初步的规则框架,不是为了得到程序规则各选项的允许及例外允许。当切换回安全模式之后,对于学习模式生成的程序规则,建议把每一个选项都改成询问,把每一项里面的例外允许都删掉,在安全模式下重新运行程序,用弹窗来打磨成真正安全的、可用的应用程序规则。——这个原则同样适用于安全模式得到的规则。如果你不知道怎么做规则和怎么打磨规则,这个方法是最简单的、人人都会使用的方法。
     那么,干净PC模式又如何呢?这问题留给感兴趣的人自己实验。
     回头审视,上面说的这种方法,实际上就是一个程序一条规则的做法。从理论上来说,这是最安全的方法——它只对该程序有效,不牵扯其它程序,不必为了照顾其它程序而拓宽允许范围,3D行为可以设定到最细的那一步。
     这种方法也有缺点——规则太多太杂,不便于管理。出于美化及检索的需要,你需要把它们归类整理,同一程序的规则放到一起,同一类程序的规则也移动到一起。如果任其杂乱无章的放置,你自己管理起来都是很费力的。
如果不喜欢这种方式,可以分组管理.
     首先建一个程序分组:D+→常规设置→我的受保护文件→组→添加→一个新的组:
     
    【如果无法在框里直接输入汉字组名,可以在记事本里写好组名,复制到框里粘贴】
     然后点击你新建的这个组,再点击右上角的  添加→选择→浏览……添加程序路径:
     
     建好的组,
     可以在D+规则中引用:高级设置→计算机安全规则→添加→应用程序路径→选择→文件组→浏览器
     也可以在防火墙中引用:高级设置→网络安全规则→应用程序规则→添加→应用程序路径→选择→文件组→浏览器
     同样的方法,可以建立规则组,然后在配给程序规则。
     建规则组:高级设置→预定义安全规则→添加→输入组名→设置访问权限→应用
     建好的规则组,可以在弹窗中指派,也可以在“计算机安全规则”中指派。
     由于一个规则组要适用于一组程序,甚至是不同类型的程序(比如基本权限的规则组),这就要求安全性和易用性很好的结合。打磨出一个像样的规则组,需要花费一些时间和精力。只要你肯抽时间打磨,规则组会最终得到完善的。
     分组的最大好处,一是整洁美观,二是可以偷懒,实际上从安全性及灵活性上来讲,是无法跟一个程序一条规则相比的。例如,一个程序一条规则,可以很方便地实现该程序只允许访问本身目录,这就避免了该程序万一发神经跑去访问修改别的程序目录下的文件,预防率及可控性是很好的。规则组要照顾几个程序甚至是一大堆程序,相较来说就要差一些。当然,只要规则整体规划得当,使用分组的方法也能取得很高的安全性;相反,如果使用不当,一个程序一条规则,结果也可能会是很糟糕的,例如用户错误判断和授权导致缺口漏洞。
     人总是难免会有疏忽的时候,会有考虑不周的时候,会有偶尔犯错误的时候。反映在规则上,就会出现漏洞、错误。检查和修改规则中的错误,弥补规则上的漏洞,修改不合理的设置,是深入打磨的必修课,是规则最终完善的砺石。
     除了直接检查修改规则外,还有一个磨砺规则的好帮手——日志。
     只要没有禁用日志记录,一切阻止的信息都在日志中反映,对于程序正常行为被拦截而无法正常运行的,可以通过日志找到原因。
     
     日子里面的目标(后面第二个圆圈里的部分),将是你添加排除规则时优先允许里面需要添加的内容。
     善于利用日志,可以很方便地查找原因,修改或添加规则,排除故障。
     化日志为规则的方法很简单,首先,请把comodo目录下的cfplogvw.exe创建个快捷方式到桌面,然后双击这个快捷方式的图标打开日志,导出日志为HTML文件,选个地方存放:
      
      接下来找到你导出的这个HTML文件,用浏览器打开,复制里面被阻止的内容到对应规则的优先允许里进行添加即可。
     规则的布局、编排,决定一个防御方案的整体框架。除了上面介绍的直接使用学习模式或安全模式修改得到的框架外,还可以使用其它的布局和框架。比较常见的有:
     A、全局规则垫底的简单过滤方式:这种框架把全局规则垫底,所有应用程序规则置于全局规则之上。如上所言,要使全局规则之上的程序规则可以按用户的意志修改,必须把弹窗生成的规则删掉,自己重写一条规则。这种布局方式,通常把最后一条全局规则作扫尾扎口子用,设置得好,可以有很好的效果——例如,程序规则全部设定好该阻止和排除的内容后,最后一条全局规则可以做得十分严厉,将对未知程序产生很强的拦截。这种布局方式跟上面介绍的方式一样,一般情况下不是特别讲究规则的排序,它只要把应用程序规则置于全局规则的上边或者下边即可。
      B、设置多道过滤方式:这种方式的特点是,在已有的全局规则基础上,额外添加几条“所有应用程序*”的规则【你可以写成?:\*.exe,*.exe,*.*之类,不一定非要是
“所有应用程序*“】,根据每条所设置的内容分别放到不同位置起不同的过滤作用——有的置于顶头第一条,有的插在中间各位置。这是一种最复杂的布局方式,规则之间的逻辑关系非常严密,规则排序不可错乱,要求十分严格。
     无论采用哪种布局方式和规则设置,保持总体布局的稳定是很重要的。如果新运行一个程序,弹窗后生成规则,comodo会默认置顶,这就破坏了原有的布局,最好根据自己的布局特点,把它移动到正确的区域,这也是属于一种日常维护的工作。
     顺便说一下,规则排序,如果有严格的逻辑关系要求的,一定要首先符合逻辑关系;没有特别严格的逻辑关系要求的,主要以效率为考虑——系统程序、comodo、杀软的规则优先排在上面,常用软件的规则紧随其后,使用频率低的软件规则往后排。
     使用分组还是一个程序一条规则,由自己的喜好决定。以我个人的经验来看,使用分组得当的极致效果,可以达到——凡是不在程序分组中添加路径的程序,将会被全局规则拦截而无法运行。这种防御思想就是,不管你是否已经安装上,能不能运行还得我说了算。
     以上讨论的打磨,都是在沿用官方监控项目的基础上谈论的。如果要进一步追求更好的效果,可以扩大监控范围。具体方法,就是到“常规设置”→“我的受保护文件”里添加更多监控内容【在组里面添加,然后引入受保护文件里】,例如增加命名管道,补充可执行文件名单,追加其它路径或文件的名单……同样的方法,可以修改扩充注册表和com接口的监控内容。
     究竟应该添加和扩充哪些内容?你可以从高手的规则【例如秘书、抓抓、月光、伊修特利等】中照抄,也可以参照U版的《打磨comodo,做有意义的事》一文中提供的材料进行补订。
     如果要追求防护的极致,方法是很多的。例如,将系统路径%windir%\*纳入监控范围,禁止任何程序访问%windir%\*,在排除几个常用软件必须用到的功能外,禁止任何程序运行%windir%\*。对于FD、RD、和com来说,最牛的方法是全局监控——也就是分别在受保护的文件、注册表、com里,删掉官方自带的监控项目,一律换成*【受保护的文件可以是*.*和*】,如果不怕弹窗,想追求极致,那就这样试试吧。菜鸟就别自找麻烦了,先用好基本的东西再说。
      要打磨出安全可行的规则,除了上面提到的改为全部询问由弹窗来打磨的方法外,还有很多方法。比如,论坛上有过介绍的——先阻止,再添加例外允许的方法;根据程序特点,分类处理,严格限制法,比如浏览器,除了允许运行本身、记事本、压缩软件、播放器外,禁止运行任何程序,除了允许访问本身目录及缓存目录、公用目录外,禁止访问任何目录等【为了避免访问本身目录的授权而导致无视全局规则的监控去下载病毒来改写本身目录下的可执行文件,需要妥善安排和考虑,如果把可执行文件的创建修改交由全局规则监控,程序规则的授权中就不要包括可执行文件在内,其它方面也请这样进行考虑和处理】……
      要达到的预期效果,可以灵活使用允许、阻止、优先允许、优先阻止的不同组合来达成目的。也可以根据规则流程的优先级关系,使用两条及多条规则的执行顺序来达成目的。总而言之,方法很多,用家自己掌握。
      前面这些讨论,都是关于“访问权限”的讨论。“保护设置”如何使用呢?——用法很简单,打开一个程序规则里的保护设置,在想保护的项目上勾选【选择“是”】,其它程序对该程序的相关访问就被拒绝了,该程序就像放进了保险箱,穿上了防弹衣。
     使用“保护设置”需要注意,一旦该程序设置了保护,不论该程序处于什么位置,其它程序对它被保护内容的访问、操作都是无效的,要想有效,必须在“保护设置”的例外里面添加白名单进行排除。也就是说,保护设置无所谓优先级,有效无效,只看你是否在白名单(参考下图):
      
     举个例子,以保护杀毒软件为例,在杀毒软件的规则上设定保护设置并添加白名单进行排除:
     
     安全防护软件,系统重要进程,如果你觉得有必要的话,就做一下保护设置吧。如果对所有的程序都来一下这个,不是更安全了吗?如果在全局规则中也做一下这个,不是更牛了吗?你要喜欢玩就玩吧,个人建议新手最好不要有这样的想法。
     做过保护设置之后,日志中关于“进程间内存访问”、“全局钩子”、“结束进程”、“窗口消息”的日志,有可能是来自“访问权限”,也有可能是来自“保护设置”,注意辨别寻找原因。
     从第一章开始到现在,通篇所谈都是防毒,似乎忘记了HIPS还有一个重要功能就是防范流氓。这方面怎么做呢?其实,防范流氓的问题,已经包含在了上面的讨论中,只要规则做得到位,程序的行为都得到规范,它想流氓都流氓不起来。
在这些讨论之中,实际上涉及了正常程序行为的放行问题。其中必须考虑的一个,就是系统主要进程。系统主要进程都有哪些?打开comodo的进程管理器,一目了然——谁是谁的上级、下级(父子关系),一清二楚。这几个主要进程要考虑放行——comodo自带规则已经分为“windows系统应用程序”和“windows系统升级程序”,并对explorer、services、rundll32等重要进程自动配置了规则,可以参考,认为不妥的可自行修改。此外,就是system32下面的系统程序,可以单独的一条一条的定规则,也可以追求简洁以一条%windir%\system32\*.exe来包括【这样写的可能存在的风险是,万一病毒到了system32下就会被当作系统程序放行,不过概率很小,可以忽略】。
     此外,还有注册表及com的相关知识,在打磨comodo的过程中也会涉及,这些东西就不在本文中罗嗦了,老实说,我也不怎么懂,有兴趣的还是自学吧,没辙时可以张嘴问,高手会告诉你。
     讨论过D+的打磨,那么防火墙的打磨如何做呢?视乎个人的需要及见解,方法很多,可以自行掌握。以个人的观点来看,可以用两种方法——
     1、放过全局,着眼应用程序:全局规则选个隐身模式设置一下,主要精力放在应用程序规则上。除了p2p软件规则可以允许连入外,其余的只须外联访问即可。如果进一步细化,可以指定目的端口,例如svchost只许连接远程的53、67、80等端口……可以在每一个应用程序规则的末尾,写上阻止其它访问的规则【行为阻止,协议IP,方向进出】,也可以不写。
     对于迅雷、电驴等p2p软件,需要开放本机的某个端口【通常是TCP端口和UDP端口各一个】对外提供服务,允许其它计算机连入这个端口。其规则,可以在p2p软件的规则中制定——方法有两个,①精确指定,查一查软件使用的端口,在规则中写清楚。这种方法适用于一个程序一条规则的场合。②模糊处理,一般开放的都是1024-65535的高端口,直接允许1024-65535范围。这种方法适用于分组套用的场合。除了上面这两种方法,还有一种方式可以巧妙处理这个问题——p2p软件的规则,末尾不要写阻止其它访问的规则;应用程序规则的最后,添加一条“所有应用程序*”的规则,里面写上“行为询问,协议TCP或UDP,方向入”,使用p2p软件时会自动根据弹窗生成一条规则置顶,不管程序开放什么端口,生成的规则都是很合适的。
     2、全局和应用程序双管齐下:这种方法,应用程序规则的设置,跟上面说的放过全局法基本一致,不同的是p2p软件开放的端口必须精确指定。主要区别是全局规则——除了不限制外出访问外,严格限制连入,除了p2p软件开放的端口放行外,其余的一律不得连入。这实际上就是设置两道严密的过滤,理论上这种设置最安全,不过也相对较麻烦。
喜欢使用哪种方法,自己抉择吧。应用程序规则,只要你愿意,可以打磨得很细——允许哪些地址跟端口,一般没必要,可用就行,主要精力应放HIPS上。
     如何打磨修改,大体上就是这么一些内容,具体的修改效果,由个人的功力和耐心来决定,那就是各人修行的事情了。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 1人气 +1 收起 理由
小小龙 + 1 慢慢看,有启发

查看全部评分

柯林
 楼主| 发表于 2010-1-15 19:03:03 | 显示全部楼层
本帖最后由 柯林 于 2010-1-21 22:18 编辑

第五章:篇末总结及一些基本的注意事项

      comodo是可定制性很强的手动HIPS,完全可以根据自己的需要进行设置。
      如果你的安全需要不是很高,你可以使用默认的安全模式来搭配一款杀软使用;如果你的安全要求相对较高,你可以手动制定很严密的安全规则。
     达到同一个目标的方法有很多,你可以结合自己的特点选择一个适合的进行使用。
     如果你对HIPS的规则很熟悉,你大可删掉官方的规则,自己制作。
     如果你对HIPS的规则不是很熟悉,你可以套用论坛上的规则稍作修改,也可以自己手动打造——你可以使用学习模式或者干净PC模式得到一个基本框架,然后采用弹窗打磨的方式,逐步打磨出一个像样的的规则、符合本机特点的安全规则。使用这种方法,请记得在框架成型后,切换回安全模式,然后把学习模式或干净PC模式生成的程序规则,访问权限里的各选项一律改为询问,优先允许里面的内容不合适的删除或者清空。
     制作规则熟练的,可以采用分组嵌套的方式,简化工作,美化界面。
     新手及生手,完全可以采用一个程序一条规则的方式进行制作。
     无论你采用哪一种方式,都要注意规则布局和规则流程。
     规则布局,大体上决定一套规则的特点。基本的布局有三种:
     1、全局规则分割法——系统进程、comodo、杀软的规则位于全局规则之上,其余的程序规则位于全局规则之下。
     2、全局规则垫底法——所有的程序规则位于全局规则之上。
     3、多道过滤法——根据需要,设置几条具有全局规则性质的规则,分别在顶头和中间各位置穿插,以起到逐级过滤的目的。
     无论采用那哪一种布局,都要保持局面的稳定——当有弹窗生成的规则自动置顶而破坏了局面时,需要手动维护,把新规则移动到合适位置,以保持整体规则的逻辑性、严密性。
    无论采用哪一种布局,都要注意规则流程——规则之间的排列位置及执行顺序,具有逻辑关系。根据规则流程所示的优先顺序图,合理利用,可以帮你完成预定目的,做出正确合理的规则。例如,善于使用阻止——优先允许【阻止里面添加例外】,允许——优先阻止【允许里面添加例外】,允许——优先阻止——允许允许【允许里面添加阻止的黑名单,再从黑名单里排除一部分东西】,两条规则搭配【上一条是特例部分,下一条是共性部分】等方法,会组合出各种不同的效果。
     程序规则和全局规则之间的关系,一定要注意,不论是在简单关系还是复杂关系的规则中,二者之间都是具有密不可分的逻辑关系的。规则正确与否,在这问题上看你是否妥善处理了二者的关系。
     在你修改规则之后,一定要按comodo的要求,依次点击确定和应用按钮。要注意检查,一个疏忽,会导致你刚才的一阵努力化为泡影。如果规则没有保存成功,却误以为已经完成,那将是悲剧。
     对程序进行保护设置,要注意添加例外。例外规则的把握,要适度。设置了保护设置的程序,不论处于什么位置,comodo对它的保护都是有效的,一个程序想要对它被保护的部分进行访问,必须在保护设置的例外里添加白名单。
     观察日志,找到症结,添加规则来排除故障,是使用comodo的一个基本功。日志记录,大部分都是来自访问权限,也有一部分是来自保护设置,要注意甄别。
     只要有心,规则是可以不断深入打磨的,最终可达满意的效果。
     规则和路径相关,一个无效路径将导致无效规则。一般情况下,使用绝对路径是最安全的。对于需要使用相对路径的场合,要注意通配符的正确使用。关于comodo对通配符的支持和应用,论坛上的教程有介绍。
     一个HIPS的使用,实际上就是个甄别过滤——放行正常行为,拦截有害行为。在这背后起支撑作用的,实际上就是使用者本人的系统知识和病毒知识,通常只需常识即可。
     全文就此结束,希望能对你有一丁点帮助。
     感谢你花费时间阅读这一大堆废话。文中的缺点、错误,欢迎批评指正,谢谢。

     附录一些参考资料:
http://bbs.kafan.cn/thread-590019-1-1.html
http://bbs.kafan.cn/thread-514030-1-1.html
http://www.ezloo.com/2007/10/thread_process_program.html
http://www.winu.cn/space-14160-do-blog-id-30743.html
http://www.wangchao.net.cn/bbsdetail_904875.html
http://www.wangchao.net.cn/bbsdetail_902499.html
http://www.yqdown.com/chengxukaifa/CBuilder/93.htm
http://tech.ddvip.com/2006-12/116498138412735.html
http://sist.sysu.edu.cn/OS-course/course/04-2-8.htm
http://intl.jxufe.cn/test/Article_Show.asp?ArticleID=674
http://www.cnblogs.com/peijihui/archive/2009/01/09/1372936.html
http://bbs.kafan.cn/thread-263063-1-1.html
http://test.nbarticle.com/computer/view/2005/4/6/view_741.htm




电子书打包上传:




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x

评分

参与人数 1人气 +1 收起 理由
guohouzuo + 1 期待看到lz更多的文章!

查看全部评分

到处看看
发表于 2010-1-15 20:05:56 | 显示全部楼层
慢慢的向柯老大学习
柯林
 楼主| 发表于 2010-1-15 20:11:45 | 显示全部楼层
本帖最后由 柯林 于 2010-1-15 20:13 编辑

回复 6# 到处看看
老菜鸟而已。
没事干,胡乱写点东西误导一下小白。
慢慢写,后续部分陆续发上。
青衫依旧
发表于 2010-1-15 20:17:28 | 显示全部楼层
本帖最后由 青衫依旧 于 2010-1-22 15:10 编辑

慢慢向柯大学习,希望楼主能出成电子书方便大家

柯大已经出电子书了,十分感谢,呵呵.以前的电子书和教程多数是英文的,看着头痛,支持柯大!!!
ben_
发表于 2010-1-15 20:22:20 | 显示全部楼层
感谢分享知识,感谢柯林
snooprat
发表于 2010-1-15 20:23:11 | 显示全部楼层
本帖最后由 snooprat 于 2010-1-15 20:25 编辑

前排就座,向柯大学习,讲解非常清晰形象
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2022-8-11 03:52 , Processed in 0.142127 second(s), 18 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表