除去固有的特征字或关键字外,每一个攻击或威胁都会有一系列的动作,例如修改系统注册表、终止进程、修改图标等,对于每一种操作系统,都会存在成千上万个类似的动作。
通过对这些行为特征跟踪、分析、提炼,能够寻找出一定的规律,用于对未知病毒或威胁的检测,根据这个原理,可以通过基于行为分析的合法性检查技术,用于对未知病毒的检测和判断。具体可以从如下四个方面入手。
1.从病毒的行为入手
对操作系统病毒的主要行为进行统计,并对主要行为进行相应的监控和报警。例如修改Browser特性时必定要改注册表或者相关文件,所以可以通过对注册表进行监视和报警;对于很多网页木马之类的病毒必定有一个下载文件的过程,同时会有一个相应的处理方式,可以对此类行为进行监视和报警;对于键盘操作进行记录的病毒必定会有一个对键盘进行消息处理进行监视的行为,我们也可以据此进行监视,看哪些软件进行此类处理,进而分析报警。
2.从采用行为统计阀值技术入手
把各类病毒的各种行为进行一个统计,给每种行为一种权值,当一个软件的行为的权值之和达到一个给定的阀值就认为是一个病毒。
3.从训练人工智能的方法入手
对于前面所给的权值有可能不太准确,可以利用人工神经网络中的学习算法让它调整权值,从而达到一个准确的权值,进而正确地识别一个病毒。基于行为分析的合法性检查技术如图5-3所示,每一种病毒进程都可以分解出若干个有威胁的动作,在确定其是一种病毒的前提下将这些动作对应的权重进行调整。在通过数万次的训练后,这些行为动作的权重达到了一种相对准确的状态。
4.从对未知病毒进行判断入手
当一个软件进入时,可以对其行为进行跟踪分解,并将其动作行为与知识库中的相应条目对比,得出每个行为动作的权重,将所有动作的权重相加,权值之和若达到一个给定的阀值就认为是一个病毒,否则就判断为正确数据。
基于行为分析的合法性检查技术给出了一种相对准确的对于未知病毒的检测方法,对于“0-Day”攻击具有很好的防范作用,是解决网络边界安全的重要技术创新。