HIPS(程序动作拦截器)规则割裂防护体系

 

HIPS,英文“Host Intrusion Prevent System”的缩写,国内通常翻译为“基于主机的入侵防御系统”,翻译很拗口,其实HIPS通俗来说就是程序动作(API)拦截器,作用就是对程序运行中调用的危险API进行拦截,经用户自行判断确认后手工选择阻止或是放行。HIPS的防护一般分为三个防护体系:AD(Application Defend)应用程序防御体系、RD(Registry Defend)注册表防御体系、FD(File Defend)文件防御体系。它通过可定制的规则对本地的运行程序、注册表的读写操作、以及文件读写操作进行判断并允许或禁止。

正是因为HIPS对程序调用危险的API非常敏感,所以使用HIPS软件阻止程序调用危险API,可以起到一定程度的安全防护作用。关于行为控制在熊猫烧香肆虐时期的突出表现,就不用多说了,一战成名。

既然HIPS有这么多的优点,为什么只能在少数高端玩家手里把玩,而没有向全社会普及推广呢?很多朋友一谈到HIPS的缺点就归结到易用性上,其实呢,易用性只是表象。所谓HIPS配置复杂度较高,对用户要求较高,弹框数量较高的三高问题,核心在于HIPS的监控理念是有缺陷的。前面也提到,HIPS监控的对象是危险API,所以通过阻止危险API调用就可以保护系统安全。这个HIPS的核心理念,乍一听是很有道理的,但是如果深入推敲,则发现其核心思想是存在着严重逻辑混乱的。

Win32 API是微软公司公开提供的应用程序接口,供广大Windows用户开发应用程序与系统进行交互操作。所以从本质上讲,API并没有好坏之分,也没有善恶之别。而如果单以安全角度来论,乱用某些API可能会对系统安全造成隐患,所以HIPS将这些API定义为“危险API”加以监控并向用户报警。这里特别要注意弄清这些“危险API”的真正含义,大量的病毒木马经常使用这些危险API,但是使用这些API的程序并不见得就是病毒木马。危险API和病毒木马之间的逻辑关系,属于必要非充分条件,因为所有的API都是微软公开提供的,所有程序都可以正常的进行调用。

HIPS正是把危险API和病毒木马的逻辑关系搞反了,HIPS把所有危险API的调用一律报警,而正常程序也需要调用这些API,所以才造成了上面提到的配置复杂度较高,对用户要求较高,弹框数量较高的三高问题。

现在,有部分厂商为了提高HIPS的易用性,为了扩大软件的市场份额,居然用了一种非常极端的方法——为HIPS配置明文规则(白名单),这样表面上看起来会使得HIPS的弹框率大幅度下降,但是实际上则使用户处于非常危险的状况之下,黑客可以非常轻松地利用明文规则轻易突破HIPS的3D保护!

如果一个网马,运行后生成A.gho(实为可执行文件),由于规则中允许创建和运行.gho文件,那么HIPS的防护体系就被轻易突破了……

结论:HIPS本来是安全的,虽然存在着频繁虚警的问题,但是其对于每一个潜在危险API调用都进行报警拦截,所以整体安全性是很有保证的。但是,HIPS规则(白名单)的使用,则彻底将HIPS的安全基石毁于一旦,在HIPS严密的防护体系中硬生生割裂出一条黑客高速公路!

HIPS确实需要改进,但是并不是这种简单的单一程序动作规则。行为控制安全产品只有将各种程序动作进行综合监控,即监控一系列确有意义的程序行为,才能从根本上彻底扭转其易用性差的问题。不过,如果HIPS增加了复杂的各种动作之间的相关性复合逻辑规则,那就不再是HIPS了,变成了现在大家习惯于叫做主动防御型安全产品,比如微点主动防御软件、卡巴斯基主动防御模块等等

 

你可能感兴趣的:(HIPS(程序动作拦截器)规则割裂防护体系)