收藏 分销(赏)

多态蠕虫产生器的设计和实现.doc

上传人:天**** 文档编号:2953295 上传时间:2024-06-12 格式:DOC 页数:49 大小:378.04KB
下载 相关 举报
多态蠕虫产生器的设计和实现.doc_第1页
第1页 / 共49页
多态蠕虫产生器的设计和实现.doc_第2页
第2页 / 共49页
多态蠕虫产生器的设计和实现.doc_第3页
第3页 / 共49页
多态蠕虫产生器的设计和实现.doc_第4页
第4页 / 共49页
多态蠕虫产生器的设计和实现.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

1、毕业论文(设计)题 目多态蠕虫产生器设计与实现学生姓名指引教师学 院专业班级完毕时间摘要网络蠕虫是一种可以独立运营且可以进行自我复制传播程序,它危害性非常大,每次爆发都给社会带来了极大经济损失。当前网络蠕虫发展呈现出速度更快、目性更强和技术更先进特点。同步计算机专家也在不断研究抵抗蠕虫袭击办法,然而多态蠕虫浮现对抵抗研究提出了新规定,如何理解多态蠕虫发作原理和抵抗办法,就是蠕虫研究核心。本文一方面对网络蠕虫进行研究,并分析得出了蠕虫实体构造、蠕虫统一功能构造模型、蠕虫工作流程、特性码检测技术以及多态变形技术。本文在此基本上,采用C-Free和C#相结合,设计了一种多态蠕虫发生器,重要包括了免杀

2、代码植入模块、花指令替代模块、加密模块、解密模块和杀毒软件检测模块,别的辅助模块有扫描检测模块、代码查看模块和输出模块等。本文通过多态蠕虫发生器这几种模块,实现了对蠕虫源代码扫描检测、多态变形以及模仿防病毒软件查杀,同步可以较好地演示蠕虫在多态变形先后变化,以及躲避防病毒软件查杀效率,并且操作界面和谐,容易理解和上手操作,多态变形先后变化透明可见。核心词蠕虫,病毒,多态,溢出袭击,产生器ABSTRACTInternet worms are programs which run independently and can copy themselves to other hosts automa

3、tically. Its huge destructive ability brings society great economic loss every time it breaks out. Especially future worms will have higher propagation speed,more definite purpose and more advanced techniques.While computer experts continually research against worms attacks,however polymorphic worms

4、 occur against of new requirements,how to understand the polymorphic worms attack and defeat the principle is the key to the study of the worm. search.In the thesis,we conduct a study on Internet worm first.We introduced the entity construction,uniform function model,the working process of Internet

5、worms,behavior characteristics and polymorphic techniques. On this basis,this paper designed a polymorphic worm generator with C-Free and C#,mainly contains free killing code module,taking junk instruction replace module,encryption module,decryption module,and anti-virus software detection model.The

6、 remaining auxiliary modules have scaning modules,viewing code module and output modules,etc. In this paper,the module of these polymorphic worm generator module to realize the source code of the worm scan,polymorphic deformation and analog anti-virus software killing,and worms can be a good demonst

7、ration of polymorphic changes before and after deformation,and to avoid anti-virus software pieces of killing efficiency.The generator has friendly interface and it is easy for us to understand and get started operations,and also it is transparent to understand the changes before and after deformati

8、on.KEY WORDSworm,virus,polymorphic,overflow attack,generator目录摘要IABSTRACTII第一章绪论11.1 蠕虫研究背景11.1.1 蠕虫与病毒定义11.1.2 蠕虫基本特性31.1.3 蠕虫功能构造51.1.4 蠕虫传播方略61.2 蠕虫与病毒领域研究现状71.3 课题研究意义和目81.4 本文章节安排9第二章蠕虫与多态蠕虫概述及实例分析102.1 蠕虫实体构造和功能构造102.1.1 蠕虫实体构造102.1.2 基本功能模块112.1.3 扩展功能模块112.1.4 蠕虫工作流程122.1.5特性码检测技术122.2 多态变形技

9、术概念132.2.1 什么是多态变形技术132.2.2 常用多态变形技术142.2.3 多态变形病毒实例分析Win98.BlackBat152.3 本章小结19第三章多态蠕虫产生器设计203.1 针对缓冲区溢出蠕虫多态变形设计203.1.1 缓冲区溢出袭击基本原理203.1.2 蠕虫王病毒分析223.2 多态蠕虫产生器模型构造223.2.1 多态蠕虫产生器模型构造图223.2.2 多态蠕虫产生器各模块设计233.3 本章小结29第四章多态蠕虫产生器实现304.1 功能实现304.1.1 功能简介304.1.2 多态蠕虫发生器详细简介304.2 多态蠕虫产生器功能测试324.2.1 测试过程分析

10、324.2.2 测试成果分析354.3 本章小结36第五章结束语37致谢38参照文献39第一章绪论1.1 蠕虫研究背景初期恶意代码重要形式是计算机病毒。1988年“Morris”蠕虫爆发后,Spafford为了区别蠕虫和病毒,对病毒重新进行了定义,她以为:“计算机病毒是一段代码,能把自身加到其她程序涉及操作系统上;它不能独立运营,需要由它宿主程序运营来激活它”。而网络蠕虫强调自身积极性和独立性。Kienzle和Elder从破坏性、网络传播、积极袭击和独立性四个方面对网络蠕虫进行了定义:网络蠕虫是通过网络传播,不必顾客干预可以独立地或者依赖文献共享积极袭击恶意代码。依照传播方略,她们把网络蠕虫分

11、为三类:E-mail蠕虫、文献共享蠕虫和老式蠕虫。郑辉以为蠕虫具备积极袭击、行踪隐蔽、漏洞运用、导致网络拥塞、减少系统性能、产生安全隐患、重复性和破坏性等特性,并给出相应定义:“网络蠕虫是不必计算机使用者干预即可运营独立程序,它通过不断地获得网络中存在漏洞计算机某些或所有控制权来进行传播。”该定义包括了Kienzle和Elder定义后两类蠕虫,不涉及E-mail蠕虫。10月世界蠕虫会议上,Schechter和Michael D. Smith提出了一类新型网络蠕虫,Access For Sale蠕虫,此类蠕虫除上述定义特性之外,还具备身份认证特性。综合上述分析,咱们以为“网络蠕虫是一种智能化、自

12、动化,综合网络袭击、密码学和计算机病毒技术,不必计算机使用者干预即可运营袭击程序或代码,它会扫描和袭击网络上存在系统漏洞节点主机,通过局域网或者国际互联网从一种节点传播到此外一种节点”。此定义体现了新一代网络蠕虫智能化、自动化和高技术化特性。1.1.1 蠕虫与病毒定义1 蠕虫原始定义初期恶意代码重要形式是计算机病毒。1988年“Morris”蠕虫爆发后,Spafford为了区别蠕虫和病毒,对病毒重新进行了定义,她以为:“计算机病毒是一段代码,能把自身加到其她程序涉及操作系统上;它不能独立运营,需要由它宿主程序运营来激活它”。而网络蠕虫强调自身积极性和独立性。Kienzle和Elder从破坏性、

13、网络传播、积极袭击和独立性四个方面对网络蠕虫进行了定义:网络蠕虫是通过网络传播,不必顾客干预可以独立地或者依赖文献共享积极袭击恶意代码。依照传播方略,她们把网络蠕虫分为三类:E-mail蠕虫、文献共享蠕虫和老式蠕虫。郑辉以为蠕虫具备积极袭击、行踪隐蔽、漏洞运用、导致网络拥塞、减少系统性能、产生安全隐患、重复性和破坏性等特性,并给出相应定义:“网络蠕虫是不必计算机使用者干预即可运营独立程序,它通过不断地获得网络中存在漏洞计算机某些或所有控制权来进行传播。1”该定义包括了Kienzle和Elder定义后两类蠕虫,不涉及E-mail蠕虫。10月世界蠕虫会议上,Schechter和Michael D.

14、 Smith提出了一类新型网络蠕虫,Access For Sale蠕虫,此类蠕虫除上述定义特性之外,还具备身份认证特性。综合上述分析,咱们以为“网络蠕虫是一种智能化、自动化,综合网络袭击、密码学和计算机病毒技术,不必计算机使用者干预即可运营袭击程序或代码,它会扫描和袭击网络上存在系统漏洞节点主机,通过局域网或者国际互联网从一种节点传播到此外一种节点”。此定义体现了新一代网络蠕虫智能化、自动化和高技术化特性。2 病毒原始定义人们在探讨计算机病毒定义时,经常追溯到David Gerrold在1972年刊登科幻故事When Harlie Was One,但计算机病毒技术角度定义是由Fred Cohe

15、n在1984年给出,“计算机病毒是一种程序,它可以感染其他程序,感染方式为在被感染程序中加入计算机病毒一种副本,这个副本也许是在原病毒基本上演变过来。”1988年,Morris蠕虫爆发后,Eugene H. Spafford 为了区别蠕虫和病毒,将病毒含义作了进一步解释。“计算机病毒是一段代码,能把自身加到其他程序涉及操作系统上。它不能独立运营,需要由它宿主程序运营来激活它。”3 蠕虫定义进一步阐明在上面提到蠕虫原始定义和病毒原始定义中,都忽视了相称重要一种因素,就是计算机使用者,定义中都没有明确描述计算机使用者在其整个传染机制中所处地位。计算机病毒重要袭击是文献系统,在其传染过程中,计算机使

16、用者是传染触发者,是传染核心环节,使用者计算机知识水平高低经常决定了病毒所能导致破坏限度。而蠕虫重要运用计算机系统漏洞(vulnerability)进行传染,搜索到网络中存在漏洞计算机后积极进行袭击,在传染过程中,与计算机操作者与否进行操作无关,从而与使用者计算机知识水平无关。此外,蠕虫定义中强调了自身副本完整性和独立性,这也是区别蠕虫和病毒重要因素。可以通过简朴观测袭击程序与否存在载体来区别蠕虫与病毒1。通过简朴分析,可以得出结论,“Morris蠕虫病毒”是蠕虫而非病毒;“Happy99蠕虫病毒”、“Mellisa网络蠕虫宏病毒”、“Lover Letter网络蠕虫病毒”、“SirCam蠕虫

17、病毒”是病毒而非蠕虫;“NAVIDAD网络蠕虫”、“Blebla.B网络蠕虫”、“VBS_KAKWORM.A蠕虫”是病毒而非蠕虫2。4 蠕虫、病毒之间区别与联系(1)积极性方面:蠕虫传播具备很强积极性,它运营与传播并不需要计算机使用者干预;而病毒则必要要借助计算机使用者某种操作来激活它,这样才干达到其袭击目。(2)感染对象方面:蠕虫感染对象是有相应漏洞或者其她脆弱性计算机系统,而病毒感染对象则是计算机中文献系统。通过上面两点重要区别,读者已经基本可以对蠕虫与病毒加以区别。例如“NAVIDAD网络蠕虫”、“Blebla.B网络蠕虫”、“VBS_KAKWORM.A蠕虫”等,虽然它们以蠕虫命名,但它

18、们本质上却是病毒,并非蠕虫。表1.1中列出了蠕虫与病毒特性对比3。表1.1 蠕虫与病毒特性对比蠕虫病毒积极性积极传播激活后传播感染对象有相应脆弱性系统文献系统感染机制自身复制将自己插入宿主程序存在方式独立存在寄存于宿主程序中计算机顾客角色无关触发者影响重点本地系统、网络本地系统防护办法打补丁从宿主程序中清除对抗主体系统软件和服务软件提供商、计算机顾客、网络管理员计算机顾客、反病毒厂商1.1.2 蠕虫基本特性通过对蠕虫整个工作流程分析,可以归纳得到它如下8种基本特性3:1 积极袭击蠕虫在本质上已经演变为黑客入侵自动化工具,当蠕虫被释放后,从搜索漏洞,到运用搜索成果袭击系统,到复制副本,整个流程全

19、由蠕虫自身积极完毕。2 行踪隐蔽由于蠕虫传播过程,不像病毒那样需要计算机使用者辅助工作(如执行文献、打开文献、阅读信件、浏览网页等等),因此在蠕虫传播过程中,计算机使用者基本上不可察觉。3 运用系统、网络应用服务漏洞除了最早蠕虫在计算机之间传播是程序设计人员允许、并在每台计算机上做了相应配合支持机制之外,所有日后蠕虫都是要突破计算机系统自身防线,并对其资源进行滥用。计算机系统存在漏洞是蠕虫传播前提,运用这些漏洞,蠕虫获得被袭击计算机系统相应权限,完毕后继复制和传播过程。这些漏洞有是操作系统自身问题,有是应用服务程序问题,有是网络管理人员配备问题。正是由于漏洞产生因素复杂性,才导致人们面对蠕虫袭

20、击时候防不胜防。4 导致网络拥塞蠕虫进行传播第一步就是找到网络上其他存在漏洞计算机系统,这需要通过大面积搜索来完毕,搜索动作涉及:判断其他计算机与否存在;判断特定应用服务与否存在;判断漏洞与否存在。这不可避免会产生附加网络数据流量。虽然是不包括破坏系统正常工作恶意代码蠕虫,也会由于它产生了巨量网络流量,从而导致整个网络性能下降甚至瘫痪,进而导致经济损失。5 减少系统性能蠕虫入侵到计算机系统之后,会在被感染计算机上产生自己各种副本,每个副本启动搜索程序寻找新袭击目的。大量进程会耗费系统资源,导致系统性能下降,这对网络服务器影响尤为明显。6 产生安全隐患大某些蠕虫会收集、扩散、暴露系统敏感信息(如

21、顾客信息等),并在系统中留下后门,这些都会导致将来安全隐患。7 重复性虽然清除了蠕虫在文献系统中留下任何痕迹,如果没有修补计算机系统漏洞,重新接入到网络中计算机还是会被重新感染。这个特性在Nimda蠕虫身上体现得尤为突出。计算机使用者用某些声称可以清除Nimda防病毒产品清除本机上Nimda蠕虫副本后,不久就又重新被Nimda蠕虫所感染4。8 破坏性从蠕虫历史发展过程可以看到,越来越多蠕虫开始包括恶意代码,破坏被袭击计算机系统,并且导致经济损失数目越来越大。以上描述重要针对蠕虫个体活动行为特性,当网络中多台计算机被蠕虫感染后,将形成具备独特行为特性“蠕虫网络”(worm network),关于

22、蠕虫网络其他特性,尚有待进一步研究和讨论。1.1.3 蠕虫功能构造1主体功能模块主体功能模块由4个模块构成。(1)信息收集模块:该模块决定采用何种搜索算法对本地或者目的网络进行信息收集,内容涉及本机系统信息、顾客信息、邮件列表、对本机信任或授权主机、本机所处网络拓扑构造,边界路由信息等等,这些信息可以单独使用或被其她个体共享。(2)扫描探测模块:完毕对特定主机脆弱性检测,决定采用何种袭击渗入方式。(3)袭击渗入模块:该模块运用(2)中获得安全漏洞,建立传播途径,该模块在袭击办法上是开放、可扩充。(4)自我推动模块:该模块可以采用各种形式生成各种形态蠕虫副本,在不同主机间完毕蠕虫副本传递。例如“

23、Nimda”会生成各种文献格式和名称蠕虫副本;“W32.Nachi.Worm”运用系统程序(例如TFTP)来完毕推动模块功能等2。2辅助功能模块辅助功能模块是对除主体功能模块外其她模块归纳或预测,重要由5个功能模块构成。(1)实体隐藏模块:涉及对蠕虫各个实体构成某些隐藏、变形、加密以及进程隐藏,重要是为提高蠕虫生存能力。(2)宿主破坏模块:该模块用于摧毁或破坏被感染主机,破坏网络正常运营,在被感染主机上留下后门等。(3)信息通信模块:该模块能使蠕虫间、蠕虫同黑客之间能进行交流,这是将来蠕虫发展重点;运用通信模块,蠕虫间可以共享某些信息,使蠕虫编写者更好地控制蠕虫行为。(4)远程控制模块:控制模

24、块功能是调节蠕虫行为,控制被感染主机,执行蠕虫编写者下达指令。(5)自动升级模块:该模块可以使蠕虫编写者随时更新其她模块功能,从而实现不同袭击目。1.1.4 蠕虫传播方略 1选取性随机扫描随机扫描会对整个地址空间IP随机抽取进行扫描,而选取性随机扫描(Selective Random Scan)将最有也许存在漏洞主机地址集作为扫描地址空间,也是随机扫描方略一种。所选目的地址按照一定算法随机生成,互联网地址空间中未分派或者保存地址块不在扫描之列。例如Bogon列表bogon-list中包括近32个地址块,这些地址块对公网中不也许浮现某些地址进行了标记。选取性随机扫描具备算法简朴,易实现特点,若与

25、本地优先原则结合则能达到更好传播效果。但选取性随机扫描容易引起网络阻塞,使得网络蠕虫在爆发之前易被发现,隐蔽性差。“CodeRed”、“Slapper”和“Slammer”传播采用了选取性随机扫描方略6。2顺序扫描顺序扫描(Sequential Scan)是被感染主机上蠕虫会随机选取一种C类网络地址进行传播,依照本地优先原则,蠕虫普通会选取它所在网络内IP地址。若蠕虫扫描目的地址IP为A,则扫描下一种地址IP为A1或者A-1。一旦扫描到具备诸多漏洞主机网络时就会达到较好传播效果。该方略局限性是对同一台主机也许重复扫描,引起网络拥塞。“W32.Blaster”是典型顺序扫描蠕虫。3基于目的列表扫

26、描基于目的列表扫描(Hit-list Scan)是指网络蠕虫在寻找受感染目的前,预先生成一份易感染目的列表,然后对该列表进行袭击尝试和传播。目的列表生成办法有两种: 通过小规模扫描或者互联网共享信息产生目的列表; 通过度布式扫描可以生成全面列表数据库。抱负化蠕虫“Falsh”就是一种基于IPv4地址空间列表迅速扫描蠕虫。4基于路由扫描基于路由扫描(Routable Scan)是指网络蠕虫依照网络中路由信息,对IP地址空间进行选取性扫描一种办法。采用随机扫描网络蠕虫会对未分派地址空间进行探测,而这些地址大某些在互联网上是无法路由,因而会影响到蠕虫传播速度。如果网络蠕虫可以懂得哪些IP地址是可路由

27、,则它可以更快、更有效地进行传播,并能逃避某些对抗工具检测。网络蠕虫设计者普通运用BGP路由表公开信息,获取互联网路由IP地址前辍,然日后验证BGP数据库可用性。基于路由扫描大大提高了蠕虫传播速度,以“CodeRed”为例,路由扫描蠕虫感染率是采用随机扫描蠕虫感染率3.5倍ZTGC。基于路由扫描局限性是网络蠕虫传播时必要携带一种路由IP地址库,蠕虫代码量大。5基于DNS扫描基于DNS扫描(DNS Scan)是指网络蠕虫从DNS服务器获取IP地址来建立目的地址库,该扫描方略长处在于获得IP地址块具备针对性强和可用性高特点。基于DNS扫描局限性是: 难于得到有DNS记录完整地址列表; 蠕虫代码需要

28、携带非常大地址库,传播速度慢; 目的地址列表中地址数受公共域名主机限制。例如“CodeRed I”所感染主机中几乎一半没有DNS记录。6分治扫描分治扫描(Divide-Conquer Scan)是网络蠕虫之间互相协作迅速搜索易感染主机一种方略,网络蠕虫发送地址库一某些给每台被感染主机,然后每台主机再去扫描它所获得地址。主机A感染了主机B后,主机A将它自身携带地址分出一某些给主机B,然后主机B开始扫描这一某些地址。分治扫描方略局限性是存在“坏点”问题。在蠕虫传播过程中,如果一台主机死机或崩溃,那么所有传给它地址库就会丢失。这个问题发生越早,对传播影响就越大。有三种办法可以解决这个问题: 在蠕虫传

29、递地址库之前产生目的列表; 通过计数器来控制蠕虫传播状况,蠕虫每感染一种节点计数器加一,然后依照计数器值来分派任务; 蠕虫传播时候随机决定与否重传数据库。7扫描方略评价网络蠕虫传播速度核心影响因素有4个: 目的地址空间选取; 与否采用多线程搜索易感染主机; 与否有易感染主机列表(Hit-list); 传播途径多样化。各种扫描方略差别重要在于目的地址空间选取。网络蠕虫感染一台主机时间取决于蠕虫搜索到易感染主机所需要时间。因而,网络蠕虫迅速传播核心在于设计良好扫描方略。普通状况下,采用DNS扫描传播蠕虫速度最慢,选取性扫描和路由扫描比随机扫描速度快;对于Hit-list扫描,当列表超过1M字节时蠕

30、虫传播速度就会比路由扫描蠕虫慢;当列表不不大于6M字节时,蠕虫传播速度比随机扫描还慢。分治扫描当前还没有找到易于实现且有效算法。当前网络蠕虫一方面采用路由扫描,再运用随机扫描进行传播是最佳选取。1.2 蠕虫与病毒领域研究现状近年来,随着互联网普及,人们对互联网结识越来越进一步,大量蠕虫工具包和蠕虫编写文章在网上浮现,使得蠕虫编写工作难度越来越低。新蠕虫层出不穷,所导致危害也越来越大,其危害限度已经远远超过老式病毒,使人们逐渐结识到研究蠕虫对抗办法重要性。但当前研究工作还重要集中在对已有蠕虫检测与防范上,使蠕虫防范工作处在一种非常被动地位。为了变化这种被动局面,人们正在研究可以检测与防范未知蠕虫

31、精确有效办法,并已经获得某些初见成效成果。国内基本没有对蠕虫较进一步研究工作,这也许是由于对计算机病毒领域研究误解导致,依然有最新国内文献以为计算机病毒理论己经定型,没有研究必要。但这不表白中华人民共和国蠕虫技术落后,有大量迹象表白2,危害最大几种蠕虫都是中华人民共和国黑客编写。1.3 课题研究意义和目从90年代第一种变形病毒浮现到当前,还没有任何一款反病毒软件可以完全解决这个问题,并且时至今日,多态变形蠕虫、病毒始终存在于计算机系统之中。诸多多态变形蠕虫、病毒刚一浮现就大规模蔓延,几乎达到了不能控制状态。更为严重是,在过去几年里,多态变形技术己经趋于成熟,几乎每天均有新变种浮现,并且其复杂限

32、度也是日益增长。考察当前浮现大多数多态变形蠕虫、病毒,可以看出大多数计算机技术都被应用到了蠕虫、病毒设计中。从蠕虫、病毒发展角度来看,多态变形蠕虫、病毒将毫无疑问地成为将来蠕虫、病毒发展趋势,并将在原有基本上产生主线性转变。这重要体当前此类高档蠕虫、病毒不再持有以往绝大多数病毒那种“恶作剧”目,它也许是人类投入巨资研究出、可扰乱、破坏社会信息、政治、经济秩序等、或是主宰战争目一种“信息战略武器”;它们有也许接受机外遥控信息,也可以向外发出信息,例如在多媒体机上可通过视频、音频、无线电或互联网收发信息;也可以通过计算机辐射波,向外发出信息;也可以潜藏在联接Internet计算机中,收集密码和重要

33、信息,再悄悄地随着主人通信,将重要信息发出去。这些变形病毒智能化限度相称高,因而多态变形技术也就越来越受到人们关注。到当前为止,变形技术仅仅应用于P E 文献型病毒中5,完全意义上变形蠕虫、病毒还没有浮现。尽管老式特性码扫描技术在多态变形技术面前逐渐丧失了它以往上佳体现,但是新生技术,如虚拟机、基于行为检测技术以及启发式扫描技术,在很大限度上可以有效地遏制多态变形蠕虫、病毒蔓延6。本课题旨在通过研究多态变形技术,剖析已经存在变形蠕虫工作原理,提出多态蠕虫普通模型构造,并设计实现一种多态蠕虫产生器,从而实现对蠕虫序列多态变化。同步,本课题研究内容还可觉得反多态变形技术研究提供一定根据。1.4 本

34、文章节安排本次毕业设计任务就是理解多态蠕虫特性,设计实现一种模仿多态蠕虫产生器,以便对其多态变形机理进行进一步摸索,并有效防止此类蠕虫和病毒蔓延。依照本次毕业设计任务,本文共安排了5个章节,各章内容安排简要简介如下:第一章为绪论,分为4个小节。第一小节简介了蠕虫研究背景,重要涉及蠕虫和病毒某些基本知识,涉及蠕虫与病毒定义及其行为特性。第二小节简介了蠕虫与病毒领域某些研究现状。第三节提出了本课题研究意义及目。第四节简介了本文章节安排。第二章为蠕虫与多态蠕虫概述及实例分析,分为3个小节。第一小节简介了蠕虫实体构造和功能构造。第二小节简介了多态变形技术概念。第三小节对本章内容进行了总结。第三章为多态

35、蠕虫产生器设计,分为3个小节。第一小节简介了针对缓冲区溢出字符串多态变形设计。第二小节简介了多态蠕虫产生器模型构造及设计思想。第三小节对本章内容进行总结。第四章为多态蠕虫产生器实现,分为3个小节。第一小节简介多态蠕虫产生器功能实现,对多态蠕虫王序列进行了详细分析。第二小节对多态蠕虫产生器进行功能测试。第三小节是对本章内容总结。第五章为结束语,对本文内容进行总结,并对本课题研究方向做出了某些展望。第二章蠕虫与多态蠕虫概述及实例分析掌握蠕虫有关概念是对蠕虫研究基本,也只有对蠕虫有关技术熟悉才干开展对蠕虫进一步研究。下面咱们从蠕虫基本构造入手,简介一下蠕虫缓冲区溢出袭击及其多态变形技术,并通过实例对

36、其进行详细阐明,以便加深对它们理解。2.1 蠕虫实体构造和功能构造蠕虫相对于普通应用程序,在实体构造和功能构造方面体现更多复杂性,通过对各种蠕虫分析,可以将蠕虫构造归纳为如下几种某些。2.1.1 蠕虫实体构造蠕虫实体构造共分为如下6某些,详细蠕虫也许是由其中几某些构成1。1 未编译源代码由于有程序参数必要在编译时拟定,或者包括不同平台链接库,因此网络蠕虫程序也许包括一某些未编译公共程序源代码,由于在源代码一级可以有很大通用性,因此跨系统平台网络蠕虫经常会包括源代码某些。2 已编译链接模块不同系统(同族)也许需要不同运营模块,例如不同硬件和系统厂商采用不同运营库(UNIX族系统中很常用),这样可

37、以尽量减少程序编译工作。3 可运营代码这是网络蠕虫主体某些,整个网络蠕虫也许是由一种或各种编译好程序构成。4 脚本运用脚本可以节约大量程序代码,充分运用系统shell功能。5 受感染系统上可执行程序受感染系统上可执行程序如文献传播等可被网络蠕虫作为自己构成某些。诸多网络蠕虫为了尽量减小自身大小,同步完毕更强大功能,会直接执行系统平台提供各种可执行文献。6 信息数据涉及已破解口令、要袭击地址列表、网络蠕虫自身压缩包等等。2.1.2 基本功能模块蠕虫基本功能模块共涉及如下5某些:1) 搜索模块:寻找下一台要传染机器。为提高搜索效率,可以采用一系列搜索算法。2) 袭击模块:在被感染机器上建立传播通道

38、(传染途径)。为减少第一次传染数据传播量,可以采用引导式构造。3) 传播模块:重要是用于计算机间蠕虫体复制。4) 信息收集模块:收集和建立被传染机器上信息。5) 繁殖模块:建立自身各种副本。在同一台机器上提高传染效率,避免重复传染3。2.1.3 扩展功能模块蠕虫扩展功能模块由如下4某些构成:1) 隐藏模块:隐藏蠕虫,逃避简朴检测。2) 破坏模块:摧毁或破坏被感染计算机,或在被感染计算机上留下后门程序等等。3) 通信模块:蠕虫间、蠕虫同黑客之间进行交流,也许是将来蠕虫发展侧重点。4) 控制模块:调节蠕虫行为,更新其他功能模块,控制被感染计算机,也许是将来蠕虫发展侧重点3。蠕虫程序功能模型构造如图

39、2.1所示。蠕虫程序功能模型基本功能模块扩展功能模块袭击模块传播模块信息收集模块繁殖模块通信模块隐藏模块破坏模块控制模块搜索模块图2.1 蠕虫构造模型在图2.1中,蠕虫模块分为基本模块和扩展模块,基本模块中包括搜索模块、袭击模块、传播模块、信息收集模块、繁殖模块;扩展模块中包括隐藏模块、破坏模块、通信模块和控制模块。2.1.4 蠕虫工作流程蠕虫程序工作流程可以分为漏洞扫描、袭击、传染、现场解决四个阶段。蠕虫程序扫描到有漏洞计算机系统后,将蠕虫主体迁移到目的主机,然后蠕虫程序进入被感染系统,对目的主机进行现场解决。现场解决某些工作涉及:隐藏、信息收集等。同步蠕虫程序生成各种副本,重复上述流程,直

40、到运营条件不满足2,如图2.2所示。是否否否是是扫描袭击现场解决复制成功发现目的开始与否满足运营条件结束图2.2 蠕虫工作流程2.1.5特性码检测技术检测特性代码办法被广泛地应用在病毒或蠕虫检测工具中。特性代码法是检测已知病毒或蠕虫最简朴、开销最小办法。特性代码法工作原理如下:采集已知病毒或蠕虫样本,在病毒或蠕虫样本中,抽取特性代码。抽取时根据如下原则,抽取代码比较特殊,不大也许与普通正常程序代码吻合。抽取代码要有恰当长度,一方面维持特性代码唯一性,另一方面又不要有太大空间与时间开销。如果病毒或蠕虫特性代码增长1字节,要检测3000种病毒或蠕虫,增长空间就是3000字节8。因此要在保持唯一性前

41、提下,尽量使特性代码长度缩短,以减少空间与时间开销,并将特性代码纳入病毒或蠕虫数据库。检测病毒或蠕虫时,打开被检测文献,在文献中检查与否具有病毒或蠕虫数据库中特性代码。由于特性代码与病毒或蠕虫一一相应,因而如果在搜索中发现了符合病毒或蠕虫特性代码内容,便可以断定被查文献中包具有该种病毒或蠕虫7。要使蠕虫躲过这种检测办法,就要对蠕虫体进行多态变形,使同一种蠕虫不同实例具备相异形态,令特性码检测技术失效。至于如何进行蠕虫多态,正是本课题要研究内容。2.2 多态变形技术概念多态变形技术发展和形成,最早在计算机病毒中得到体现。普通把使用普通特性码检测法无法检测(或者很难检测)病毒(蠕虫)称为多态病毒(

42、蠕虫)8。为了使蠕虫代码躲避检测程序检测,需要不断对自身执行代码进行变换,尽量隐藏检测程序根据蠕虫特性代码,从而使检测程序无法对的侦测和清除该病毒。针对这种多态变形技术,只有对其自动变形机理进行进一步分析,才干找到有效检测办法。因而,本文对计算机蠕虫多态变形机理进行了进一步系统分析,并对有关实例进行了讨论。2.2.1 什么是多态变形技术1 什么是多态多态9就是使蠕虫可以变化自身存储形式技术,使老式依托特性值检测技术失效。2 什么是变形变形9则在多态基本上更进一步。对整个蠕虫体都进行解决,使同一种蠕虫不同实例代码完全不同,不但没有固定特性码,并且也无需还原成没有任何变化蠕虫体。如果说对付多态还可

43、以通过虚拟机等技术7,待蠕虫体被还原之后检测特性值,那么完全变形则使得这种技术完全失效10。2.2.2 常用多态变形技术1 多态变形病毒多态变形病毒日益增多,这种现象可以看作是病毒作者为了反击高档病毒扫描器而做出反映。由于设计合理扫描器可以病毒特性码发现病毒,因而,挫败扫描器办法就是设计可以变化自身代码病毒,从而使搜索字符串辨认技术失去效果。 多态变形病毒面对扫描器时,重要是通过代码变换及加密来隐藏自己。常用方略是用变化key加密病毒体重要某些,而保持解密执行程序不变。为了防止搜索字符串办法检测到,解密代码在每一次感染过程中都会变化。然而,设计多态变形病毒规定病毒作者有很夯实基本功,以及诸多技

44、巧。因而,这在段相对较长时间里,导致世面上较少浮现真正多态变形病毒。固然,世界不会一成不变。因而,在某个阶段,从事病毒贸易大哥级人物注意到这种现象,决定通过编写并分布多态变形生成器方式,向那些缺少技能小弟们伸出援手。2多态变形生成器从主线上说,多态变形生成器是某些例程,可以与已存在病毒链接。但生成器自身并不是病毒;它们目是使用多态变形技术来隐藏真正病毒。第一种通用多态变形生成是MutationEngine,也被称为MtE。在1991年浮现,大概有十亿各种不同排列,可以与任何病毒链接,它浮现宣布了即时多态变形时代到来了。时至今日,大概有33种已知病毒使用了MtE。 其他多态变形生成在MtE浮现后

45、接踵而至。1992年晚些时候就浮现了两个,其中一种就是TridenTPolymorphicEngine(TPE)。TPE出生在荷兰。从主线上说,它解决排列数比MtE要少某些,但是它为反病毒产品准备了此外难题,由于它生成译码器比MtE生成更普通,更没有代表性(也就更难被检测到)。另一种是NuKE Encryption Device(NED)。NuKE生成器不是很高档,但它独到之处是它不像大某些其他多态变形生成器那样发布目的模块,而是发布易读源码。 其他比较知名多态变形生成器尚有:MultipleEncryptor(DAME)DarwinianGeneticMutationEngine(DGME)

46、DarkSlayerMutationEngine(DSME)MutaGenGunsnRosesPolymorphicEngine(GPE)DarkSlayerConfusionEngine(DSCE)。这些生成器都是通过地址网络,病毒互换BBS与因特网上专用区域互换。3操作原理 多态变形生成器常用形式是一引动代码模块,程序可以把它插入程序。在这之后,程序就可以调用代码模块中包括函数了。这个过程被称为链接。生成器一旦链接到病毒,将变成病毒一某些。自那后来,病毒到处传播时,都会带着生成器。应当注意,生成器自身并不在乎它与哪种程序链接。虽然说已知多态变形生成器明显是为病毒而写,但从主线上说,它们也可

47、以用于其他种类程序。 当使用多态变形生成器病毒感染程序文献时(或其他对象),会规定生成器生成病毒体加密拷贝和生成器自身。除此之外,生成器还将生成译码器一种例程,把已加密代码还原成真正病毒代码。生成器使用加密技术相对比较简朴。但是,它们在每次执行时都会变化加密key。这样一来将使检测这样病毒变得非常困难,但加密病毒也有一种命门:解密例程,如果想要它可执行,就不能加密它。因而,多态变形生成器真正作用是通过它变换解密例程能力来衡量。所有多态变形生成器为了每次都能创立不同算法,需要某些随机化例程。有些生成器容许病毒作者用自己喜欢随机化例程替代本来。多态变形生成也许创立完全不同加密办法以及与之相应各不相似解密例程。它们普通是通过如下方式修改解密例程:移动例程周边指令,在随机地方增长无用指令,使用不同解决器寄存器和操作

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服