第十四章 恶意代码防范技术原理
14.1 恶意代码概述
14.1.1 恶意代码分类
●恶意代码的英文是Malicious Code,它是一种违背目标系统安全策略的程序代码,会造成目标系统信息泄露、资源滥用,破坏系统的完整性及可用性。主要包括如下类型:
·病毒(Virus)、蠕虫(Worms)、特洛伊木马(Trojan Horse)、逻辑炸弹(Logic Bombs)、细菌(Bacteria)、恶意脚本(Malicious Script)和恶意Activex控件、间谍软件(Spyware)等。

14.1.2 恶意代码攻击模型
恶意代码的行为不尽相同,破坏程度也不相同,但作用机制基本相同,分为6个步骤:
①侵入系统。从互联网下载的程序,其自身也许就带有恶意代码;接收了已被恶意感染的电子邮件;通过光盘或软盘在系统上安装的软件;攻击者故意植入系统的恶意代码等。
②维持或提升已有的权限。恶意代码的传播与破坏需要建立在盗用用户或者进程的合法权限的基础之上。
③隐蔽。通过恶意代码改名、删除源文件或者修改系统的安全策略等方式隐蔽入侵行为。
④潜伏。恶意代码侵入系统后,在具有足够的权限并满足某些条件时就会发作,同时进行破坏活动。
⑤破坏。恶意代码具有破坏性的本质,为的是造成信息丢失、泄密,系统完整性被破坏等。
⑥重复前面5步对新的目标实施攻击过程。

14.1.3 恶意代码生存技术




恶意代码的分析方法由静态分析和动态分析两部分构成。



14.1.4 恶意代码防范策略
做好恶意代码防范
①组织管理上必须加强恶意代码的安全防范意识,明确安全责任、义务和注意事项。
②通过技术手段来实现恶意代码防御。防范恶意代码的总体框架如图所示。

14.2 计算机病毒分析与防护
14.2.1 计算机病毒概念与特性
计算机病毒是一组具有自我复制、传播能力的程序代码。它常依附在计算机的文件中,如可执行文件或Word文档等。计算机病毒表现的主要症状如下:
·计算机屏幕显示异常、机器不能引导启动、磁盘存储容量异常减少、磁盘操作异常的读写、出现异常的声音、执行程序文件无法执行、文件长度和日期发生变化、系统死机频繁、系统不承认硬盘、中断向量表发生异常变化、内存可用空间异常变化或减少、系统运行速度性能下降、系统配置文件改变、系统参数改变。
计算机病毒都具有以下四个基本特点
14.2.2 计算机病毒组成与运行机制
病毒由三部分组成:复制传染部件(replicator)、隐藏部件(concealer)、破坏部件(bomb).
计算机病毒的生命周期主要有两个阶段:
第一阶段:计算机病毒的复制传播阶段。这一阶段有可能持续一个星期到几年。计算机病毒在这个阶段尽可能地隐蔽其行为,不干扰正常系统功能。计算机病毒主动搜寻新的主机进行感染,如将病毒附在其他的软件程序中,或者渗透操作系统。可执行程序中的计算机病毒获取程序控制权。在这一阶段,发现计算机病毒特别困难,这主要是因为计算机病毒只感染少量的文件,难以引起用户警觉。
第二阶段,计算机病毒的激活阶段。计算机病毒在该阶段开始逐渐或突然破坏系统。计算机病毒的主要工作是根据数学公式判断激活条件是否满足,用作计算机病毒的激活条件常有日期、时间、感染文件数或其他。
14.2.3 计算机病毒常见类型与技术
14.2.4 常见病毒特征码

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


14.2.6 计算机病毒防护方案


14.3 特洛伊木马分析与防护
14.3.1 特洛伊木马概念与分类
特洛伊木马(Trojan Horse,简称木马),是具有伪装能力、隐蔽执行非法功能的恶意程序。
同计算机病毒和网络蠕虫相比较,特洛伊木马不具有自我传播能力,而是通过其他传播机制来实现。受到特洛伊木马侵害的计算机,攻击者可不同程度地远程控制受害计算机,例如访问受害计算机、在受害计算机上执行命令或利用受害计算机进行DDoS攻击。
特洛伊木马分类:
·本地特洛伊木马:只运行在本地的单台主机,木马没有远程通信功能,木马的攻击环境是多用户的UNIX系统,典型例子就是盗用口令的木马。
·网络特洛伊木马:具有网络通信连接及服务功能的一类木马,简称网络木马。此类木马由两部分组成,即远程木马控制管理和木马代理。(主流)
14.3.2 特洛伊木马运行机制
木马攻击过程主要分为五个部分:
①寻找攻击目标。攻击者通过互联网或其他方式搜索潜在的攻击目标。
②收集目标系统的信息。获取目标系统的信息主要包括操作系统类型、网络结构、应用软件、用户习惯等。
③将木马植入目标系统。攻击者根据所搜集到的信息,分析目标系统的脆弱性,制定植入木马策略木马植入的途径有很多,如通过网页点击、执行电子邮件附件等
④木马隐藏。为实现攻击意图,木马设法隐蔽其行为,包括目标系统本地活动隐藏和远程通信隐藏。
⑤攻击意图实现,即激活木马,实施攻击。木马植入系统后,待触发条件满足后,就进行攻击破坏活动,如窃取口令、远程访问、删除文件等。

14.3.3 特洛伊木马植入技术
特洛伊木马植入是木马攻击目标系统最关键的一步,是后续攻击活动的基础。
特洛伊木马植入方法可以分为:被动植入和主动植入。
·被动植入:通过人工干预方式才能将木马程序安装到目标系统中,依赖受害用户的手工操作;被动植入主要通过社会工程方法将木马程序伪装成合法的程序,常用方法:
·文件捆绑法:将木马捆绑到一些常用软件包中,当用户安装软件时,木马就被植入系统中。
·邮件附件:将木马程序伪装成邮件附件,发送给目标用户,若用户执行邮件附件就将木马植入该系统中。
·Web网页:木马程序隐藏在html文件中,当受害用户点击该网页时,就将木马植入目标系统中。
·主动植入:将木马程序通过程序自动安装到目标系统中,植入过程无须受害用户的操作。
14.3.4 特洛伊木马隐藏技术
特洛伊木马的设计者为了逃避安全检测,就要设法隐藏木马的行为或痕迹其主要技术目标就是将木马的本地活动行为、木马的远程通信过程进行隐藏。

14.3.5 特洛伊木马存活技术
特洛伊木马的存活能力取決于网络木马逃避安全监测的能力,一些网络木马侵入目标系统时采用反监测技术,甚至中断反网络木马程序运行。
“广外女生”是一个国产的特洛伊木马,可以让“金山毒霸”和“天网防火墙”失效。【超级管理技术】
·一些高级木马常具有端口反向连接功能,例如“Boinet”“网络神偷”“灰鸽子”等木马。端口反向连接技术是指由木马代理在目标系统主动连接外部网的远程木马控制端以逃避防火墙的限制。
14.3.6 特洛伊木马防范技术
防范木马监测与预警、通信阻断、系统加固及修复、应急管理等技术综合使用,主要防范技术:


Rootkit是什么?
Rootkit源于UNIX系统, Root指拥有所有特权的管理员, Kit是管理工具,由此可以认为Rootkit就是而已获取管理员特权的工具,可以利用其越权。
Rootkit是一种通过修改操作系统内核或更改指令执行路径,来隐藏系统对象(包括文件、进程、驱动、注册表项、开放端口和网络连接等),以逃避或者规避标准系统机制的程序。
14.4 网络蠕虫分析与防护
14.4.1 网络蠕虫概念与特性
网络蠕虫是一种具有自我复制和传播能力、可独立自动运行的恶意程序。
综合了黑客技术和计算机病毒技术,通过利用系统中存在漏洞的节点主机,将蠕虫自身从一个节点传播到另外一个节点。在网络环境下,多模式化的传播途径和复杂的应用环境使网络蠕虫的发生频率增高、传播性变强、影响面更广,造成的损失也更大。
蠕虫由四大功能模块:

14.4.2 网络蠕虫的运行机制
网络蠕虫的运行机制主要分为三个阶段。
①已经感染蠕虫的主机在网络上搜索易感染目标主机。 【搜索】
②已经感染蠕虫的主机把蠕虫代码传送到易感染目标主机上。 【传送】
③易感染目标主机执行蠕虫代码,感染目标主机系统。目标主机感染后,又开始第一阶段的工作,寻找下一个易感目标主机,重复第二、第三阶段的工作,直至蠕虫从主机系统被清除掉。【感染】

14.4.3 网络蠕虫常用技术

14.4.4 网络蠕虫防范技术

14.5 僵尸网络分析与防护
14.5.1 僵尸网络分析与防护
僵尸网络(Botnet)是指攻击者利用入侵手段将僵尸程序(bot or zombie)植入目标计算机上,进而操纵受害机执行恶意活动的网络。
僵尸网络的构建方式主要有远程漏洞攻击、弱口令扫描入侵、邮件附件、恶意文档、文件共享等。
僵尸网络运行机制与技术:僵尸网络的运行机制主要由三个基本环节构成。
①僵尸程序的传播。
②对僵尸程序进行远程命令操作和控制,将受害目标机组成一个网络。
③攻击者通过僵尸网络的控制服务器,给僵尸程序发送攻击指令,执行攻击活动。
僵尸网络防范技术:
①僵尸网络威胁监测。通常利用蜜罐技术获取僵尸网络威胁信息。
②僵尸网络检测。根据僵尸网络的通信内容和行为特征,检测网络中的异常网络流量。
③僵尸网络主动遏制。通过路由和DNS黑名单等方式屏蔽恶意的IP地址或域名。
④僵尸程序查杀。在受害的目标机上,安装专用安全工具,清除僵尸程序。
病毒、木马与蠕虫的相同与不同之处?
相同点:会对计算机信息的保密性和完整性造成损害。
不同点:
病毒:自我复制、传播、对主机造成破坏的可执行程序。
木马:伪装成正常应用骗取用户信任而入侵,潜伏在电脑中盗取用户资料与信息。木马会极力隐藏自己,一般不具备破坏性功能,传播方式十分多样。
蠕虫:不断复制自身,消耗占用计算机性能和操作系统资源,大多数通过可移动介质以及内网传播。部分蠕虫样本携带感染性“基因”,会修改正常文件,以至于让文件无法正常打开。
木马属于后门间谍恶意软件,蠕虫属于病毒。
僵尸网络与木马的区别?
木马分为本地木马和网络木马,僵尸网络本质是大量感染网络木马组成的主机组成的网络。
14.5.2 其他恶意代码分析与保护
逻辑炸弹:一段依附在其他软件中,并具有触发执行破坏能力的程序代码。满足触发条件,才开始执行逻辑炸弹的破坏功能。包括计数器触发、时间触发、文件触发、特定用户访问触发等。
陷门(后门):软件系统里的一段代码,允许用户避开系统安全机制而访问系统。陷门通常是软件开发商为调试程序、维护系统而设定的功能。陷门门不具有自动传播和自我复制功能。
细菌:具有自我复制功能的独立程序。虽然细菌不会直接攻击任何软件,但是它通过复制本身来消耗系统资源。例如,某个细菌先创建两个文件,然后以两个文件为基础进行自我复制,那么细菌以指数级的速度增长,很快就会消耗掉系统资源,包括CPU、内存、磁盘空间。
间谍软件:用户不知情的情况下被安装在计算机中的备种软件,执行用户非期望的功能。这些软件可以产生弹出广告,重定向用户浏览器到陌生的网站。同时,间谍软件还具有收集信息的能力,可记录用户的击键情况、浏览习惯,甚至会窃取用户的个人信息(如用户账号和口令、信用卡号),然后经因特网传送给攻击者。一般来说,间谍软件不具备自我复制功能。
14.5.3 恶意代码防护主要产品

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

14.5.5 恶意代码防护技术应用
终端防护:终端防护通常是在终端上安装一个恶意代码防护代理程序,该代理程序按照终端管理中心下发的安全策略进行安全控制。
APT防护:高级持续威胁(简称APT)通常利用电子邮件作为攻击目标系统。攻击者将恶意代码嵌入电子邮件中,然后把它发送到目标人群,诱使收件人打开恶意电子文档或单击某个指向恶意站点的链接。一旦收件人就范,恶意代码将会安装在其计算机中,从而远程控制收件人的计算机,进而逐步渗透到收件人所在网络,实现其攻击意图。
针对高级持续威胁攻击的特点,部署APT检测系统,检测电子文档和电子邮件是否存在恶意代码,以防止攻击者通过电子邮件和电子文档渗透入侵网络。
