第14章 恶意代码防范技术原理

14.1 恶意代码概述

  恶意代码是网络安全的主要威胁,本节主要阐述恶意代码的概念和分类,给出恶意代码攻击模型,分析恶意代码的生存技术、攻击技术、分析技术以及防范策略。

14.1.1 恶意代码定义与分类

  恶意代码的英文是Malicious Code,它是一种违背目标系统安全策略的程序代码,会造成目标系统信息泄露、资源滥用、破坏系统的完整性及可用性。它能够经过存储介质或网络进行传播,从一台计算机系统传到另一台计算机系统,未经授权认证访问或破坏计算机系统。通常许多人认为“病毒”代表了所有感染计算机造成破坏的程序。事实上,“恶意代码”的说法更为通用,病毒只是一类恶意代码而已。恶意代码的种类主要包括计算机病毒(Computer Virus)、蠕虫(Worms)、特洛伊木马(Trojan Horse)、逻辑炸弹(Logic Bombs)、细菌(Bacteria)、恶意脚本(Malicious Scripts)和恶意ActiveX控件、间谍软件(Spyware)等。根据恶意代码的传播特性,可以将恶意代码分为两大类,被动传播和主动传播。被动传播的恶意软件有计算机病毒、特洛伊木马、间谍软件、逻辑炸弹;主动传播的恶意软件有网络蠕虫和其他。

14.1.2 恶意代码攻击模型

  恶意代码的行为不尽相同,破坏程度也各不相同,但它们的作用机制基本相同。其作用过程可大概分为以下6个步骤:
  第一步,侵入系统。恶意代码实现其恶意目的的第一步就是要侵入系统。
  第二步,维持或提升已有的权限。恶意代码的传播与破坏需要建立在盗用用户或者进程的合法权限的基础之上。
  第三步,隐蔽。为了隐蔽已经侵入系统的恶意代码,可能会采取对恶意代码改名、删除源文件或者修改系统的安全策略等方式。
  第四步,潜伏。恶意代码侵入系统后,在具有足够的权限并满足某些条件时就会发作,同时进行破坏活动。
  第五步,破坏。恶意代码具有破坏性的本质,为的是造成信息丢失、泄密,系统完整性被破坏等。
  第六步,重复前面5步对新的目标实施攻击过程。

14.1.3 恶意代码生存技术

  恶意代码靠采用反跟踪技术来提高自身的伪装能力和防破译能力,使检测与清除恶意代码的难度大大增加。反跟踪技术大致可以分为两大类:反动态跟踪技术和反静态分析技术。

  1. 反跟踪技术

  1)反动态跟踪技术
* 禁止跟踪中断。
* 检测跟踪法。
* 其他反跟踪技术。
2)反静态分析技术
* 对程序代码分块加密执行。
* 伪指令法。

  1. 加密技术
      加密技术是恶意代码进行自我保护的手段之一,再配合反跟踪技术的使用,让分析者不能正常调试和阅读恶意代码,无法获得恶意代码的工作原理,自然也不能抽取特征串。从加密的内容上划分,加密手段有三种,即信息加密、数据加密和程序代码加密。
  2. 模糊变换技术
      恶意代码每感染一个客体对象时都会利用模糊变换技术使潜入宿主程序的代码不尽相同。尽管是同一种恶意代码,但仍会具有多个不同样本,几乎不存在稳定的代码,只采用基于特征的检测工具一般无法有效识别它们。
      目前,模糊变换技术主要分为以下几种:
  • 指令替换技术。
  • 指令压缩技术。
  • 指令扩展技术。
  • 伪指令技术。
  • 重编译技术。
  1. 自动生产技术
      普通病毒能够利用“多态性发生器”编译成具有多态性的病毒。多态变换引擎能够让程序代码本身产生改变,但却可以保持原有功能。例如保加利亚的“Dark Avenger”,变换引擎每产生一个恶意代码,其程序体都会发生变化,反恶意代码软件若只是采用基于特征的扫描技术,则无法检测和清除这种恶意代码。
  2. 变形技术
      在恶意代码的查杀过程中,多数杀毒厂商通过提取恶意代码特征值的方式对恶意代码进行分辨。这种基于特征码的病毒查杀技术的致命缺点是需要一个特征代码库,同时这个库中的代码要具有固定性。病毒设计者利用这一漏洞,设计出具有同一功能不同特征码的恶意代码。这种变换恶意代码特征码的技术称为变形技术。常见的恶意代码变形技术包括如下几个方面:
  • 重汇编技术。
  • 压缩技术。
  • 膨胀技术。
  • 伪指令技术。
  • 重编译技术。
  1. 三线程技术
      恶意代码中应用三线程技术是为了防止恶意代码被外部操作停止运行。三线程技术的工作原理是一个恶意代码同时开启了三个线程,其中一个为负责远程控制工作的主线程,另外两个为用来监视线程负责检查恶意代码程序是否被删除或被停止自启动的监视线程和守护线程。注入其他可执行文件内的守护线程,同步于恶意代码进程。只要进程被停止,它就会重新启动该进程,同时向主线程提供必要的数据,这样就使得恶意代码可以持续运行。“中国黑客”就是采用这种技术的恶意代码。
  2. 进程注入技术
      在系统启动时操作系统的系统服务和网络服务一般能够自动加载。恶意代码为了实现隐藏和启动的目的,把自身嵌入与这些服务有关的进程中。这类恶意代码只需要安装一次,就能被服务加载到系统中运行,并且可以一直处于活跃状态。如Windows下的大部分关键服务程序能够被“WinEggDropShell”注入。
  3. 通信隐藏技术
      实现恶意代码的通信隐藏技术一般有四类:端口定制技术、端口复用技术、通信加密技术、隐蔽通道技术。
  • 端口定制技术,旧木马几乎都存在预设固定的监听端口,但是新木马一般都有定制端口的功能。优点:木马检测工具的一种检测方法就是检测缺省端口,定制端口可以避过此方法的检测。
  • 端口复用技术利用系统网络打开的端口(如25和139等)传送数据。
  • 通信加密技术,即将恶意代码的通信内容加密发送。通信加密技术胜在能够使得通信内容隐藏,但弊端是通信状态无法隐藏。
  • 隐蔽通道技术能有效隐藏通信内容和通信状态,目前常见的能提供隐蔽通道方式进行通信的后门有:BO2K、Code Red II、Nimida和Covert TCP等。但恶意代码编写者需要耗费大量时间以便找寻隐蔽通道。
  1. 内核级隐藏技术
      1)LKM隐藏
      LKM是可加载内核模块,用来扩展Linux的内核功能。LKM能够在不用重新编译内核的情况下把模块动态加载到内存中。
      2)内存映射隐藏
      内存映射是指由一个文件到一块内存的映射。内存映射可以将硬盘上的内容映射至内存中,用户可以通过内存指令读写文件。使用内存映射避免了多次调用I/O操作的行为,减少了不必要的资源浪费。

14.1.4 恶意代码攻击技术

  1. 进程注入技术
      系统服务和网络服务在操作系统中,当系统启动时被自动加载。进程注入技术就是将这些与服务相关的嵌入了恶意代码程序的可执行代码作为载体,实现自身隐藏和启动的目的。这类恶意代码只需要安装一次,就能被服务加载到系统中运行,并且可以一直处于活跃状态。
  2. 超级管理技术
      部分恶意代码能够攻击反恶意代码软件。恶意代码采用超级管理技术对反恶意代码软件系统进行拒绝服务攻击,阻碍反恶意代码软件的正常运行。例如,“广外女生”是一个国产特洛伊木马,对“金山毒霸”和“天网防火墙”采用超级管理技术进行拒绝服务攻击。
  3. 端口反向连接技术
      防火墙对于外网进入内部的数据流有严格的访问控制策略,但对于从内到外的数据并没有严格控制。指令恶意代码使用端口反向连接技术使攻击的服务端(被控制端)主动连接客户端(控制端)端口。最早实现这项技术的木马程序是国外的“Boinet”,它可以通过ICO、IRC、HTTP和反向主动连接这4种方式联系客户端。“网络神偷”是我国最早实现端口反向连接技术的恶意代码。“灰鸽子”则是这项技术的集大成者,它内置FTP、域名、服务器主动连接这3种服务端在线通知功能。
  4. 缓冲区溢出攻击技术
      恶意代码利用系统和网络服务的安全漏洞植入并且执行攻击代码,攻击代码以一定的权限运行有缓冲区溢出漏洞的程序来获得被攻击主机的控制权。缓冲区溢出攻击成为恶意代码从被动式传播转为主动式传播的主要途径之一。例如,“红色代码”利用IIS Server上的Indexing Service的缓冲区溢出漏洞完成攻击、传播和破坏等恶意目的。

14.1.5 恶意代码分析技术

  恶意代码分析方法由静态分析方法和动态分析方法两部分构成。其中,静态分析方法有反恶意代码软件的检查、字符串分析和静态反编译分析等;动态分析方法包括文件监测、进程监测、注册表监测和动态反汇编分析等。

  1. 静态分析方法
      恶意代码的静态分析主要包括以下方法:
    (1)反恶意代码软件的检测和分析。
    (2)字符串分析。
    (3)脚本分析。
    (4)静态反编译分析。
    (5)静态反汇编分析。
  2. 动态分析方法
    (1)文件监测。
    (2)进程监测。
    (3)网络活动监测。
    (4)注册表监测。
    (5)动态反汇编分析。
      目前主要的动态反汇编分析方法有以下两种:
  • 同内存调试。
  • 仿真调试,即虚拟调试。

14.1.6 恶意代码防范策略

  要做好恶意代码的防范,一方面组织管理上必须加强恶意代码的安全防范意识。另一方面,通过技术手段来实现恶意代码防范。

14.2 计算机病毒分析与防护

  计算机病毒是恶意代码的一种类型,本节阐述了计算机病毒的概念和特性,分析计算机病毒的组成和运行机制,给出计算机病毒的常见类型和技术,讲述计算机病毒的防范策略及相关防护方案。

14.2.1 计算机病毒概念与特性

  计算机病毒的名称由来借用了生物学上的病毒概念,它是一组具有自我复制、传播能力的程序代码。它常依附在计算机的文件中,如可执行文件或Word文档等。计算机病毒都具有以下四个基本特点:
  (1)隐蔽性。
  (2)传染性。
  (3)潜伏性。
  (4)破坏性。

14.2.2 计算机病毒组成与运行机制

  计算机病毒由三部分组成:复制传染部件(replicator)、隐藏部件(concealer)、破坏部件(bomb)。复制传染部件的功能是控制病毒向其他文件的传染;隐藏部件的功能是防止病毒被检测到;破坏部件则用在当病毒符合激活条件后,执行破坏操作。计算机病毒将上述三个部分综合在一起,然后病毒实现者用当前反病毒软件不能检测到的病毒病毒感染系统,此后病毒就逐渐开始传播。计算机病毒的生命周期主要有两个阶段:

  • 第一阶段,计算机病毒的复制传播阶段。
  • 第二阶段,计算机病毒的激活阶段。

14.2.3 计算机病毒常见类型与技术

  1. 引导型病毒
      引导型病毒通过感染计算机系统的引导区而控制系统,病毒将真实的引导区内容修改或替换,当病毒程序执行后,才启动操作系统。因此,感染引导型病毒的计算机系统看似正常运转,而实际上病毒已在系统中隐藏,等待时机传染和发作。引导型病毒通常都是内存驻留的,典型的引导型病毒如磁盘杀手病毒、AntiExe病毒等。
  2. 宏病毒(Macro Viruses)
      宏是1995年出现的应用程序编程语言,它使得文档处理中繁复的敲键操作自动化。所谓宏病毒就是指利用宏语言来实现的计算机病毒。
  3. 多态病毒(Polymorphic Viruses)
      多态病毒每次感染新的对象后,通过更换加密算法,改变其存在形式。一些多态病毒具有超过二十亿种呈现形式,这就意味着反病毒软件常常难以检测到它,一般需要采用启发性分析方法来发现。多态病毒有三个主要组成部分:杂乱的病毒体、解密例程(decryption routine)、变化引擎(mutation engine)。在一个多态病毒中,变化引擎和病毒都被加密。
  4. 隐蔽病毒(Stealth Viruses)
      隐蔽病毒试图将自身的存在形式进行隐藏,使得操作系统和反病毒软件不能发现。隐蔽病毒使用的技术有许多,主要包括:
  • 隐藏文件的日期、时间的变化;
  • 隐藏文件大小的变化;
  • 病毒加密。

14.2.4 计算机病毒防范策略与技术

  目前,计算机病毒防范策略和技术主要如下。

  1. 查找计算机文件病毒源
    对计算机文件及磁盘引导区进行计算机病毒检测,以发现异常情况,确证计算机病毒的存在,主要方法如下:
  • 比较法。比较法是用原始备份与被检测的引导扇区或被检测的文件进行比较,检查文件及系统区域参数是否出现完整性变化。
  • 搜索法。搜索法是用每一种病毒体含有的特定字节串对被检测的对象进行扫描。如果在被检测对象内部发现了某一种特定字节串,就表明发现了该字节串所代表的病毒。
  • 特征字识别法。特征字识别法是基于特征串识别扫描法发展起来的一种新方法。特征字识别法只须从病毒体内抽取很少的几个关键字特征字,组成特征字库。
  • 分析法。一般使用分析法的人不是普通用户,而是反病毒技术人员。
  1. 阻断计算机病毒传播途径
    由于计算机病毒的危害性是不可预见的,因此切断计算机病毒的传播途径是关键防护措施,具体方法如下:
  • 用户具有计算机病毒防范安全意识和安全操作习惯。
  • 消除计算机病毒载体。
  • 安全区域隔离。
  1. 主动查杀计算机病毒
    主动查杀计算机病毒的主要方法如下:
  • 定期对计算机系统进行病毒检测。定期检查主引导区、引导扇区、中断向量表、文件属性(字节长度、文件生成时间等)、模板文件和注册表等。特别是对如下注册表的键值做经常性检查:
    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
  • 安装计算机病毒软件,建立多级病毒防护体系。
  1. 计算机病毒应急响应和灾备
      应急响应技术和措施主要有以下几方面:
  • 备份。
  • 数据修复技术。
  • 网络过滤技术。
  • 计算机病毒应急响应预案。

12.2.5 计算机病毒防护方案

  1. 基于单机计算机病毒防护
  2. 基于网络计算机病毒防护
  3. 基于网络分级病毒防护
  4. 基于邮件网关病毒防护
  5. 基于网关防护

14.3 特洛伊木马分析与防护

  特洛伊木马是恶意代码的一种类型,本节首先阐述特洛伊木马的概念和特性,然后分析特洛伊木马的运行机制、植入技术、隐藏技术、存活技术,最后给出特洛伊木马的常见类型、防范技术方案。

14.3.1 特洛伊木马概念与特性

  特洛伊木马(Trojan Horse,简称木马),其名称取自古希腊神话特洛伊战争的特洛伊木马,这是具有伪装能力、隐蔽执行非法功能的恶意程序,而受害用户表面上看到的是合法功能的执行。同计算机病毒、网络蠕虫相比较,特洛伊木马不具有自我传播能力,而是通过其他的传播机制来实现。

14.3.2 特洛伊木马分类

  根据特洛伊木马的管理方式,可以将特洛伊木马分为本地特洛伊木马和网络特洛伊木马。本地特洛伊木马是最早期的一类木马,其特点是木马只运行在本地的单台主机,木马没有远程通信功能,木马的攻击环境是多用户的UNIX系统,典型例子就是盗用口令的木马。网络特洛伊木马是指具有网络通信连接及服务功能的一类木马,简称网络木马。

14.3.3 特洛伊木马运行机制

  木马受攻击者的意图影响,其行为表现各异,但基本运行机制相同,整个木马攻击过程主要分为五个部分:

  1. 寻找攻击目标。
  2. 收集目标系统的信息。
  3. 将木马植入目标系统。
  4. 木马隐藏。
  5. 攻击意图实现,即激活木马,实施攻击。

14.3.4 特洛伊木马植入技术

  特洛伊木马传入是木马攻击目标系统最关键的一步,是后续攻击活动的基础。当前特洛伊木马的植入方法可以分为两大类,即被动植入和主动植入。被动植入是指通过人工干预方式才能将木马程序安装到目标系统中,植入过程必须依赖于受害用户的手工操作;而主动植入则是指主动攻击方法,将木马程序通过程序自动安装到目标系统中,植入过程无须受害用户的操作。而被动植入主要通过社会工程方法将木马程序伪装成合法的程序,以达到降低受害用户警觉性、诱骗用户的目的,常用的方法如下:

  • 文件捆绑法。
  • 邮件附件。
  • Web网页。

13.3.5 特洛伊木马隐藏技术

  特洛伊木马的设计者为了逃避安全检测,就要设法隐藏木马的行为或痕迹,其主要技术目标就是将木马的本地活动行为、木马的远程通信过程进行隐藏。

  1. 本地活动行为隐藏技术
  • 文件隐藏
  • 进程隐藏
  • 通信连接隐藏
  1. 远程通信过程隐藏技术
  • 通信内容加密技术
  • 通信端口复用技术
  • 网络隐蔽通道

14.3.6 特洛伊木马存活技术

  特洛伊木马的存活能力取决于网络木马逃避安全监测的能力,一些网络木马侵入目标系统时采用反监测技术,甚至中断反网络木马程序运行。

14.3.7 特洛伊木马防范技术

  在特洛伊木马防御方面,由于网络木马具有相当高的复杂性和行为不确定性,因此防范木马需要将监测与预警、通信阻断、系统加固及修复、应急管理等多种技术综合集成实现。下面主要说明近几年的特洛伊木马防范技术。

  1. 基于查看开放端口检测特洛伊木马技术
  2. 基于重要系统文件检测特洛伊木马技术
  3. 基于系统注册表检测特洛伊木马技术
  4. 检测具有隐藏能力的特洛伊木马技术
    Rootkit是典型的具有隐藏能力的特洛伊木马。目前,检测Rootkit的技术有三类,分别叙述如下:
    第一类是针对已知的Rootkit进行检测,这种方法基于Rootkit的运行痕迹特征来判断计算机系统是否存在木马。
    第二类是基于执行路径的分析检测方法。
    第三类是直接读取内核数据的分析检测方法,该方法针对通过修改内核数据结构的方法来隐藏自己的Rootkit,其基本原理是直接读取内核中的内部数据以判断系统当前的状态。
  5. 基于网络检测特洛伊木马技术
  6. 基于网络阻断特洛伊木马技术
  7. 清除特洛伊木马技术
      清除特洛伊木马的技术方法有两种:手工清除方法和软件清除方法。

14.4 网络蠕虫分析与防护

  网络蠕虫是恶意代码的一种类型,本节首先阐述了网络蠕虫的概念和特性,然后分析了网络蠕虫的组成、运行机制和常用技术,最后给出了网络蠕虫的防范技术方案。下面分别进行叙述。

14.4.1 网络蠕虫概念与特性

  网络蠕虫是一种具有自我复制和传播能力、可独立自动运行的恶意程序。它综合了黑客技术和计算机病毒技术,通过利用系统中存在漏洞的节点主机,将蠕虫自身从一个节点传播到另外一个节点。

14.4.2 网络蠕虫组成与运行机制

  网络蠕虫由四个功能模块构成:探测模块、传播模块、蠕虫引擎模块和负载模块。
  (1)探测模块。完成对特定主机的脆弱性检测,决定采用何种攻击渗透方式。该模块利用获得的安全漏洞建立传播途径,该模块在攻击方法上是开放的、可扩充的。
  (2)传播模块。该模块可以采用各种形式生成各种形态的蠕虫副本,在不同主机间完成蠕虫副本传递。
  (3)蠕虫引擎模块。该模块决定采用何种搜索算法对本地或者目标网络进行信息搜集,内容包括本机系统信息、用户信息、邮件列表、对本机的信任或授权的主机、本机所处网络的拓扑结构、边界路由信息等。这些信息可以单独使用或被其他个体共享。
  (4)负载模块。也就是网络蠕虫内部的实现伪代码。
  网络蠕虫的运行机制主要分为三个阶段。
  第一阶段,已经感染蠕虫的主机在网络上搜索易感染目标主机,这些易感机器具有蠕虫代码执行条件,例如易感机器有蠕虫可利用的漏洞。
  第二阶段,已经感染蠕虫的主机把蠕虫代码传送到易感染目标主机上。
  第三阶段,易感染目标主机执行蠕虫代码,感染目标主机系统。目标主机感染后,又开始每一阶段的工作,寻找下一个易感目标主机,重复第二、第三阶段的工作,直至蠕虫从主机系统被清除掉。

14.4.3 网络蠕虫常用技术

  1. 网络蠕虫扫描技术
    1)随机扫描
    2)顺序扫描
    3)选择性扫描
  2. 网络蠕虫漏洞利用技术
    常见的网络蠕虫漏洞利用技术主要有如下几种:
  • 主机之间的信任关系漏洞。
  • 目标主机的程序漏洞。
  • 目标主机的默认用户和口令漏洞。
  • 目标主机的用户安全意识薄弱漏洞。
  • 目标主机的客户端程序配置漏洞。

14.4.4 网络蠕虫防范技术

  网络蠕虫已经尤为网络系统的极大威胁,防范网络蠕虫需要多种技术综合应用,包括网络蠕虫监测与预警、网络蠕虫传播抑制、网络蠕虫漏洞自动修复、网络蠕虫阻断等,下面将说明近几年的网络蠕虫检测防御的主要技术。

  1. 网络蠕虫监测与预警技术
    网络蠕虫监测与预警技术的基本原理是在网络中安装探测器,这些探测器从网络环境中收集与蠕虫相关的信息,然后将这些信息汇总分析,以发现早期的网络蠕虫行为。当前,探测器收集的与蠕虫相关的信息类型有以下几类:
  • 本地网络通信连接数;
  • ICMP协议的路由错误包;
  • 网络当前通信流量;
  • 网络服务分布;
  • 域名服务;
  • 端口活动;
  • CPU利用率;
  • 内存利用率。
  1. 网络蠕虫传播抑制技术
    网络蠕虫传播抑制技术的基本原理是利用网络蠕虫的传播特点,来构造一个限制网络蠕虫传播的环境。
  2. 网络系统漏洞检测与系统加固技术
    防治网络蠕虫的关键问题之一是解决漏洞问题,包括漏洞扫描、漏洞修补、漏洞预防等。
  3. 网络蠕虫免疫技术
    网络蠕虫通常在受害主机系统上设置一个标记,以避免重复感染。网络蠕虫免疫技术的基本原理就是在易感染的主机系统上事先设置一个蠕虫感染标记,欺骗真实的网络蠕虫,从而保护易感主机免受蠕虫攻击。
  4. 网络蠕虫阻断与隔离技术
    网络蠕虫阻断技术有很多,主要利用防火墙、路由器进行控制。
  5. 网络蠕虫清除技术
    网络蠕虫清除技术用在感染蠕虫后的处理,其基本方法是根据特定的网络蠕虫感染系统后所留下的痕迹,如文件、进程、注册表等信息,分析网络蠕虫的运行机制,然后有针对性地删除有关网络蠕虫的文件或进程。

14.5 僵尸网络分析与防护

  僵尸网络是恶意代码的一种类型,本节首先阐述了僵尸网络的概念和特性,分析了僵尸网络的运行机制和相关技术,然后给出了僵尸网络的防范技术方案。

14.5.1 僵尸网络概念与特性

  僵尸网络(Botnet)是指攻击者利用入侵手段将僵尸程序(bot or zombie)植入目标计算机上,进而操纵受害机执行恶意活动的网络。
  僵尸网络的构建方式主要有远程漏洞攻击、弱口令扫描入侵、邮件附件、恶意文档、文件共享等。早期的IRC僵尸网络主要以类似蠕虫的主动扫描结合远程漏洞攻击的方式进行构建。目前,攻击者以网页挂马(drive-by download)的方式构造僵尸网络。

14.5.2 僵尸网络运行机制与技术

  僵尸网络的运行机制主要有三个基本环节构成。每一步,僵尸程序的传播。第二步,对僵尸程序进行远程命令操作和控制,将受害目标机组成一个网络。第三步,攻击者通过僵尸网络的控制服务器,给僵尸程序发送攻击指令,执行攻击活动,如发送垃圾电子邮件、DDoS攻击等。

14.5.3 僵尸网络防范技术

  1. 僵尸网络威胁监测
      通常利用蜜罐技术获取僵尸网络威胁信息,部署多个蜜罐捕获传播中的僵尸程序(Bot),记录该Bot的网络行为,然后通过人工分析网络日志并结合样本分析结果,可以掌握该Bot的属性,包括它连接的服务器(DNS/IP)、端口、频道、密码、控制口令等信息,从而获得该僵尸网络的基本信息甚至控制权。
  2. 僵尸网络检测
      根据僵尸网络的通信内容和行为特征,检测网络中的异常网络流量,以发现僵尸网络。
  3. 僵尸网络主动遏制
      通过路由和DNS黑名单等方式屏蔽恶意的IP地址或域名。
  4. 僵尸程序查杀
      在受害的目标机上,安装专用安全工具,清除僵尸程序。

14.6 其他恶意代码分析与防护

  本节简要叙述逻辑炸弹、陷门、细菌、间谍软件等恶意代码,重点分析了这些恶意代码的特点。

14.6.1 逻辑炸弹

  逻辑炸弹是一段依附在其他软件中,并具有触发执行破坏能力的程序代码。逻辑炸弹的触发条件具有多种方式,包括计数器触发方式、时间触发方式、特定用户访问触发方式等。逻辑炸弹只在触发条件满足后,才开始执行逻辑炸弹的破坏功能。逻辑炸弹一旦触发,有可能造成文件删除、服务停止、软件中断运行等破坏。逻辑炸弹不能复制自身,不能感染其他程序。

14.6.2 陷门

  陷门是软件系统里的一段代码,允许用户避开系统安全机制而访问系统。陷门由专门的命令激活,一般不容易发现。陷门通常是软件开发商为调试程序、维护系统而设定的功能。陷门不具有自动传播和自我复制功能。

14.6.3 细菌

  细菌是指具有复制功能的独立程序。虽然细菌不会直接攻击任何软件,但是它通过复制本身来消耗系统资源。

16.4.4 间谍软件

  间谍软件通常指那些在用户不知情的情况下被安装在计算机中的各种软件,执行用户非期望的功能。这些软件可以产生弹出广告,重定向用户浏览器到陌生的网站。同时,间谍软件还有收集信息的能力,可记录用户的击键情况、浏览习惯,甚至会窃取用户的个人信息(如用户帐号和口令、信用卡号),然后经因特网传送给攻击者。一般来说,间谍软件不具备自我复制功能。

14.7 恶意代码防护主要产品与技术指标

14.7.1 恶意代码防护主要产品

  1. 终端防护产品
    终端防护类型的产品部署在受保护的终端上,常见的终端有桌面电脑、服务器、智能手机、智能设备。
  2. 安全网关产品
    安全网关主要用来拦截恶意代码的传播,防止破坏扩大化。安全网关产品分为三大类:第一类是通用性专用安全网关,这类安全网关还是针对某个具体的应用,例如统一威胁管理(UTM)、IPS;第二类是应用安全网关,例如邮件网关和Web防火墙;第三类则是具有安全功能的网络设备,例如路由器。
  3. 恶意代码监测产品
    恶意代码监测产品的技术原理是通过网络流量监测以发现异常节点或者异常通信连接,以便早发现网络蠕虫、特洛伊木马、僵尸网络等恶意代码活动。典型产品有IDS、网络协议分析器等。
  4. 恶意代码防护产品:补丁管理系统
    漏洞修补是防范恶意代码最有效的手段。商业版本的补丁管理系统大致分为两类:第一类是面向PC终端用户的补丁管理,这类产品的补丁管理功能依附在杀毒软件包中,例如360安全卫士;第二类是企业级的补丁管理,这类补丁管理是由补丁管理服务器和补丁管理代理共同实现的,这类商业产品有北信源补丁分发管理系统、Microsoft SUS、PatchLink。
  5. 恶意代码应急响应
    目前,常见的恶意代码专杀工具包括如下几种:
  • 金山木马专杀。
  • 木马克星。
  • 木马清除大师。
  • Chkrootkit。
  • AIRT(Advanced Incient response Tool)。
  • 端口关联Fprot。

14.7.2 恶意代码防护主要技术指标

  恶意代码防护产品的主要技术指标有恶意代码检测能力、恶意代码检测准确性、恶意代码阻断能力。
  (1) 恶意代码检测能力。
  (2)恶意代码检测准确性。
  (3)恶意代码阻断能力。恶意代码阻断能力主要包含三个方面:一是阻断技术措施,主要包括基于网络阻断、基于主机阻断、基于应用阻断、人工协同干预阻断;二是阻断恶意代码的类型和数量;三是阻断时效性,即恶意代码阻断安全措施对恶意代码处置的实时性。