信息安全课件

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第7章恶意代码分析与防治内容提要◎恶意代码的发展史和恶意代码长期存在的原因◎恶意代码实现机理、定义以及攻击方法◎恶意代码生存技术、隐藏技术,介绍网络蠕虫的定义以及结构◎恶意代码防范方法:基于主机的检测方法和基于网络的检测方法7.1恶意代码概述代码是指计算机程序代码,可以被执行完成特定功能。软件工程师们编写了大量的有用的软件,如操作系统,应用系统和数据库系统等。黑客们在编写扰乱社会和他人的计算机程序,这些代码统称为恶意代码(MaliciousCodes)。恶意代码主要包括计算机病毒(Virus)、蠕虫(Worm)、木马程序(TrojanHorse)、后门程序(Backdoor)、逻辑炸弹(LogicBomb)等等。7.1.1研究恶意代码的必要性在Internet安全事件中,恶意代码造成的经济损失占有最大的比例。与此同时,恶意代码成为信息战、网络战的重要手段。日益严重的恶意代码问题,不仅使企业及用户蒙受了巨大经济损失,而且使国家的安全面临着严重威胁。恶意代码问题,不仅使企业和用户蒙受了巨大的经济损失,而且使国家的安全面临着严重威胁。目前国际上一些发达国家(如美国,德国,日本等国)均已在该领域投入大量资金和人力进行了长期的研究,并取得了一定的技术成果。据报道,1991年的海湾战争,美国在伊拉克从第三方国家购买的打印机里植入了可远程控制的恶意代码,在战争打响前,使伊拉克整个计算机网络管理的雷达预警系统全部瘫痪,这是美国第一次公开在实战中使用恶意代码攻击技术取得的重大军事利益。7.1.1研究恶意代码的必要性恶意代码攻击成为信息战、网络战最重要的入侵手段之一。恶意代码问题无论从政治上、经济上,还是军事上,都成为信息安全面临的首要问题。恶意代码的机理研究成为解决恶意代码问题的必需途径,只有掌握当前恶意代码的实现机理,加强对未来恶意代码趋势的研究,才能在恶意代码问题上取得先决之机。一个典型的例子是在电影《独立日》中,美国空军对外星飞船进行核轰炸没有效果,最后给敌人飞船系统注入恶意代码,使敌人飞船的保护层失效,从而拯救了地球,从中可以看出恶意代码研究的重要性。7.1.2恶意代码的发展史恶意代码经过20多年的发展,破坏性、种类和感染性都得到增强。随着计算机的网络化程度逐步提高,网络传播的恶意代码对人们日常生活影响越来越大。1988年11月泛滥的Morris蠕虫,顷刻之间使得6000多台计算机(占当时Internet上计算机总数的10%多)瘫痪,造成严重的后果,并因此引起世界范围内关注。1998年CIH病毒造成数十万台计算机受到破坏。1999年Happy99、Melissa病毒大爆发,Melissa病毒通过E-mail附件快速传播而使E-mail服务器和网络负载过重,它还将敏感的文档在用户不知情的情况下按地址簿中的地址发出。2000年5月爆发的“爱虫”病毒及其以后出现的50多个变种病毒,是近年来让计算机信息界付出极大代价的病毒,仅一年时间共感染了4000多万台计算机,造成大约87亿美元的经济损失。7.1.2恶意代码的发展史(自学了解)2001年,国信安办与公安部共同主办了我国首次计算机病毒疫情网上调查工作。结果感染过计算机病毒的用户高达73%,其中,感染三次以上的用户又占59%多,网络安全存在大量隐患。2001年8月,“红色代码”蠕虫利用微软Web服务器IIS4.0或5.0中Index服务的安全漏洞,攻破目标机器,并通过自动扫描方式传播蠕虫,在互联网上大规模泛滥。2003年,SLammer蠕虫在10分钟内导致互联网90%脆弱主机受到感染。同年8月,“冲击波”蠕虫爆发,8天内导致全球电脑用户损失高达20亿美元之多。2004年到2006年,振荡波蠕虫、爱情后门、波特后门等恶意代码利用电子邮件和系统漏洞对网络主机进行疯狂传播,给国家和社会造成了巨大的经济损失。恶意代码的发展目前,恶意代码问题成为信息安全需要解决的,迫在眉睫的、刻不容缓的安全问题。图7-1显示了过去20多年主要恶意代码事件。恶意代码从80年代发展至今体现出来的3个主要特征①恶意代码日趋复杂和完善:从非常简单的,感染游戏的AppleII病毒发展到复杂的操作系统内核病毒和今天主动式传播和破坏性极强的蠕虫。恶意代码在快速传播机制和生存性技术研究取得了很大的成功。②恶意代码编制方法及发布速度更快:恶意代码刚出现时发展较慢,但是随着网络飞速发展,Internet成为恶意代码发布并快速蔓延的平台。特别是过去5年,不断涌现的恶意代码,证实了这一点。③从病毒到网络蠕虫:恶意代码的早期,大多数攻击行为是由病毒和受感染的可执行文件引起的。然而,在过去5年,利用系统和网络的脆弱性进行传播和感染开创了恶意代码的新纪元。7.1.3恶意代码长期存在的原因计算机技术飞速发展的同时并未使系统的安全性得到增强。技术进步带来的安全增强能力最多只能弥补由应用环境的复杂性带来的安全威胁的增长程度。不但如此,计算机新技术的出现还很有可能使计算机系统的安全变得比以往更加脆弱。AT&T实验室的S.Bellovin曾经对美国CERT(ComputerEmergencyResponseTeam)提供的安全报告进行过分析,分析结果表明,大约50%的计算机网络安全问题是由软件工程中产生的安全缺陷引起的,其中,很多问题的根源都来自于操作系统的安全脆弱性。互联网的飞速发展为恶意代码的广泛传播提供了有利的环境。互联网具有开放性的特点,缺乏中心控制和全局视图能力,无法保证网络主机都处于统一的保护之中。计算机和网络系统存在设计上的缺陷,这些缺陷会导致安全隐患。7.2恶意代码实现机理早期恶意代码的主要形式是计算机病毒。80年代,FredCohen(弗雷德科恩计算机病毒之父)设计出一种在运行过程中可以复制自身的破坏性程序,LenAdleman(伦艾德勒曼)将它命名为计算机病毒,它是早期恶意代码的主要内容。随后,Adleman把病毒定义为一个具有相同性质的程序集合,只要程序具有破坏、传染或模仿的特点,就可认为是计算机病毒。这种定义有将病毒内涵扩大化的倾向,将任何具有破坏作用的程序都认为是病毒,掩盖了病毒潜伏、传染等其它重要特征。7.2.1恶意代码的定义90年代末,恶意代码的定义随着计算机网络技术的发展逐渐丰富。Grimes(格雷姆)将恶意代码定义为,经过存储介质和网络进行传播,从一台计算机系统到另外一台计算机系统,未经授权认证破坏计算机系统完整性的程序或代码。它包括计算机病毒(ComputerVirus)、蠕虫(Worms)、特洛伊木马(TrojanHorse)、逻辑炸弹(LogicBombs)、病菌(Bacteria)、用户级RootKit、核心级RootKit、脚本恶意代码(MaliciousScripts)和恶意ActiveX控件等。由此定义,恶意代码两个显著的特点是:非授权性和破坏性。恶意代码的相关定义恶意代码类型定义特点计算机病毒指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码。潜伏、传染和破坏计算机蠕虫指通过计算机网络自我复制,消耗系统资源和网络资源的程序扫描、攻击和扩散特洛伊木马指一种与远程计算机建立连接,使远程计算机能够通过网络控制本地计算机的程序。欺骗、隐蔽和信息窃取逻辑炸弹指一段嵌入计算机系统程序的,通过特殊的数据或时间作为条件触发,试图完成一定破坏功能的程序。潜伏和破坏病菌指不依赖于系统软件,能够自我复制和传播,以消耗系统资源为目的的程序。传染和拒绝服务用户级RootKit指通过替代或者修改被系统管理员或普通用户执行的程序进入系统,从而实现隐藏和创建后门的程序。隐蔽,潜伏核心级RootKit指嵌入操作系统内核进行隐藏和创建后门的程序隐蔽,潜伏MalwareMalware这个单词来自于Malicious和Software两个单词的合成,是恶意软件的专业术语,专指那些泛滥于网络中的恶意代码。ComputerViruses计算机病毒ComputerWorms计算机蠕虫TrojanHorses特洛伊木马LogicBombs逻辑炸弹Spyware间谍软件Adware广告软件Spam垃圾邮件Popups弹出间谍软件(Spyware)间谍软件是一种能够在用户不知情的情况下,在其电脑上安装后门、收集用户信息的软件。用户的隐私数据和重要信息会被“后门程序”捕获,并被发送给黑客、商业公司等。这些“后门程序”甚至能使用户的电脑被远程操纵,组成庞大的“僵尸网络”,这是目前网络安全的重要隐患之一。广告软件(Adware)广告软件是指未经用户允许,下载并安装或与其他软件捆绑通过弹出式广告或以其他形式进行商业广告宣传的程序。安装广告软件之后,往往造成系统运行缓慢或系统异常。此类软件往往会强制安装并无法卸载;在后台收集用户信息牟利,危及用户隐私;频繁弹出广告,消耗系统资源,使其运行变慢等。垃圾邮件(Spam)一般来说,凡是未经用户许可就强行发送到用户的邮箱中的任何电子邮件。垃圾邮件可以分为良性和恶性的。良性垃圾邮件是各种宣传广告等对收件人影响不大的信息邮件。恶性垃圾邮件是指具有破坏性的电子邮件。垃圾邮件占用大量的网络带宽,造成邮件服务器拥塞;侵犯收件人的隐私权,欺诈收件人;严重影响ISP服务形象;还常常被黑客利用,对PC造成严重破坏。弹出窗体(Popups)弹出窗体通常存在于广告或其他商业服务,它出人意料地弹出到你的屏幕上。跟垃圾邮件一样烦人,且有些具有破坏性。7.2.2恶意代码攻击机制恶意代码的行为表现各异,破坏程度千差万别,但基本作用机制大体相同,其整个作用过程分为6个部分:①侵入系统。侵入系统是恶意代码实现其恶意目的的必要条件。恶意代码入侵的途径很多,如:从互联网下载的程序本身就可能含有恶意代码;接收已经感染恶意代码的电子邮件;从光盘或软盘往系统上安装软件;黑客或者攻击者故意将恶意代码植入系统等。②维持或提升现有特权。恶意代码的传播与破坏必须盗用用户或者进程的合法权限才能完成。③隐蔽策略。为了不让系统发现恶意代码已经侵入系统,恶意代码可能会改名、删除源文件或者修改系统的安全策略来隐藏自己。④潜伏。恶意代码侵入系统后,等待一定的条件,并具有足够的权限时,就发作并进行破坏活动。⑤破坏。恶意代码的本质具有破坏性,其目的是造成信息丢失、泄密,破坏系统完整性等。⑥重复①至⑤对新的目标实施攻击过程。恶意代码的攻击模型7.3恶意代码实现关键技术一段好的恶意代码,首先必须具有良好隐蔽性,生存性,不能轻松被软件或者用户察觉。然后,必须具有良好的攻击性。7.3.1恶意代码生存技术生存技术主要包括4方面:反跟踪技术加密技术模糊变换技术自动生产技术。反跟踪技术可以减少被发现的可能性,加密技术是恶意代码自身保护的重要机制。1.反跟踪技术恶意代码采用反跟踪技术可以提高自身的伪装能力和破译能力,增加检测与清除的难度。目前常用的反跟踪技术有两类:反动态跟踪技术和反静态跟踪技术反动态跟踪技术(1)禁止跟踪中断。针对调试分析工具运行系统的单步中断和断点中断服务程序,恶意代码通过修改中断服务程序的入口地址实现其反跟踪目的。“1575”计算机病毒采用该方法将堆栈指针指向处于中断向量表中的INT0至INT3区域,阻止调试工具对其代码进行跟踪。(2)封锁键盘输入和屏幕显示,破坏各种跟踪调试工具运行的必需环境;(3)检测跟踪法。检测跟踪调试时和正常执行时的运行环境、中断入口和时间的差异,根据这些差异采取一定的措施,实现其反跟踪目的。例如,通过操作系统的API函数试图打开调试器的驱动程序句柄,检测调试器是否激活确定代码是否继续运行。(4)其它反跟踪技术。如指令流队列法和逆指令流法等。反静态分析技术(1)对程序代码分块加密执行。为了防止程序代码通过反汇编进行静态分析,程序代码以分块的密文形式装入内存,在执行时由解密程序进行译码,某一段代码执行完毕后立即清除,保证任何时

1 / 69
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功