资源预览内容
第1页 / 共181页
第2页 / 共181页
第3页 / 共181页
第4页 / 共181页
第5页 / 共181页
第6页 / 共181页
第7页 / 共181页
第8页 / 共181页
第9页 / 共181页
第10页 / 共181页
亲,该文档总共181页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1,第4章 恶意程序及其防范,4.1 计算机病毒的概念 4.2 计算机病毒原理 4.3 计算机病毒编制的关键技术 4.4 蠕虫 4.5 木马 4.6 病毒对抗技术,2,计算机病毒是恶意程序的一种。所谓恶意程序,是指一类特殊的程序,它们通常在用户不知晓也未授权的情况下潜入到计算机系统中来。恶意程序可以分为许多类型。图1.1为按照有无自我复制功能和需要不需要宿主对恶意程序的分类情形。,3,陷门(Trap Doors)是进入程序的一些秘密入口。陷门中有些是程序员为了进行调试和测试而预留的一些特权,有些则是系统漏洞。黑客也挖空心思地设计陷门,以便以特殊的、不经授权的方式进入系统。陷门通常寄生于某些程序(有宿主),但无自我复制功能。逻辑炸弹是嵌入某些合法程序的一段代码,没有自我复制功能,在某些条件下会执行一个有害程序,造成一些破坏。特洛伊木马是计算机网络中一种包含有害代码的有用或表面上有用的程序或过程,激活时产生有害行为。它们不具备自我复制功能。,4,细菌是以自我繁殖为主要目的的程序。蠕虫是一种通过网络自我复制的恶意程序。通常人们也把它称为病毒的一种。因为,蠕虫一旦被激活,可以表现得像细菌和病毒,可以向系统注入特洛伊木马,或进行任何次数的破坏或毁灭行动。典型的蠕虫只会在内存维持一个活动副本。此外,蠕虫是一个独立程序,自身不改变任何其他程序,但可以携带具有改变其他程序的病毒。其中,计算机病毒是所有计算机用户在计算机安全问题上,经常碰到的问题。在1999年Security Poral的报告中,排在计算机安全问题第一位的是计算机病毒事件,其次是与计算机病毒关系极为密切的黑客问题。所以本章以病毒为主,介绍恶意程序的特点及其防治。,5,4.1 计算机病毒的概念,返回,6,1.1.1 计算机病毒的定义人类发明了工具,改变了世界,也改变了人类自己。自20世纪40年代起,计算技术与电子技术的结合,使推动人类进步的工具从体力升华到了智力。计算机的出现,将人类带进了信息时代,使人类生产力进入了一个特别的发展时期。 计算机的灵魂是程序。正是建立在微电子载体上的程序,才将计算机的延伸到了人类社会的各个领域。“成也萧何,败也萧何”。人的智慧可以创造人类文明,也可以破坏人类已经创造的文明。随着计算机系统设计技术向社会各个领域急剧扩展,人们开发出了将人类带入信息时代的计算机程序的同时,也开发出了给计算机系统带来副作用的计算机病毒程序。,7,在生物学界,病毒(virus)是一类没有细胞结构但有遗传、复制等生命特征,主要由核酸和蛋白质组成的有机体。在中华人民共和国计算机信息系统安全保护条例中,计算机病毒(Computer Virus)被明确定义为:“计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者破坏数据、影响计算机使用,并且能够自我复制的一组计算机指令或者程序代码”。,8,1.1.2 计算机病毒的特征计算机病毒有一些与生物界中的病毒极为相似的特征,这也就是所以称其为病毒的缘由。这些特征有如下一些。 1. 传染性和衍生性病毒也是一种程序,它与其他程序的显著不同之处,就是它的传染性。与生物界中的病毒可以从一个生物体传播到另一个生物体一样,计算机病毒可以借助各种渠道从已经感染的计算机系统扩散到其他计算机系统。早在1949年,计算机的先驱者Von Neumann 就在他的论文复杂自动机组织论中,提出了计算机程序在内存中自我复制的设想,勾画了病毒程序的蓝图。1977年夏天,美国作家托马斯捷瑞安在其幻想小说P-1的青春一书中构思了一种能够自我复制的计算机程序,第一次使用了“计算机病毒”的术语。所以自我复制应当是计算机病毒的主要特征。,9,20世纪60年代初,美国贝尔实验室里,三个年轻的程序员编写了一个名为“磁芯大战”的游戏,游戏中通过复制自身来摆脱对方的控制,这就是计算机“病毒”的雏形。1983年美国计算机专家弗雷德科恩博士研制出一种在运行过程中可以自我复制的具有破坏性的程序,并在同年11月召开的国际计算机安全学术研讨会,首次将病毒程序在VAX/750计算机上进行了实验。世界上第一个计算机病毒就这样出生在实验室中。,10,20世纪80年代初,计算机病毒(如“巴基斯坦智囊”病毒)主要感染软盘的引导区。20世纪80年代末,出现了感染硬盘的病毒(如“大麻”病毒)。20世纪90年代初,出现了感染文件的病毒(如“Jerusalem,黑色13号星期五”病毒)。接着出现了引导区和文件型“双料”病毒,既感染磁盘引导区又感染可执行文件。20世纪90年代中期,称为“病毒生产机”的软件开始出现,使病毒的传播不再是简单的自我复制,而是可以自动、轻易地自动生产出大量的“同族”新病毒。这些病毒代码长度各不相同,自我加密、解密的密钥也不相同,原文件头重要参数的保存地址不同,病毒的发作条件和现象不同。,11,1995年大量具有相同“遗传基因”的“同族”病毒的涌现,标志着“病毒生产机”软件已出现。目前国际上已有上百种“病毒生产机”软件。这种“病毒生产机”软件不用绞尽脑汁地去编程序,便可以轻易地自动生产出大量的“同族”新病毒。这些病毒代码长度各不相同,自我加密、解密的密钥也不相同,原文件头重要参数的保存地址不同,病毒的发作条件和现象不同,但主体构造和原理基本相同。这就是病毒的衍生性。与此同时,Internet的发展,也为病毒的快速传播提供了方便途径。,12,2. 潜伏性和隐蔽性计算机病毒通常是由技术高超者编写的比较完美的、精巧严谨、短小精悍的程序。它们常常按照严格的秩序组织,与所在的系统网络环境相适应、相配合。病毒程序一旦取得系统控制权,可以在极短的时间内传染大量程序。但是,被感染的程序并不是立即表现出异常,而是潜伏下来,等待时机。除了不发作外,计算机病毒的潜伏还依赖于其隐蔽性。为了隐蔽,病毒通常非常短小(一般只有几百或1K字节,此外还寄生于正常的程序或磁盘较隐蔽的地方,也有个别以隐含文件形式存在,使人不经过代码分析很难被发觉。,13,20世纪90年代初,计算机病毒开始具有对抗机制。例如Yankee Doole病毒,当它发现有人用Debug工具跟踪它,就会自动从文件中逃走。此外还相继出现了一些能对自身进行简单加密的病毒,如1366(DaLian)、1824(N64)、1741(Dong)、1100等。加密的目的主要是防止跟踪或掩盖有关特征等。例如在内存有1741病毒时,用DIR列目录表,病毒会掩盖被感染文件所增加的字节数,使人看起来字节数很正常。,14,3. 寄生性 (1)病毒的寄生场所 寄生是病毒的重要特征。计算机病毒一般寄生在以下地方: (a)寄生在可执行程序中。一旦程序执行,病毒就被激活,病毒程序首先被执行并常驻内存,然后置触发条件。感染的文件被执行后,病毒就会趁机感染下一个文件。文件型病毒可以分为源码型病毒、嵌入型病毒和外壳型病毒。源码型病毒是用高级语言编写的,不进行编译、链接,就无法传染扩散。嵌入型病毒是嵌入在程序的中间,只能针对某些具体程序。外壳型病毒寄生在宿主程序的前面或后面,并修改程序的第1条指令,使病毒先于宿主程序执行,以便一执行宿主程序就传染一次。,15,(b)寄生在硬盘的主引导扇区中。这类病毒也称引导型病毒。任何操作系统都有自举过程,自举依靠引导模块进行,而操作系统的引导模块总是放在某个固定位置,这样系统每次启动就会在这个固定的地方来将引导模块读入内存,紧接着就执行它,来把操作系统读入内存,实现控制权的转接。引导型病毒程序就是利用这一点,它自身占据了引导扇区而将原来的引导扇区的内容和病毒的其他部分放到磁盘的其他空间,并将这些扇区标志为坏簇,不可写其他信息。这样,系统的一次初始化,就激活一次病毒,它首先将自身拷贝到内存,等待触发条件到来。,16,引导型病毒按其寄生对象,可以分为MBR(主引导区)病毒和BR(引导区)病毒。MBR病毒也称分区病毒,这类病毒寄生在硬盘分区主引导程序所占据的硬盘0头0柱面第1扇区,典型的有Stoned(大麻)病毒、2708病毒等。BR病毒则寄生在硬盘逻辑0扇区或软盘0扇区(即0面0道的第1扇区),典型的有Brain病毒、小球病毒等。,17,(2)计算机病毒的寄生方式(a)替代法:病毒程序用自己的全部或部分代码,替代磁盘引导扇区或文件中的全部或部分内容。(b)链接法:病毒程序将自身代码作为正常程序的一部分与原有正常程序链接在一起。链接的位置可能在正常程序的首部、尾部或中间。,18,4. 触发性潜伏下来的计算机病毒一般要在一定的条件下才被激活,发起攻击。病毒具有判断这个条件的功能。,19,5. 非授权执行性用户在调用一个程序时,常常就把系统的控制权交给这个程序并给它分配相应的系统资源,使程序的执行对用户是透明的。计算机病毒具有正常程序所具有的一切特性,它隐蔽在合法程序和数据中;当用户运行正常程序时,病毒伺机取得系统的控制权,先于正常程序执行,并对用户呈透明状态。,20,6. 破坏性计算机病毒的设计者进行病毒程序设计的目的就是为了攻击破坏。下面对病毒的破坏性进行分类介绍。 (1)病毒破坏的能力 按照病毒的破坏能力,可将病毒划分为以下几种: 无害型:除了传染时减少磁盘的可用空间外,对系统没有其它影响。 无危险型:这类病毒仅仅是减少内存、显示图像、发出声音及同类音响。 危险型:这类病毒在计算机系统操作中造成严重的错误。 非常危险型:这类病毒删除程序、破坏数据、清除系统内存区和操作系统中重要的信息。,21,(2)病毒的入侵方式 (a)源代码嵌入攻击型这类病毒主要入侵高级语言的源程序。病毒在源程序编译之前就插入进来,最后随源程序一起被编译成带毒可执行文件。这类带毒文件是极少数,因为这些病毒开发者不可能轻易得到那些软件开发公司编译前的源程序,并且入侵的方式难度较大,需要非常专业的编程水平。 (b)代码取代攻击型这类病毒主要是用它自身的代码取代某个入侵程序或该程序的部分模块。这类病毒也少见,它主要是攻击特定的程序,针对性较强,但是不易被发现,清除起来也较困难。,22,(c)系统修改型这类病毒主要是用自身代码覆盖或修改系统中的某些文件来达到调用或替代操作系统中的部分功能,由于是直接感染系统,危害较大,也是最为多见的一种病毒类型,多为文件型病毒。 (d)外壳附加型这类病毒通常附加在正常程序的头部或尾部,相当于给程序添加了一个外壳,在被感染的程序执行时,病毒代码先被执行,然后才将正常程序调入内存。目前大多数文件型的病毒属于这一类。,23,(3)病毒破坏性的表现 (a)占用CPU资源,额外占用或消耗内存空间,或禁止分配内存、蚕食内存,导致一些大型程序执行受阻,使系统性能下降。 (b)干扰系统运行,例如不执行命令、干扰内部命令的执行、虚发报警信息、打不开文件、内部栈溢出、占用特殊数据区、时钟倒转、重启动、死机、文件无法存盘、文件存盘时丢失字节、内存减小、格式化硬盘等。 (c)攻击CMOS。CMOS是保存系统参数(如系统时钟、磁盘类型、内存容量等)的重要场所。有的病毒(如CIH病毒)可以通过改写CMOS参数,破坏系统硬件的运行。 (d)攻击系统数据区。硬盘的主引导扇区、boot(引导)扇区、FAT(文件分配)表、文件目录等,是系统重要的数据,这些数据一旦受损,将造成相关文件的破坏。,24,(e)干扰外部设备运行,如 干扰键盘操作。如EDV病毒能封锁键盘,使按任何键都没有反应;还有病毒产生换字、抹掉缓存区字符、输入紊乱等。 干扰屏幕显示。如小球病毒产生跳动的小白点;瀑布病毒使显示的字符像雨点一样一个个落到屏幕底部等。 干扰声响。如感染Attention病毒后,每按一键,喇叭就响一声;Yankee Doodle病毒在每天下午5时整会播出歌曲“Yankee Doodle”;救护车病毒(Ambulance Car)会在屏幕上出现一辆鸣着警笛来回跑的救护车。 干扰打印机。如Azsua病毒可以封锁打印机接口LPT1,当使用打印机时,会发出缺纸的假报警;1024SBC病毒会使打印机出现断断续续的打印失常;Typo-COM病毒会更换字符。,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号