恶意代码分析与防治(计算机网络安全教程PPT课件

上传人:W**** 文档编号:156948847 上传时间:2020-12-20 格式:PPT 页数:57 大小:281KB
返回 下载 相关 举报
恶意代码分析与防治(计算机网络安全教程PPT课件_第1页
第1页 / 共57页
恶意代码分析与防治(计算机网络安全教程PPT课件_第2页
第2页 / 共57页
恶意代码分析与防治(计算机网络安全教程PPT课件_第3页
第3页 / 共57页
恶意代码分析与防治(计算机网络安全教程PPT课件_第4页
第4页 / 共57页
恶意代码分析与防治(计算机网络安全教程PPT课件_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《恶意代码分析与防治(计算机网络安全教程PPT课件》由会员分享,可在线阅读,更多相关《恶意代码分析与防治(计算机网络安全教程PPT课件(57页珍藏版)》请在金锄头文库上搜索。

1、1,第7章 恶意代码分析与防治,6,2,内容提要, 恶意代码的发展史和恶意代码长期存在的原因 恶意代码实现机理、定义以及攻击方法 恶意代码生存技术、隐藏技术,介绍网络蠕虫的定义以及结构 恶意代码防范方法:基于主机的检测方法和基于网络的检测方法,3,7.1 恶意代码概述,代码是指计算机程序代码,可以被执行完成特定功能。任何食物事物都有正反两面,人类发明的所有工具既可造福也可作孽,这完全取决于使用工具的人。计算机程序也不例外,软件工程师们编写了大量的有用的软件(操作系统,应用系统和数据库系统等)的同时,黑客们在编写编写扰乱社会和他人的计算机程序,这些代码统称为恶意代码(Malicious Code

2、s)。,4,7.1.1 研究恶意代码的必要性,在Internet安全事件中,恶意代码造成的经济损失占有最大的比例。恶意代码主要包括计算机病毒(Virus)、蠕虫(Worm)、木马程序(Trojan Horse)、后门程序(Backdoor)、逻辑炸弹(Logic Bomb)等等。与此同时,恶意代码成为信息战、网络战的重要手段。日益严重的恶意代码问题,不仅使企业及用户蒙受了巨大经济损失,而且使国家的安全面临着严重威胁。 恶意代码问题,不仅使企业和用户蒙受了巨大的经济损失,而且使国家的安全面临着严重威胁。目前国际上一些发达国家(如美国,德国,日本等国)均已在该领域投入大量资金和人力进行了长期的研究

3、,并取得了一定的技术成果。据报道,1991年的海湾战争,美国在伊拉克从第三方国家购买的打印机里植入了可远程控制的恶意代码,在战争打响前,使伊拉克整个计算机网络管理的雷达预警系统全部瘫痪,这是美国第一次公开在实战中使用恶意代码攻击技术取得的重大军事利益。,5,7.1.1 研究恶意代码的必要性,恶意代码攻击成为信息战、网络战最重要的入侵手段之一。恶意代码问题无论从政治上、经济上,还是军事上,都成为信息安全面临的首要问题。恶意代码的机理研究成为解决恶意代码问题的必需途径,只有掌握当前恶意代码的实现机理,加强对未来恶意代码趋势的研究,才能在恶意代码问题上取得先决之机。一个典型的例子是在电影独立日中,美

4、国空军对外星飞船进行核轰炸没有效果,最后给敌人飞船系统注入恶意代码,使敌人飞船的保护层失效,从而拯救了地球,从中可以看出恶意代码研究的重要性。,6,7.1.2 恶意代码的发展史,恶意代码经过20多年的发展,破坏性、种类和感染性都得到增强。随着计算机的网络化程度逐步提高,网络传播的恶意代码对人们日常生活影响越来越大。 1988 年11 月泛滥的Morris蠕虫,顷刻之间使得6000 多台计算机(占当时Internet 上计算机总数的10%多)瘫痪,造成严重的后果,并因此引起世界范围内关注。 1998 年CIH病毒造成数十万台计算机受到破坏。1999 年Happy 99、Melissa 病毒大爆发

5、,Melissa 病毒通过E-mail 附件快速传播而使E-mail 服务器和网络负载过重,它还将敏感的文档在用户不知情的情况下按地址簿中的地址发出。 2000 年5 月爆发的“爱虫”病毒及其以后出现的50 多个变种病毒,是近年来让计算机信息界付出极大代价的病毒,仅一年时间共感染了4000 多万台计算机,造成大约87 亿美元的经济损失。,7,7.1.2 恶意代码的发展史,2001 年,国信安办与公安部共同主办了我国首次计算机病毒疫情网上调查工作。结果感染过计算机病毒的用户高达73,其中,感染三次以上的用户又占59多,网络安全存在大量隐患。 2001 年8月,“红色代码”蠕虫利用微软Web 服务

6、器IIS 4.0 或5.0 中Index服务的安全漏洞,攻破目标机器,并通过自动扫描方式传播蠕虫,在互联网上大规模泛滥。 2003 年,SLammer 蠕虫在10 分钟内导致互联网90脆弱主机受到感染。同年8月,“冲击波”蠕虫爆发,8天内导致全球电脑用户损失高达20亿美元之多。 2004年到2006年,振荡波蠕虫、爱情后门、波特后门等恶意代码利用电子邮件和系统漏洞对网络主机进行疯狂传播,给国家和社会造成了巨大的经济损失。,8,恶意代码的发展,目前,恶意代码问题成为信息安全需要解决的,迫在眉睫的、刻不容缓的安全问题。图7-1显示了过去20 多年主要恶意代码事件。,9,恶意代码从80 年代发展至今

7、体现出来的3个主要特征,恶意代码日趋复杂和完善:从非常简单的,感染游戏的Apple II 病毒发展到复杂的操作系统内核病毒和今天主动式传播和破坏性极强的蠕虫。恶意代码在快速传播机制和生存性技术研究取得了很大的成功。 恶意代码编制方法及发布速度更快:恶意代码刚出现时发展较慢,但是随着网络飞速发展,Internet 成为恶意代码发布并快速蔓延的平台。特别是过去5 年,不断涌现的恶意代码,证实了这一点。 从病毒到电子邮件蠕虫,再到利用系统漏洞主动攻击的恶意代码:恶意代码的早期,大多数攻击行为是由病毒和受感染的可执行文件引起的。然而,在过去5 年,利用系统和网络的脆弱性进行传播和感染开创了恶意代码的新

8、纪元。,10,7.1.3 恶意代码长期存在的原因,计算机技术飞速发展的同时并未使系统的安全性得到增强。技术进步带来的安全增强能力最多只能弥补由应用环境的复杂性带来的安全威胁的增长程度。不但如此,计算机新技术的出现还很有可能使计算机系统的安全变得比以往更加脆弱。 AT&T 实验室的S. Bellovin曾经对美国CERT(Computer Emergency Response Team)提供的安全报告进行过分析,分析结果表明,大约50%的计算机网络安全问题是由软件工程中产生的安全缺陷引起的,其中,很多问题的根源都来自于操作系统的安全脆弱性。互联网的飞速发展为恶意代码的广泛传播提供了有利的环境。互

9、联网具有开放性的特点,缺乏中心控制和全局视图能力,无法保证网络主机都处于统一的保护之中。计算机和网络系统存在设计上的缺陷,这些缺陷会导致安全隐患。,11,7.2 码恶意代码实现机理,早期恶意代码的主要形式是计算机病毒。80年代,Cohen 设计出一种在运行过程中可以复制自身的破坏性程序,Adleman将它命名为计算机病毒,它是早期恶意代码的主要内容。随后,Adleman把病毒定义为一个具有相同性质的程序集合,只要程序具有破坏、传染或模仿的特点,就可认为是计算机病毒。这种定义有将病毒内涵扩大化的倾向,将任何具有破坏作用的程序都认为是病毒,掩盖了病毒潜伏、传染等其它重要特征。,12,7.2.1 恶

10、意代码的定义,90 年代末,恶意代码的定义随着计算机网络技术的发展逐渐丰富,Grimes 将恶意代码定义为,经过存储介质和网络进行传播,从一台计算机系统到另外一台计算机系统,未经授权认证破坏计算机系统完整性的程序或代码。它包括计算机病毒(Computer Virus)、蠕虫(Worms)、特洛伊木马(Trojan Horse)、逻辑炸弹(Logic Bombs)、病菌(Bacteria)、用户级RootKit、核心级RootKit、脚本恶意代码(Malicious Scripts)和恶意ActiveX 控件等。由此定义,恶意代码两个显著的特点是:非授权性和破坏性。,13,恶意代码的相关定义,1

11、4,7.2.2 恶意代码攻击机制,恶意代码的行为表现各异,破坏程度千差万别,但基本作用机制大体相同,其整个作用过程分为6个部分: 侵入系统。侵入系统是恶意代码实现其恶意目的的必要条件。恶意代码入侵的途径很多,如:从互联网下载的程序本身就可能含有恶意代码;接收已经感染恶意代码的电子邮件;从光盘或软盘往系统上安装软件;黑客或者攻击者故意将恶意代码植入系统等。 维持或提升现有特权。恶意代码的传播与破坏必须盗用用户或者进程的合法权限才能完成。 隐蔽策略。为了不让系统发现恶意代码已经侵入系统,恶意代码可能会改名、删除源文件或者修改系统的安全策略来隐藏自己。 潜伏。恶意代码侵入系统后,等待一定的条件,并具

12、有足够的权限时,就发作并进行破坏活动。 破坏。恶意代码的本质具有破坏性,其目的是造成信息丢失、泄密,破坏系统完整性等。 重复至对新的目标实施攻击过程。,15,恶意代码的攻击模型,16,7.3 恶意代码实现关键技术,一段好的恶意代码,首先必须具有良好隐蔽性,生存性,不能轻松被软件或者用户察觉。然后,必须具有良好的攻击性。,17,7.3.1 恶意代码生存技术,生存技术主要包括4方面: 反跟踪技术 加密技术 模糊变换技术 自动生产技术。 反跟踪技术可以减少被发现的可能性,加密技术是恶意代码自身保护的重要机制。,18,1. 反跟踪技术,(1)禁止跟踪中断。针对调试分析工具运行系统的单步中断和断点中断服

13、务程序,恶意代码通过修改中断服务程序的入口地址实现其反跟踪目的。“1575”计算机病毒采用该方法将堆栈指针指向处于中断向量表中的INT 0至 INT 3区域,阻止调试工具对其代码进行跟踪。 (2)封锁键盘输入和屏幕显示,破坏各种跟踪调试工具运行的必需环境; (3)检测跟踪法。检测跟踪调试时和正常执行时的运行环境、中断入口和时间的差异,根据这些差异采取一定的措施,实现其反跟踪目的。例如,通过操作系统的API 函数试图打开调试器的驱动程序句柄,检测调试器是否激活确定代码是否继续运行。 (4)其它反跟踪技术。如指令流队列法和逆指令流法等。,19,反静态分析技术主要包括两方面内容,(1)对程序代码分块

14、加密执行。为了防止程序代码通过反汇编进行静态分析,程序代码以分块的密文形式装入内存,在执行时由解密程序进行译码,某一段代码执行完毕后立即清除,保证任何时刻分析者不可能从内存中得到完整的执行代码; (2)伪指令法(Junk Code)。伪指令法系指在指令流中插入“废指令”,使静态反汇编无法得到全部正常的指令,不能有效地进行静态分析。例如,“Apparition”是一种基于编译器变形的Win32 平台的病毒,编译器每次编译出新的病毒体可执行代码时都要插入大量的伪指令,既达到了变形的效果,也实现了反跟踪的目的。此外,伪指令技术还广泛应用于宏病毒与脚本恶意代码之中。,20,2. 加密技术,加密技术是恶

15、意代码自我保护的一种手段,加密技术和反跟踪技术的配合使用,使得分析者无法正常调试和阅读恶意代码,不知道恶意代码的工作原理,也无法抽取特征串。从加密的内容上划分,加密手段分为信息加密、数据加密和程序代码加密三种。 大多数恶意代码对程序体自身加密,另有少数恶意代码对被感染的文件加密。例如,“Cascade”是第一例采用加密技术的DOS环境下的恶意代码,它有稳定的解密器,可以解密内存中加密的程序体。“Mad ”和“Zombie”是“Cascade”加密技术的延伸,使恶意代码加密技术走向32位的操作系统平台。此外,“中国炸弹”(Chinese bomb)和“幽灵病毒”也是这一类恶意代码。,21,3.

16、模糊变换技术,(1)指令替换技术。 (2)指令压缩技术。 (3)指令扩展技术。 (4)伪指令技术。 (5)重编译技术。,22,4. 自动生产技术,恶意代码自动生产技术是针对人工分析技术的。“计算机病毒生成器”,使对计算机病毒一无所知的用户,也能组合出算法不同、功能各异的计算机病毒。“多态性发生器”可将普通病毒编译成复杂多变的多态性病毒。 多态变换引擎可以使程序代码本身发生变化,并保持原有功能。保加利亚的“Dark Avenger”是较为著名的一个例子,这个变换引擎每产生一个恶意代码,其程序体都会发生变化,反恶意代码软件如果采用基于特征的扫描技术,根本无法检测和清除这种恶意代码。,23,7.3.2 恶意代码攻击技术,常见的攻击技术包括:进程注入技术、三线程技术、端口复用技术、超级管理技术、端口反向连接技术和缓冲区溢出攻击技术。,24,1. 进程注入技术,当前操作系统中都有系统服务和网络服务,它们都在系统启动时自动加载。进程注入技术就是将这些与服务相关的可执行代码作为载体,恶意代码程序将自身嵌入到这些可执行代码之中,实现自身隐藏和启动的目的。 这种形式的恶意代码只须安装一次,以后就会被

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号