瑞星卡卡安全论坛

首页 » 技术交流区 » 反病毒/反流氓软件论坛 » 菜鸟学堂 » 防病毒软件技术介绍 主动防御与启发式杀毒
reremy - 2011-3-17 16:25:00
在80年代末期,诞生了第一个电脑病毒。然后随即就有了清除病毒的工具──反病毒软件。这一时期,病毒所使用的技术还比较简单,从而检测相对容易,最广泛使用的就是特征码匹配的方法。然而为了躲避杀毒软件的查杀,病毒开始了进化,逐渐演变为变形的形式,每感染一次,就对自身变一次形,通过对自身的变形来躲避查杀。
  
  这样一来,同一种病毒的变种病毒大量增加,杀毒软件单纯依靠病毒库和特征码技术已经不能适应如今的网络安全。于是,便出现了广谱特征码的概念,这个技术在一段时间内,对于处理某些变形的病毒提供了一种方法,但是也使误报率大大增加,所以采用广谱特征码的技术目前也不能有效的对新病毒和未知病毒进行查杀,那么,现如今种类繁多的杀毒软件都有哪些新技术和新特征来适应当前的病毒威胁,又是如何实现的呢?
  
  主动防御技术
  
  由于传统的基于病毒库扫描的反病毒软件都是很被动的,只能在新病毒出现之后才能有应付措施,一个病毒制造者所编写的病毒很有可能在被杀毒软件厂商截获并添加到产品病毒库之前进入用户电脑。此时,由于该病毒的特征码还未添加到杀毒软件病毒库中,杀毒软件会将病毒认为是正常文件而放过,使得用户电脑被病毒所感染。因此,业界将能够主动检测和拦截未知威胁的防御方法称为“主动防御”。
  
  杀毒软件具有滞后性,这是业界公认的一个杀毒软件弊端,而主动防御却很好的解决了这个问题。主动防御技术主要是针对未知病毒提出来的病毒防杀技术,在没有病毒样本的情况下,对病毒进行全面而有效的全面防护,阻止病毒的运作,从技术层面上有效应对未知病毒的肆虐,一是在未知病毒和未知程序方面,通过“行为判断”技术识别大部分未被截获的未知病毒和变种。另一方面,通过对漏洞攻击行为进行监测,这样可防止病毒利用系统漏洞对其它计算机进行攻击,从而阻止病毒的爆发。
  
  然而由于主动防御概念,各厂商技术水平不同,其效果悬殊也较大,最显著的弊端就是常常出现大量的误报或误杀,或是将行为监控和病毒特征码监测结合的方式等同于主动防御,虽然病毒运行时其行为监控有警报提示,但就算用户选择“拒绝”操作也无法阻止病毒的运行。
  
  启发式查毒技术
  
  说到主动防御,不得不提起启发式查毒技术,启发式查毒技术属于主动防御的一种,是当前对付未知病毒的主要手段,从工作原理上可分为静态启发和动态启发两种。
  
  启发式指 “自我发现的能力”或“运用某种方式或方法去判定事物的知识和技能”, 是杀毒软件能够分析文件代码的逻辑结构是否含有恶意程序特征,或者通过在一个虚拟的安全环境中前摄性的执行代码来判断其是否有恶意行为。在业界前者被称为静态代码分析,后者被成为动态虚拟机。
  
  静态启发技术指的是在静止状态下通过病毒的典型指令特征识别病毒的方法,是对传统特征码扫描的一种补充。由于病毒程序与正常的应用程序在启动时有很多区别,通常一个应用程序在最初的指令,是检查命令行输入有无参数项、清屏和保存原来屏幕显示等,而病毒程序则通常是最初的指令是直接写盘操作、解码指令,或搜索某路径下的可执行程序等相关操作指令序列。静态启发式就是通过简单的反编译,在不运行病毒程序的情况下,核对病毒头静态指令从而确定病毒的一种技术。
  
  而相比静态启发技术,动态启发技术要复杂和先进很多。动态启发式通过杀软内置的虚拟机技术,给病毒构建一个仿真的运行环境,诱使病毒在杀软的模拟缓冲区中运行,如运行过程中检测到可疑的动作,则判定为危险程序并进行拦截。这种方法更有助于识别未知病毒,对加壳病毒依然有效,但如果控制得不好,会出现较多误报的情况。动态启发因为考虑资源占用的问题,因此目前只能使用比较保守的虚拟机技术。尽管如此,由于动态启发式判断技术具有许多不可替代的优势,因此仍然是目前检测未知病毒最有效、最可靠的方法之一,并在各大杀软产品中得到了广泛的应用。
  
  由于诸多传统技术无法企及的强大优势,必将得到普遍的应用和迅速的发展。纯粹的启发式代码分析技术的应用(不借助任何事先的对于被测目标病毒样本的研究和了解),已能达到80%以上的病毒检出率,而其误报率极易控制在0.1%之下,这对于仅仅使用传统的基于对已知病毒的研究而抽取“特征字串”的特征扫描技术的查毒软件来说,是不可想象的,启发式杀毒技术代表着未来反病毒技术发展的必然趋势,具备某种人工智能特点的反毒技术,向我们展示了一种通用的、不依赖于升级的病毒检测技术和产品的可能性。(赛迪网)

主动防御的概念

  
 
  HIPS 主动防御概念 x 主动防御
  目前,很多安全厂商在推出新产品时,总是强调该产品具有“主动防御”技术,可以防御未知病毒、未知威胁、ZeroDay攻击等。根据安全专家的分析,所谓“主动防御”其实是针对传统的“特征码技术”而言的。
  
  一般意义上的“主动防御”,就是全程监视进程的行为,一但发现“违规”行为,就通知用户,或者直接终止进程。它类似于警察判断潜在罪犯的技术,在成为一个罪犯之前,大多数的人都有一些异常行为,比如“性格孤僻,有暴力倾向,自私自利,对现实不满”等先兆,但是并不是说有这些先兆的人就都会发展为罪犯,或者罪犯都有这些先兆。
  
  因此“主动防御”并不能100%发现病毒或者攻击,它的成功率大概在60%--80%之间。如果再加上传统的“特征码技术”,则有可能发现100%的恶意程序与攻击行为了。从国外的情况看,诺顿、Kaspersky、McAfee等主流安全厂商,都已经向“主动防御”+“特征码技术”过渡了,可以说这是安全系统的必然发展趋势。
  
  此外,防火墙也是一个运用“主动防御”技术的典型例子。目前的企业都在使用防火墙,很多用户对于防火墙经常询问是否放行一个进程访问网络,或者有不明连接进入本机而发出警告印象深刻。
  
  其实防火墙就是在全程监视进程的网络行为,一但发现违反规则的行为就发出警告,或者直接根据用户设定拒绝进程访问网络。当然,现在的防火墙一般都把系统网络进程,如Services.exe、Svchost.exe、Lsass.exe记在“受信名单”里,这些进程是默认允许访问网络的,如果禁止的话,操作系统就不正常了,这也是现在很多病毒和木马都喜欢远程注入这些系统进程,以求突破防火墙而访问网络的原因。

用户系统信息:Mozilla/5.0 (Windows; U; Windows NT 5.1; ) AppleWebKit/533.9 (KHTML, like Gecko) Maxthon/3.0 Safari/533.9
1
查看完整版本: 防病毒软件技术介绍 主动防御与启发式杀毒