文档详情

补充-恶意代码防护技术

ji****72
实名认证
店铺
PPT
369.50KB
约43页
文档ID:50910639
补充-恶意代码防护技术_第1页
1/43

第6章 恶意代码分析与防治 1内容提要n恶意代码的发展史及长期存在的原因n恶意代码实现机理、定义以及攻击方法n恶意代码生存技术、隐藏技术n恶意代码防范方法:基于主机的检测方 法和基于网络的检测方法21 恶意代码概述 n代码是指计算机程序代码,可以被执行完成特 定功能任何事物都有正反两面,人类发明的 所有工具既可造福也可作孽,这完全取决于使 用工具的人n计算机程序也不例外,软件工程师们编写了大 量的有用的软件(操作系统,应用系统和数据 库系统等)的同时,黑客们在编写编写扰乱社 会和他人的计算机程序,这些代码统称为恶意 代码(Malicious Codes)31 恶意代码概述n研究恶意代码的必要性n在Internet安全事件中,恶意代码造成的经济损失占有最大的 比例恶意代码主要包括计算机病毒(Virus)、蠕虫(Worm )、木马程序(Trojan Horse)、后门程序(Backdoor)、逻 辑炸弹(Logic Bomb)等等与此同时,恶意代码成为信息 战、网络战的重要手段日益严重的恶意代码问题,不仅使 企业及用户蒙受了巨大经济损失,而且使国家的安全面临着 严重威胁n恶意代码攻击成为信息战、网络战最重要的入侵手段之一。

一个典型的例子是在电影《独立日》中,美国空军对外星飞 船进行核轰炸没有效果,最后给敌人飞船系统注入恶意代码 ,使敌人飞船的保护层失效,从而拯救了地球,从中可以看 出恶意代码研究的重要性 41 恶意代码概述n恶意代码的发展史n恶意代码经过20多年的发展,破坏性、种类和感染性都得到增强 随着计算机的网络化程度逐步提高,网络传播的恶意代码对人们日 常生活影响越来越大n1988 年11 月泛滥的Morris蠕虫,顷刻之间使得6000 多台计算机( 占当时Internet 上计算机总数的10%多)瘫痪,造成严重的后果, 并因此引起世界范围内关注n1998 年CIH病毒造成数十万台计算机受到破坏1999 年Happy 99、 Melissa 病毒大爆发,Melissa 病毒通过E-mail 附件快速传播而使E- mail 服务器和网络负载过重,它还将敏感的文档在用户不知情的情 况下按地址簿中的地址发出n2000 年5 月爆发的“爱虫”病毒及其以后出现的50 多个变种病毒,是 近年来让计算机信息界付出极大代价的病毒,仅一年时间共感染了 4000 多万台计算机,造成大约86 亿美元的经济损失51 恶意代码概述n恶意代码的发展史n2001 年,国信安办与公安部共同主办了我国首次计算机病毒疫情网 上调查工作。

结果感染过计算机病毒的用户高达63%,其中,感染 三次以上的用户又占59%多,网络安全存在大量隐患n2001 年8月,“红色代码”蠕虫利用微软Web 服务器IIS 4.0 或5.0 中 Index服务的安全漏洞,攻破目标机器,并通过自动扫描方式传播蠕 虫,在互联网上大规模泛滥n2003 年,SLammer 蠕虫在10 分钟内导致互联网90%脆弱主机受到 感染同年8月,“冲击波”蠕虫爆发,8天内导致全球电脑用户损失高 达20亿美元之多n2004年到2006年,振荡波蠕虫、爱情后门、波特后门等恶意代码利 用电子邮件和系统漏洞对网络主机进行疯狂传播,给国家和社会造 成了巨大的经济损失n目前,恶意代码问题成为信息安全需要解决的,迫在眉睫的、刻不 容缓的安全问题 61 恶意代码概述n恶意代码的发展71 恶意代码概述n恶意代码3个主要特征(从80 年代发展至 今体现):n①恶意代码日趋复杂和完善:从非常简单的,感染游戏的Apple II 病 毒发展到复杂的操作系统内核病毒和今天主动式传播和破坏性极强 的蠕虫恶意代码在快速传播机制和生存性技术研究取得了很大的 成功n②恶意代码编制方法及发布速度更快:恶意代码刚出现时发展较慢 ,但是随着网络飞速发展,Internet 成为恶意代码发布并快速蔓延的 平台。

特别是过去5 年,不断涌现的恶意代码,证实了这一点n③从病毒到电子邮件蠕虫,再到利用系统漏洞主动攻击的恶意代码 :恶意代码的早期,大多数攻击行为是由病毒和受感染的可执行文 件引起的然而,在过去5 年,利用系统和网络的脆弱性进行传播和 感染开创了恶意代码的新纪元81 恶意代码概述n恶意代码长期存在的原因n计算机技术飞速发展的同时并未使系统的安全性得到增强 技术进步带来的安全增强能力最多只能弥补由应用环境的复 杂性带来的安全威胁的增长程度不但如此,计算机新技术 的出现还很有可能使计算机系统的安全变得比以往更加脆弱 n恶意代码的一个主要特征是其针对性(针对特定的脆弱点) ,这种针对性充分说明了恶意代码正是利用软件的脆弱性实 现其恶意目的的造成广泛影响的1988年Morris蠕虫事件,就 是利用邮件系统的脆弱性作为其入侵的最初突破点的92 恶意代码实现机理 n早期恶意代码的主要形式是计算机病毒80年 代,Cohen 设计出一种在运行过程中可以复制 自身的破坏性程序,Adleman将它命名为计算 机病毒,它是早期恶意代码的主要内容n随后,Adleman把病毒定义为一个具有相同性 质的程序集合,只要程序具有破坏、传染或模 仿的特点,就可认为是计算机病毒。

这种定义 有将病毒内涵扩大化的倾向,将任何具有破坏 作用的程序都认为是病毒,掩盖了病毒潜伏、 传染等其它重要特征102 恶意代码实现机理n恶意代码的定义 n90 年代末,恶意代码的定义随着计算机网络技术的发展逐渐 丰富,Grimes 将恶意代码定义为,经过存储介质和网络进行 传播,从一台计算机系统到另外一台计算机系统,未经授权 认证破坏计算机系统完整性的程序或代码n它包括计算机病毒(Computer Virus)、蠕虫(Worms)、特洛伊 木马(Trojan Horse)、逻辑炸弹(Logic Bombs)、病菌 (Bacteria)、用户级RootKit、核心级RootKit、脚本恶意代码 (Malicious Scripts)和恶意ActiveX 控件等由此定义,恶意代 码两个显著的特点是:非授权性和破坏性 112 恶意代码实现机理恶意代码类 型定义特点计算机病毒指编制或者在计算机程序中插入的破坏 计算机功能或者毁坏数据,影响计 算机使用,并能自我复制的一组计 算机指令或者程序代码潜伏、传 染和 破坏计算机蠕虫指通过计 算机网络自我复制,消耗系统 资源和网络资 源的程序扫描、攻 击和 扩散 特洛伊木马指一种与远程计算机建立连接,使远程 计算机能够通过网络控制本地计 算机的程序。

欺骗、隐 蔽和 信息窃取 逻辑 炸弹指一段嵌入计算机系统程序的,通过特 殊的数据或时间 作为条件触发,试图 完成一定破坏功能 的程序潜伏和破 坏病菌指不依赖于系统软 件,能够自我复制和 传播,以消耗系统资 源为目的的 程序传染和拒 绝服 务 用户级 RootKit指通过替代或者修改被系统管理员或普 通用户执 行的程序进入系统,从 而实现隐 藏和创建后门的程序隐蔽,潜 伏核心级 RootKit指嵌入操作系统内核进行隐藏和创建后 门的程序隐蔽,潜 伏恶意代码的相关定义122 恶意代码实现机理n恶意代码攻击机制n恶意代码的行为表现各异,破坏程度千差万别,但基本作用机制大体相同, 其整个作用过程分为6个部分:n①侵入系统侵入系统是恶意代码实现其恶意目的的必要条件恶意代码入 侵的途径很多,如:从互联网下载的程序本身就可能含有恶意代码;接收已 经感染恶意代码的电子邮件;从光盘或软盘往系统上安装软件;黑客或者攻 击者故意将恶意代码植入系统等n②维持或提升现有特权恶意代码的传播与破坏必须盗用用户或者进程的合 法权限才能完成n③隐蔽策略为了不让系统发现恶意代码已经侵入系统,恶意代码可能会改 名、删除源文件或者修改系统的安全策略来隐藏自己。

n④潜伏恶意代码侵入系统后,等待一定的条件,并具有足够的权限时,就 发作并进行破坏活动n⑤破坏恶意代码的本质具有破坏性,其目的是造成信息丢失、泄密,破坏 系统完整性等n⑥重复①至⑤对新的目标实施攻击过程恶意代码的攻击模型如图2-1所示132 恶意代码实现机理恶意代码攻击模型143恶意代码实现关键技术n一段好的恶意代码,首先必须具有良好隐蔽性 ,生存性,不能轻松被软件或者用户察觉然 后,必须具有良好的攻击性n包括:n恶意代码生存技术 n恶意代码攻击技术 n恶意代码的隐蔽技术 153 恶意代码实现关键技术--生存技术 n生存技术主要包括4方面:n反跟踪技术n加密技术n模糊变换技术n自动生产技术n反跟踪技术可以减少被发现的可能性, 加密技术是恶意代码自身保护的重要机 制163 恶意代码实现关键技术--生存技术n反跟踪技术n恶意代码采用反跟踪技术可以提高自身的伪 装能力和防破译能力,增加检测与清除恶意 代码的难度n目前常用的反跟踪技术有两类:反动态跟踪 技术和反静态分析技术 173 恶意代码实现关键技术--生存技术n反动态跟踪技术n反动态跟踪技术主要包括4方面内容:n(1)禁止跟踪中断针对调试分析工具运行系统的单步中断和 断点中断服务程序,恶意代码通过修改中断服务程序的入口地址 实现其反跟踪目的。

1565”计算机病毒采用该方法将堆栈指针指 向处于中断向量表中的INT 0至 INT 3区域,阻止调试工具对其代 码进行跟踪n(2)封锁键盘输入和屏幕显示,破坏各种跟踪调试工具运行的 必需环境;n(3)检测跟踪法检测跟踪调试时和正常执行时的运行环境、 中断入口和时间的差异,根据这些差异采取一定的措施,实现其 反跟踪目的例如,通过操作系统的API 函数试图打开调试器的 驱动程序句柄,检测调试器是否激活确定代码是否继续运行n(4)其它反跟踪技术如指令流队列法和逆指令流法等183 恶意代码实现关键技术--生存技术n反静态分析技术n反静态分析技术主要包括两方面内容:n(1)对程序代码分块加密执行为了防止程序代码通过反汇编 进行静态分析,程序代码以分块的密文形式装入内存,在执行时 由解密程序进行译码,某一段代码执行完毕后立即清除,保证任 何时刻分析者不可能从内存中得到完整的执行代码;n(2)伪指令法(Junk Code)伪指令法系指在指令流中插入“废指 令”,使静态反汇编无法得到全部正常的指令,不能有效地进行静 态分析例如,“Apparition”是一种基于编译器变形的Win32 平台 的病毒,编译器每次编译出新的病毒体可执行代码时都要插入大 量的伪指令,既达到了变形的效果,也实现了反跟踪的目的。

此 外,伪指令技术还广泛应用于宏病毒与脚本恶意代码之中193 恶意代码实现关键技术--生存技术n加密技术n加密技术是恶意代码自我保护的一种手段,加密技术 和反跟踪技术的配合使用,使得分析者无法正常调试 和阅读恶意代码,不知道恶意代码的工作原理,也无 法抽取特征串从加密的内容上划分,加密手段分为 信息加密、数据加密和程序代码加密三种n大多数恶意代码对程序体自身加密,另有少数恶意代 码对被感染的文件加密例如,“Cascade”是第一例采 用加密技术的DOS环境下的恶意代码,它有稳定的解 密器,可以解密内存中加密的程序体Mad ”和 “Zombie”是“Cascade”加密技术的延伸,使恶意代码加 密技术走向32位的操作系统平台此外,“中国炸弹 ”(Chinese bomb)和“幽灵病毒”也是这一类恶意代码 203 恶意代码实现关键技术--生存技术n模糊变换技术n利用模糊变换技术,恶意代码每感染一个客体对象时,潜入宿主程序的代码互不相同同一种恶意代码具有多个不 同样本,几乎没有稳定代码,采用基于特征的检测工具一般不能识别它们随着这类恶意代码的增多,不但使得病 毒检测和防御软件的编写变得更加困难,而且还会增加反病毒软件的误报率。

目前,模糊变换技术主要分为5种:n(1)指令替换技术模糊变换引擎(Mutation Engine)对恶意代码的二进制代码进行反汇编,解码每一条指令, 计算。

下载提示
相似文档
正为您匹配相似的精品文档