导图社区 恶意代码防范技术原理
,恶意代码具有隐蔽性、潜伏性和传染性,用户在使用计算机过程中可能不知不觉地将恶意代码引入所使用的计算机中,所以防范恶意代码应从安全意识上着手,明确安全责任、义务和注意事项。另一
编辑于2022-10-11 17:35:51 湖北省14.恶意代码防范技术原理
本章以“总分总”结构进行阐述,1概述中说了通用了“分析与防护”技术,又在2、3、4、5、6中进一步进行了补充阐述。有很多内容是重复的。
1. 恶意代码概述
1.2.3.4是站在攻击者的角度进行描述的。5.6是站在防御者的角度描述的。
1. 恶意代码定义与分类
恶意代码的英文是Malicious Code,它是一种违背目标系统安全策略的程序代码。---Mali 骂你,显然是“恶意”的
恶意代码的种类主要包括计算机病毒(Computer Virus)、蠕虫(Worms)、特洛伊木马(Trojan Horse)、逻辑炸弹(Logic Bombs)、细菌(Bacteria)、恶意脚本(Malicious Scripts)和恶意ActiveX控件、间谍软件(Spyware)等。
恶意代码的传播和植入能力由被动向主动转变,由本地主机向网络发展,恶意代码具有更强的隐蔽性,不仅实现进程隐藏和内容隐藏,而且也能做到通信方式隐藏。在恶意代码的攻击目标方面,恶意代码由单机环境向网络环境转变,从有线网络环境向无线网络环境演变,现在已经出现手机病毒。恶意代码逐渐拥有抗监测能力,如通过变形技术来逃避安全防御机制。
2. 恶意代码攻击模型
第一步,侵入系统。
第二步,维持或提升已有的权限。
第三步,隐蔽。
第四步,潜伏。等待触发条件...
第五步,破坏。
第六步,重复前面5步对新的目标实施攻击过程。
3. 恶意代码生存技术
(1) 反跟踪技术
1||| 反动态跟踪技术
禁止跟踪中断。针对调试分析工具运行系统的单步中断与断点中断服务程序,恶意代码通过修改中断服务程序的入口地址来实现其反跟踪的目的。---目的,中断“调试分析工具”的运行
检测跟踪法。根据检测跟踪调试时和正常执行时的运行环境、中断入口和时间的不同,采取相应的措施实现其反跟踪目的。---恶意代码在正常运行(---编译方式运行,不可控)环境和调试跟踪环境(---可控制)的运行状态是不一样的,目的就是想办法让你无法调试我
其他反跟踪技术。如指令流队列法和逆指令流法等。
2||| 反静态分析技术
对程序代码分块加密执行。将分块的程序代码以密文形式装入内存,由解密程序在执行时进行译码,立即清除执行完毕后的代码。---恶意代码加密自己,解密后立即清除,不让你分析
伪指令法。伪指令法指将“废指令”插入指令流中,让静态反汇编得不到全部正常的指令,进而不能进行有效的静态分析。伪指令技术还广泛应用于宏病毒与脚本恶意代码之中。
(2) 加密技术
让分析者不能正常调试和阅读恶意代码,无法获得恶意代码的工作原理,自然也不能抽取特征串。从加密的内容上划分,加密手段有三种,即信息加密、数据加密和程序代码加密。
(3) 模糊变换技术
恶意代码每感染一个客体对象时都会利用模糊变换技术使潜入宿主程序的代码不尽相同。尽管是同一种恶意代码,但仍会具有多个不同样本,几乎不存在稳定的代码。
技术分类
1||| 指令替换技术。模糊变换引擎(Mutation Engine)对恶意代码的二进制代码进行反扩编,解码并计算指令长度,再对其同义变换。例如,指令XOR REG,REG被变换为SUB REG,REG。---把一种指令 替换为 另一种 同义指令,让你认不出来
2||| 指令压缩技术。经恶意代码反汇编后的全部指令由模糊变换器检测,对可压缩的指令同义压缩。压缩技术要想使病毒体代码的长度发生改变,必须对病毒体内的跳转指令重定位。例如指令MOV REG,12345678/PUSH REG变换为指令PUSH 12345678等。
3||| 指令扩展技术。扩展技术是对汇编指令进行同义扩展,所有经过压缩技术变换的指令都能够使用扩展技术来进行逆变换。扩展技术远比压缩技术的可变换空间大,指令甚至能够进行几十或上百种的扩展变换。扩展技术也需要对恶意代码的长度进行改变,进行恶意代码中跳转指令的重定位。
4||| 伪指令技术。伪指令技术主要是将无效指令插入恶意代码程序体,例如空指令。
5||| 重编译技术。使用重编译技术的恶意代码中携带恶意代码的源码(---源码是不能直接运行的,需要编译后才能运行),要在自带编译器或者操作系统提供编译器的基础上进行重新编译,这种技术不仅实现了变形的目的,而且为跨平台(同一源码可以再不同的平台<linux/windows>中运行)的恶意代码的出现提供了条件。这表现在UNIX/Linux操作系统,系统默认配置有标准C的编译器。宏病毒和脚本恶意代码是典型的采用这类技术变形的恶意代码。Tequtla是第一例在全球范围传播和破坏的变形病毒。
(4) 自动生产技术
普通病毒能够利用“多态性发生器”编译成具有多态性的病毒。多态变换引擎能够让程序代码本身产生改变,但却可以保持原有功能。例如保加利亚的“DarkAvenger”,变换引擎每产生一个恶意代码,其程序体都会发生变化,反恶意代码软件若只是采用基于特征的扫描技术,则无法检测和清除这种恶意代码。
(5) 变形技术
病毒设计者利用病毒特征代码库固定性这一漏洞,设计出具有同一功能不同特征码的恶意代码。
常见变形技术
1||| 重汇编技术。变形引擎对病毒体的二进制代码进行反汇编,解码每一条指令,并对指令进行同义变换。如“Regswap”就采用简单的寄存器互换的变形。
2||| 压缩技术。变形器检测病毒体反汇编后的全部指令,对可进行压缩的一段指令进行同义压缩。
3||| 膨胀技术。压缩技术的逆变换就是对汇编指令同义膨胀。
4||| 伪指令技术。伪指令技术主要是对病毒体插入废指令,例如空指令
5||| 重编译技术。病毒体携带病毒体的源码,需要自带编译器或者利用操作系统提供的编译器进行重新编译,这为跨平台的恶意代码的出现打下了基础。
(6) 三线程技术
为了防止恶意代码被外部操作停止运行。三线程技术的工作原理是一个恶意代码进程同时开启了三个线程,其中一个为负责远程控制工作的主线程,另外两个为用来监视线程负责检查恶意代码程序是否被删除或被停止自启动的监视线程和守护线程。只要进程被停止,它就会重新启动该进程。
(7) 进程注入技术
在系统启动时操作系统的系统服务和网络服务一般能够自动加载。恶意代码程序为了实现隐藏和启动的目的,把自身嵌入与这些服务有关的进程中。这类恶意代码只需要安装一次,就能被服务加载到系统中运行,并且可以一直处于活跃状态。
(8) 通信隐藏技术(有四类)
1||| 端口定制技术,旧木马几乎都存在预设固定的监听端口,但是新木马一般都有定制端口的功能。优点:木马检测工具的一种检测方法就是检测缺省端口,定制端口可以避过此方法的检测。
2||| 端口复用技术利用系统网络打开的端口(如25和139等)传送数据。具有很强的欺骗性,可欺骗防火墙等安全设备,可避过IDS和安全扫描系统等安全工具。---25是SMTP
3||| 通信加密技术,即将恶意代码的通信内容加密发送。通信加密技术胜在能够使得通信内容隐藏,但弊端是通信状态无法隐藏。---A <--->B加密通信,通信内容隐藏;但A和B之间的会话状态是无法隐藏的
4||| 隐蔽通道技术能有效隐藏通信内容和通信状态,但恶意代码编写者需要耗费大量时间以便找寻隐蔽通道。
(9) 内核级隐藏技术
1||| LKM隐藏。LKM是可加载内核模块,用来扩展Linux的内核功能。LKM能够在不用重新编译内核的情况下把动态加载到内存中。基于这个优点,LKM技术经常使用在系统设备的驱动程序和Rootkit中。LKM Rootkit通过系统提供的接口加载到内核空间,将恶意程序转化成内核的某一部分,再通过hook系统调用的方式实现隐藏功能。
2||| 内存映射隐藏。内存映射是指由一个文件到一块内存的映射。内存映射将硬盘上的内容映射至内存中,用户可以通过内存指令读写文件。使用内存映射避免了多次调用I/O操作的行为,减少了不必要的资源浪费。
4. 恶意代码攻击技术
(1) 进程注入技术。系统服务和网络服务在操作系统中,当系统启动时被自动加载。---与上面类同
(2) 超级管理技术。部分恶意代码能够攻击反恶意代码软件。恶意代码采用超级管理技术对反恶意代码软件系统进行拒绝服务攻击,阻碍反恶意代码软件的正常运行。
(3) 端口反向连接技术。防火墙对于外网进入内部的数据流有严格的访问控制策略,但对于从内到外的数据并没有严格控制。指令恶意代码使用端口反向连接技术使攻击的服务端(被控制端)主动连接客户端(控制端)端口。如国外的“Boinet'”,我国的“网络神偷”“灰鸽子”。
(4) 缓冲区溢出攻击技术。恶意代码利用系统和网络服务的安全漏洞植入并且执行攻击代码,攻击代码以一定的权限运行有缓冲区溢出漏洞的程序来获得被攻击主机的控制权。例如,“红色代码”。
5. 恶意代码分析技术
(1) 静态分析方法
1||| 反恶意代码软件的检测和分析。反恶意代码软件检测恶意代码的方法有特征代码法、校验和法、行为监测法、软件模拟法等。根据恶意代码的信息去搜寻更多的资料,若该恶意代码的分析数据已被反恶意代码软件收录,那就可以直接利用它们的分析结果。
2||| 字符串分析。目的是寻找文件中使用的ASCII或其他方法编码的连续字符串。
3||| 脚本分析。恶意代码如果是用JS、PerI或者shell脚本等脚本语言编写的,那么恶意代码本身就可能带有源代码。通过文本编辑器将脚本打开查看源代码。脚本分析能帮助分析者用较短时间识别出大量流行的脚本类型。
4||| 静态反编译分析。对于携带解释器的恶意代码可以采用反编译工具查看源代码。因为编译器优化使得逆向编译的代码有着较差的可读性。
5||| 静态反汇编分析。有线性遍历和递归遍历两种方法。线性遍历算法从头到尾遍历,不能够处理嵌入指令流中的数据的问题,如跳转表。递归遍历算法试图用反汇编出来的控制流指令来指导反汇编过程,以此解决上面线性遍历所存在的问题。
(2) 动态分析方法
1||| 文件监测。恶意代码执行后,在目标主机上可能读写各文件,修改程序,添加文件,甚至把代码嵌入其他文件,因此对文件系统必须进行监测。
2||| 进程监测。
3||| 网络活动监测。
4||| 注册表监测。---Windows操作系统
5||| 动态反汇编分析。动态反汇编指在恶意代码的执行过程中对其进行监测和分析。其基本思想是将恶意代码运行的控制权交给动态调试工具。---在调试工具中反汇编还原攻击代码。主要的动态反汇编分析方法有以下两种: I.同内存调试。这种方法使调试工具与被分析恶意代码程序加载到相同的地址空间里。该方法的优点是实现代价相对较低,相对来说比较简单;缺点是需要改变被分析程序的地址。 II.仿真调试,即虚拟调试。这种方法是让调试工具与分析的恶意代码程序处于不同的地址空间,可绕过很多传统动态反跟踪类技术。这种方法的优点是不用修改目标程序中的地址,但在进程间控制权的转移上要付出较高的代价。
6. 恶意代码防范策略
组织管理上必须加强恶意代码的安全防范意识。通过技术手段来实现恶意代码防御。
2. 计算机病毒分析与防护
1. 计算机病毒概念与特性
计算机病毒是一组具有自我复制、传播能力的程序代码。它常依附在计算机的文件中,如可执行文件或Word文档等。
计算机病毒表现的主要症状如下:计算机屏幕显示异常、机器不能引导启动、磁盘存储容量异常减少、磁盘操作异常的读写、出现异常的声音、执行程序文件无法执行、文件长度和日期发生变化、系统死机频繁、系统不承认硬盘、中断向量表发生异常变化、内存可用空间异常变化或减少、系统运行速度性能下降、系统配置文件改变、系统参数改变。
计算机病毒的四个基本特点
(1)隐蔽性。
(2)传染性。指计算机病毒可以进行自我复制。计算机病毒与其他程序最本质的区别在于计算机病毒能传染。
(3)潜伏性。触发条件满足时,才执行病毒的恶意功能,从而产生破坏作用。
(4)破坏性。
2. 计算机病毒组成与运行机制
计算机病毒由三部分组成:复制传染部件(replicator)、隐藏部件(concealer)、破坏部件(bomb)。
计算机病毒的生命周期
第一阶段,计算机病毒的复制传播阶段。这一阶段有可能持续一个星期到几年。计算机病毒在这个阶段尽可能地隐蔽其行为,不干扰正常系统的功能。计算机病毒主动搜寻新的主机进行感染,如将病毒附在其他的软件程序中,或者渗透操作系统。同时,可执行程序中的计算机病毒获取程序控制权。在这一阶段,发现计算机病毒特别困难,这主要是因为计算机病毒只感染少量的文件,难以引起用户警觉。
第二阶段,计算机病毒的激活阶段。计算机病毒在该阶段开始逐渐或突然破坏系统。计算机病毒的主要工作是根据数学公式判断激活条件是否满足,用作计算机病毒的激活条件常有日期、时间、感染文件数或其他。
3. 计算机病毒常见类型与技术
(1) 引导型病毒。感染计算机系统的引导区而控制系统。
(2) 宏病毒(Macro Viruses)。是指利用宏语言来实现的计算机病毒。宏病毒的出现改变了病毒的载体模式,以前病毒的载体主要是可执行文件,而现在文档或数据也可作为宏病毒的载体。宏病毒的出现实现了病毒的跨平台传播,它能够感染任何运行Office的计算机。
(3) 多态病毒(Polymorphic Viruses)。多态病毒每次感染新的对象后,通过更换加密算法,改变其存在形式。一般需要采用启发式分析方法来发现。多态病毒有三个主要组成部分:杂乱的病毒体、解密例程、变化引擎。变化引擎和病毒体都被加密。多态病毒没有固定的特征、没有固定的加密倒程,从而就能逃避基于静态特征的病毒扫描器的检测。
(4) 隐蔽病毒(Stealth Viruses)。隐蔽病毒试图将自身的存在形式进行隐藏,使得操作系统和反病毒软件不能发现。隐蔽病毒使用的技术有许多,主要包括:隐藏文件的日期、时间的变化;隐藏文件大小的变化;病毒加密。
4. 计算机病毒防范策略与技术
(1) 查找计算机病毒源
对计算机文件及磁盘引导区进行计算机病毒检测,以发现异常情况,确证计算机病毒的存在。主要有以下几种方法:
①比较法。原始备份与被检测的引导扇区或被检测的文件进行比较。
②搜索法。搜索法是用每一种病毒体含有的特定字节串对被检测的对象进行扫描。
③特征字识别法。特征字识别法是基于特征串扫描法发展起来的一种新方法。特征字识别法只须从病毒体内抽取很少的几个关键特征字,组成特征字库。
④分析法。详细分析病毒代码。
(2) 阻断计算机病毒传播途径
①用户具有计算机病毒防范安全意识和安全操作习惯。用户不要轻易运行未知可执行软件。
②消除计算机病毒载体。关键的计算机,做到尽量专机专用;不要随便使用来历不明的存储介质,如磁盘、USB;禁用不需要的计算机服务和功能,如脚本语言、光盘自启动等。
③安全区域隔离。重要生产区域网络系统与办公网络进行安全分区。
(3) 主动查杀计算机病毒
(4) 计算机病毒应急响应和灾备
备份。是应对计算机病毒最有效的方法。
数据修复技术。对遭受计算机病毒破坏的磁盘、文件等进行修复。
网络过滤技术。通过网络的安全配置,将遭受计算机病毒攻击的计算机或网段进行安全隔离。
计算机病毒应急响应预案。
5. 计算机病毒防护方案
基于单机计算机病毒防护。阻止来自软盘、光盘、共享文件、互联网的病毒入侵,进行重要数据备份等其他功能,防护单台计算机。
基于网络计算机病毒防护。通过在网管中心建立网络防病毒管理平台,实现病毒集中监控与管理,在网管所涉及的重要部位设置防病毒软件或设备,防止病毒侵袭。
基于网络分级病毒防护。基于三级管理模式:单机终端杀毒-局域网集中监控-广域网总部管理。
基于邮件网关病毒防护。
基于网关防护。在网络出口处设置有效的病毒过滤系统,如防火墙。网关杀毒是杀毒软件和防火墙技术的完美结合。
3. 特洛伊木马分析与防护
1. 特洛伊木马概念与特性
特洛伊木马(Trojan Horse,简称木马),是具有伪装能力、隐蔽执行非法功能的恶意程序,而受害用户表面上看到的是合法功能的执行。它通过伪装成合法程序或文件,植入系统,对网络系统安全构成严重威胁。特洛伊木马不具有自我传播能力。受到特洛伊木马侵害的计算机,攻击者可不同程度地远程控制受害计算机。
2. 特洛伊木分类
根据特洛伊木马的管理方式,可以将特洛伊木马分为本地特洛伊木马和网络特洛伊木马。
本地特洛伊木马的特点是木马只运行在本地的单台主机,木马没有远程通信功能,木马的攻击环境是多用户的UNIX系统,典型例子就是盗用口令的木马。
网络特洛伊木马是指具有网络通信连接及服务功能的一类木马,简称网络木马。此类木马由两部分组成,即远程木马控制管理和木马代理。其中远程木马控制管理主要是监测木马代理的活动,远程配置管理代理,收集木马代理窃取的信息;而木马代理则是植入目标系统中。
3. 特洛伊木马运行机制
①寻找攻击目标。
②收集目标系统的信息。
③将木马植入目标系统。
④木马隐藏。
⑤攻击意图实现,即激活木马,实施攻击。
4. 特洛伊木马植入技术
被动植入。通过人工干预方式才能将木马程序安装到目标系统中。主动植入。将木马程序通过程序自动安装到目标系统中,植入过程无须受害用户的操作。
植入方法
文件捆绑法。将木马捆绑到一些常用的应用软件包中。
邮件附件。
Web网页。木马程序隐藏在html文件中。
5. 特洛伊木马隐藏技术
(1) 本地活动行为隐藏技术
现在的操作系统具有支持LKM的功能,通过LKM可增加系统功能,而且不需要重新编译内核,就可以动态地加载。木马设计者利用操作系统的LKM功能,通过替换或调整系统调用来实现木马程序的隐藏,常见的技术方法包括:文件隐藏、进程隐藏、通信连接隐藏。
(2) 远程通信过程隐藏技术
1||| 通信内容加密技术。将木马通信的内容进行加密处理,使得网络安全管理员无法识别通信内容。
2||| 通信端口复用技术,指共享复用系统网络端口来实现远程通信。端口复用是在保证端口默认服务正常工作的条件下进行复用,具有很强的隐蔽性。
3||| 网络隐蔽通道。指利用通信协议或网络信息交换的方法来构建不同于正常的通信方式。特洛伊木马的设计者将利用这些隐蔽通道绕过网络安全访问控制机制秘密地传输信息。
6. 特洛伊木马存活技术
中断反网络木马程序运行。一些高级木马常具有端口反向连接功能。
7. 特洛伊木马防范技术
防范木马需要将监测与预警、通信阻断、系统加固及修复、应急管理等多种技术综合集成实现。
主要防范技术
1||| 基于查看开放端口检测特洛伊木马技术。基本原理是根据特洛伊木马在受害计算机系统上留下的网络通信端口号痕迹进行判断,如果某个木马的端口在某台机器上开放,则推断该机器受到木马的侵害。查看开放端口的技术有:①系统自带的netstat命令;②用端口扫描软件远程检测机器。
2||| 基于重要系统文件检测特洛伊木马技术。
3||| 基于系统注册表检测特洛伊木马技术。
4||| 检测具有隐藏能力的特洛伊木马技术。Rootkit是典型的具有隐藏能力的特洛伊木马。目前,检测Rootkit的技术有三类: 第一类是针对已知的Rootkit进行检测,这种方法基于Rootkit的运行痕迹特征来判断计算机系统是否存在木马。对未知的Rootkit几乎无能为力。 第二类是基于执行路径的分析检测方法。其基本原理是安装Rootkit的系统在执行一些操作时,由于要完成附加的Rootkit的功能,如隐藏进程、文件等,则需要执行更多的CPU指令,通过利用x86系列的CPU提供的步进模式,在CPU每执行一条指令后进行计数,将测量到的结果与正常的干净的系统测得的数据进行比较,然后根据比较的差异,判断系统是否可能已被安装了Rootkit。这种方法不仅限于己知的Rootkit,对于所有通过修改系统执行路径来达到隐藏和执行功能目的的Rootkit都有很好的作用。 第三类是直接读取内核数据的分析检测方法。该方法针对通过修改内核数据结构的方法来隐藏自己的Rootkit,其基本原理是直接读取内核中的内部数据以判断系统当前的状态。
5||| 基于网络检测特洛伊木马技术。在网络中安装入侵检测系统。防止特洛伊木马植入主要有下面几种方法: 第一,不轻易安装未经过安全认可的软件,特别是来自公共网的软件。 第二,提供完整性保护机制,即在需要保护的计算机上安装完整性机制,对重要的文件进行完整性检查。 第三,利用漏洞扫描软件,检查系统存在的漏洞,安装补丁软件包。
6||| 基于网络阻断特洛伊木马技术。利用防火墙、路由器、安全网关等网络设备。
7||| 清除特洛伊木马技术。手工清除方法和软件清除方法。
4. 网络蠕虫分析与防护
1. 网络蠕虫概念与特性
网络蠕虫是一种具有自我复制和传播能力、可独立自动运行的恶意程序。它综合了黑客技术和计算机病毒技术,通过利用系统中存在漏洞的节点主机,将蠕虫自身从一个节点传播到另外一个节点。
2. 网络蠕虫组成与运行机制
网络蠕虫的四个功能模块
(1)探测模块。完成对特定主机的脆弱性检测。
(2)传播模块。生成各种形态的蠕虫副本,在不同主机间完成蠕虫副本传递。
(3)蠕虫引擎模块。该模块决定采用何种搜索算法对本地或者目标网络进行信息搜集。
(4)负载模块。也就是网络蠕虫内部的实现伪代码。
网络蠕虫的运行机制主要分为三个阶段
第一阶段,已经感染蠕虫的主机在网络上搜索易感染目标主机。
第二阶段,已经感染蠕虫的主机把蠕虫代码传送到易感染目标主机上。
第三阶段,易感染目标主机执行蠕虫代码,感染目标主机系统。目标主机感染后,又开始第一阶段的工作,寻找下一个易感目标主机,重复第二、第三阶段的工作,直至蠕虫从主机系统被清除掉。
3. 网络蠕虫常用技术
(1) 网络蠕虫扫描技术
1||| 网络蠕虫改善传播效果的方法是提高扫描的准确性,快速发现易感的主机。有三种措施可以采取:一是减少扫描未用(---如只扫描在线主机)的地址空间;二是在主机漏洞密度高(---构造地址空间,有的放矢)的地址空间发现易感主机;三是增加感染源(---干扰源指数级增长)。
2||| 随机扫描。基本原理是网络蠕虫会对整个IP地址空间随机抽取的一个地址进行扫描,这样网络蠕虫感染下一个目标具有非确定性。
3||| 顺序扫描。基本原理是网络蠕虫根据感染主机的地址信息,按照本地优先原则,选择它所在网络内的IP地址进行传播。顺序扫描又可称为“子网扫描”。若蠕虫扫描的目标地址IP为A,则扫描的下一个地址IP为A+1或者A-1。一旦扫描到具有很多漏洞主机的网络时就会达到很好的传播效果。该策略使得网络蠕虫避免扫描到未用地址空间,不足的地方是对同一台主机可能重复扫描,引起网络拥塞。
4||| 选择性扫描。基本原理是网络蠕虫在事先获知一定信息的条件下,有选择地搜索下一个感染目标主机。可以进步一分为五种: 第一种,选择性随机扫描。 第二种,基于目标列表的扫描。是指网络蠕虫在寻找受感染的目标前,预先生成一份可能易传染的目标列表。 第三种,基于路由的扫描。是指网络蠕虫根据网络中的路由信息,如BGP路由表信息,有选择地扫描IP地址空间,以避免扫描无用的地址空间。 第四种,基于DNS的扫描。 第五种,分而治之的扫描。是网络蠕虫之间相互协作快速搜索易感染主机的一种策略。提高网络蠕虫的扫描速度,同时避免重复扫描。不足是存在“坏点”问题。在蠕虫传播的过程中,如果一台主机死机或崩溃,那么所有传给它的地址库就会丢失。
(2) 网络蠕虫漏洞利用技术
1||| 主机之间的信任关系漏洞。
2||| 目标主机的程序漏洞。
3||| 目标主机的默认用户和口令漏洞。
4||| 目标主机的用户安全意识薄弱漏洞。
5||| 目标主机的客户端程序配置漏洞,如自动执行网上下载的程序。
4. 网络蠕虫防范技术
1||| 网络蠕虫监测与预警技术。基本原理是在网络中安装探测器。
2||| 网络蠕虫传播抑制技术。基本原理是利用网络蠕虫的传播特点,来构造一个限制网络蠕虫传播的环境。如蜜罐技术。
3||| 网络系统漏洞检测与系统加固技术。解决漏洞问题。
4||| 网络蠕虫免疫技术。设置一个蠕虫感染标记,欺骗真实的网络蠕虫。---疫苗
5||| 网络蠕虫阻断与隔离技术。主要利用防火墙、路由器进行控制。
6||| 网络蠕虫清除技术。可以手工清除或用专用工具清除。
5. 僵尸网络分析与防护
1. 僵尸网络概念与特性
僵尸网络(Botnet)是指攻击者利用入侵手段将僵尸程序(bot or zombie)植入目标计算机上,进而操纵受害机执行恶意活动的网络。僵尸网络的构建方式主要有远程漏洞攻击、弱口令扫描入侵、邮件附件、恶意文档、文件共享等。
2. 僵尸网络运行机制与技术
僵尸网络的运行机制主要由三个基本环节构成
第一步,僵尸程序的传播。
第二步,对僵尸程序进行远程命令操作和控制,将受害目标机组成一个网络。
第三步,攻击者通过僵尸网络的控制服务器,给僵尸程序发送攻击指令,执行攻击活动。
僵尸网络为保护自身安全,其控制服务器和僵尸程序的通信使用加密机制,并把通信内容嵌入正常的HTTP流量中,以保护服务器的隐蔽性和匿名性。控制服务器和僵尸程序也采用认证机制,以防范控制消息伪造和篡改。
3. 僵尸网络防范技术
1.僵尸网络威胁监测。通常利用蜜罐技术获取僵尸网络威胁信息。
2.僵尸网络检测。根据僵尸网络的通信内容和行为特征,检测网络中的异常网络流量。
3.僵尸网络主动遏制。通过路由和DNS黑名单等方式屏蔽恶意的IP地址或域名。
4.僵尸程序查杀。在受害的目标机上,安装专用安全工具,清除僵尸程序。
6. 其他恶意代码分析与防护
1. 逻辑炸弹
逻辑炸弹是一段依附在其他软件中,并具有触发执行破坏能力的程序代码。逻辑炸弹的触发条件具有多种方式,包括计数器触发方式、时间触发方式、文件触发方式、特定用户访问触发方式等。逻辑炸弹只在触发条件满足后,才开始执行逻辑炸弹的破坏功能。逻辑炸弹不能复制自身,不能感染其他程序。
2. 陷门
陷门(---后门)是软件系统里的一段代码,允许用户避开系统安全机制而访问系统。陷门由专门的命令激活。陷门通常是软件开发商为调试程序、维护系统而设定的功能。陷门不具有自动传播和自我复制功能。
3. 细菌
细菌是指具有自我复制功能的独立程序。虽然细菌不会直接攻击任何软件,但是它通过复制本身来消耗系统资源。
4. 间谍软件
间谍软件通常指那些在用户不知情的情况下被安装在计算机中的备种软件,执行用户非期望的功能。这些软件可以产生弹出广告,重定向用户浏览器到陌生的网站。同时,间谍软件还具有收集信息的能力,可记录用户的击键情况、浏览习惯,甚至会窃取用户的个人信息(如用户账号和口令、信用卡号),然后经因特网传送给攻击者。一般来说,间谍软件不具备自我复制功能。
7. 恶意代码防护主要产品与技术指标
1. 恶意代码防护主要产品
(1) 终端防护产品。部署在受保护的终端上,常见的终端有桌面电脑、服务器、智能手机、智能设备。目前,典型的防护模式是云+终端。
(2) 安全网关产品。主要用来拦截恶意代码的传播,防止破坏扩大化。安全网关产品分为三大类:第一类是通用性专用安全网关,这类安全网关不是针对某个具体的应用,例如统一威胁管理(UTM)、IPS;第二类是应用安全网关,例如邮件网关和Web防火墙;第三类则是具有安全功能的网络设备,例如路由器。
(3) 恶意代码监测产品。典型产品有IDS、网络协议分析器等。
(4) 恶意代码防护产品:补丁管理系统。面向PC终端用户的补丁管理,企业级的补丁管理。
(5) 恶意代码应急响应。安全厂商的恶意代码专杀工具。
2. 恶意代码防护主要技术指标
(1)恶意代码检测能力。技术检测措施通常包括静态检测和动态检测。
(2)恶意代码检测准确性。
(3)恶意代码阻断能力。恶意代码阻断能力主要包含三个方面:一是阻断技术措施,主要包括基于网络阻断、基于主机阻断、基于应用阻断、人工协同干预阻断;二是阻断恶意代码的类犁和数量;三是阻断时效性,即恶意代码阻断安全措施对恶意代码处置的实时性。
8. 恶意代码防护技术应用
1. 终端防护
终端防护通常是在终端上安装一个恶意代码防护代理程序。
2. APT防护
高级持续威胁(简称APT)通常利用电子邮件作为攻击目标系统。攻击者将恶意代码嵌入电子邮件中。针对高级持续威胁攻击的特点,部署APT检测系统,检测电子文档和电子邮件是否存在恶意代码,以防止攻击者通过电子邮件和电子文档渗透入侵网络。