HIPS具备无可比拟的安全性
提醒:本文是写给那些没有太多经验的HIPS新人的,没有太高深的理论和知识。熟悉HIPS的老鸟们可以无视~~~
写在前面
如果让大家来投票选择当前安全软件领域的热点,恐怕HIPS要算是其中的一个了。正是由于HIPS在安全方面的惊艳表现,很多人甚至提出了用HIPS替代杀软的观点。无论这个观点对或是错,至少说明了一个问题,就是HIPS的确具备无可比拟的安全性(前提是你会用)目前,各大杀毒软件厂商也都开始或多或少的开始在自己的产品当中加入一些HIPS元素,HIPS似乎正在成为安全软件新的技术增长点。
HIPS的定义是比较宽泛的。看看HIPS区里面讨论的软件,沙盘软件(Defensewall,Sandboxie等),行为分析软件(ThreatFire,AntiBots等)都被列为HIPS的范畴。在HIPS不算庞大的家族里面,有一类HIPS,比较受到追求极致安全性的用户的青睐,这就是纯手动HIPS。
所谓纯手动HIPS,就是在极端情况下(安装好以后,删除内置的规则或者不开启学习模式),所有的操作都要有用户的参与,才能完成。之所以这类HIPS会受到很多高手的青睐,就是因为利用它们,可以基本做到对自己电脑的完全控制,安全性自不待言,这种完全控制的感觉更加能够让人获得心理上的满足和愉悦。
只是,这类HIPS,在提供极致安全性和心理满足感的同时,也同时将准入的门槛抬高了不少,以至于很多菜鸟只能在遥望美丽的空中楼阁的同时,站在高高的门槛前望而却步。
那么,做为一个菜鸟,如何迈进HIPS这座花园,来享受HIPS提供的安全性和心理满足感呢?这就是本文的目的了。作者我不是高手,不过也不是菜鸟,算是一个计算机方面的老鸟吧。我来跟大家分享一些使用纯手动HIPS的心得,希望能给刚刚跨入HIPS门槛的朋友们一些启发。本文不会针对某一款HIPS做详细的讲解,而是尽量讲一些HIPS的共性的东西。
文章是按我自己的理解来写的,如果有什么疏漏或者错误,请高手指出来,大家共同进步。
好了,言归正传,让我们一起走进HIPS的花园看看吧!
HIPS在干什么
一、HIPS在干什么?
HIPS在干什么?为什么不停的有框弹出来?这些提示框都显示了什么信息?相信,刚刚步入HIPS大门的菜鸟首先要面对的就是这样的困惑了!
那么,在了解HIPS以前,让我们先来熟悉几个概念。
第一,什么是HIPS~!版区里面有关于HIPS的概念的详细表述,相信大家也都看到了。不过相对于“主机入侵防御系统”这样的专业称呼,我更喜欢把HIPS称为“行为拦截工具”。试想一下,一个病毒样本,如果杀软的病毒库有对应的特征码,则无论这个样本有没有运行,杀软都会马上报警,然后隔离这个文件;而对于HIPS来说,如果你不运行,则HIPS永远不会有提示。可见,HIPS是拦截了用户在操作计算机过程中程序产生的行为,并提交给用户进行判断的工具。所以,叫它“行为拦截工具”虽然有点局限,却也还算恰当。
第二,对象。学过编程的人应该对这个定义有所了解。现实生活中的“对象”就是人们常说的“东西”。对于系统来说,进程,程序,文件这些都是一个个的“东西”,也就是对象~!
第三,事件。这也是编程中会涉及到的一个概念。对于不熟悉编程的人,其实也不难理解。这跟我们生活中的事情没什么不同,是一种加在对象上的“作用”。比如,用鼠标指针指向某个程序,并且双击,这个双击就是一个事件。
第四,规则。规则与现实中的法律类似,法律是人必须遵守的行为规范,而HIPS的规则则是程序必须遵守的规范。而且一旦设定了,只有可能被绕过,而不可能违反。
清楚了这几个概念,我们就可以来理解HIPS的工作方式了。
既然HIPS可以被叫做“行为拦截工具”,那么任何一个程序试图进行某种操作都相当于产生了一个事件。在这个事件中,有两个对象,一个源对象,一个目标对象,如果没有HIPS,我们当然不会知道这个事件是什么,而HIPS会拦截这个事件,并且提交给用户进行判断。
在这个提示窗口里面,HIPS给出了明确的信息,源对象是explorer.exe,目标对象是FlashFXP.exe,而事件就是:程序explorer.exe试图启动一个未注册(没有匹配规则的)程序(FlashFXP.exe)
(上面这个提示框,在HIPS上手初期最为常见,当用户双击桌面的图标试图运行一个程序的时候,HIPS就会提示explorer.exe试图运行XXX.exe进程。事实上,这就是我们双击的那个操作!)
根据上面的简单分析不难看出,在任何HIPS事件中,源对象都是正在运行的进程,而根据目标对象的不同,HIPS就分为了AD,RD,FD这3D。AD是源对象对Application(程序)或者源对象本身(源对象本身也是Application)产生的行为,FD是源对象对Files(文件)产生的行为,RD是源对象对REG(注册表文件)产生的行为。
HIPS拦截了一个事件,并且进行规则的匹配,如果有规则能够匹配,那么就按照规则进行相应的操作(放行这个事件或者阻止),如果没有对应的规则,则弹出对话框,提交给用户做出判断。这就是HIPS的工作方式了。
如何读懂HIPS的提示
好了,有了这样的认知,就可以迈出第一步了。读懂提示是使用HIPS的第一步。让我们结合下面,如何读懂HIPS的提示。
这是一个AD的提示
明确的告诉了我们,在这次拦截的事件中——
源对象是:KMplayer.exe
目的对象是:所有运行的程序(实际上是安装了一个全局钩子)
事件是:将操作对象DINPUT.dll注入到所有的进程中。
这是个FD的提示
源对象是:Explorer.exe
目标对象是:C:\windows\foobar2000_0.9.5.1.exe
事件是:Explorer.exe试图对C:\windows文件夹下的foobar2000_0.9.5.1.exe进行操作(此处是个用户将foobar2000_0.9.5.1复制到受保护的C:\windows下面的操作)
这个提示窗口的信息是:
源对象是:regedit.exe
目标对象是:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run这个下面的键值
事件是:regedit.exe试图在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run下面创建一个suchost的键值。也就是我们常说的添加一个自启动项了。
从上面的分析可以看到,按照对象和事件的方法,我们就可以从提示框中获得足够的信息,起码我们知道了,提示框中提交给用户判断的到底是什么进程在试图进行什么操作。这也就是HIPS的本质:拦截事件,并提交给用户进行判断。
了解了HIPS的工作方式,能够清晰的读懂HIPS的提示信息了,那么接下来我们就要步入HIPS这座花园,来看看面对各种各样的提示,究竟我们该做些什么!
网友评论