1计算机病毒的定义2计算机病毒的特点3计算机病毒的分类4计算机病毒的介绍5计算机病毒的对抗技术主要内容计算机病毒与对抗1.计算机病毒的定义1994年2月18日,我国正式颁布实施了《中华人民共和国计算机信息系统安全保护条例》,在《条例》第二十八条中明确指出:“计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用并能自我复制的一组计算机指令或者程序代码。”此定义具有法律效力和权威性。计算机病毒的定义从其产生发展至今逐渐有了质的变化,如今的病毒结合各类技术向多方面发展,基本上可以说只要对计算机系统、计算机网络有不良影响的行为都能称得上是计算机病毒,简言之:恶意代码就是计算机病毒。广义上的计算机病毒还包括:蠕虫、木马、后门、流氓软件、间谍软件、广告软件、黑客工具等。计算机病毒的特点2.1破坏性2.2隐蔽性2.3潜伏性2.4传染性2.5不可预见性2.计算机病毒的特点2.1破坏性任何病毒只要侵入系统,都会对系统及应用程序产生不同程度的影响。轻则显示一些画面,发出音乐,弹出一些无聊的窗口。重则破坏数据,删除文件,格式化磁盘,有的甚至对计算机硬件也有损坏。2.2隐蔽性病毒一般是短小精悍的一段程序,通常潜入到正常程序或磁盘中,在没有防护的情况下,有些病毒是在悄无声息的进行着计算机的破坏或者自我复制,有些病毒还嵌入到正常的程序中,因此很难被发现。2.3潜伏性大部分病毒在感染系统之后不会马上发作,它可以长时间隐藏在系统之中,在满足其特定条件下才启动其破坏模块。2.计算机病毒的特点2.4传染性对大多数计算机病毒,传染是它的一个重要特点。它用过修改别的程序,并把自身的副本包括进去,从而达到扩散的目的。病毒能将自身的代码强行传染到一切符合其传染条件的未感染的文件,而且还可以通过各种可能的渠道感染其他计算机。2.5不可预见性从病毒检测技术来看,病毒还有不可预见性,不同种类病毒,其代码千差万别,有的正常的程序也使用了类似病毒的操作甚至借鉴了某些病毒的技术,甄别起来更是困难,再加上病毒的制作技术也在不断的提高,所以病毒对反病毒软件永远是超前的。2.计算机病毒的特点1.按其破坏性分类可分为:良性病毒和恶性病毒。2.按照病毒的功能进行分类可分为:感染性病毒、蠕虫、木马、Backdoor、VirusTools工具等。3.按照病毒链接方式分类可分为:源码型、嵌入型、操作系统型和外壳型病毒。4.按寄生方式可分为:引导型病毒、文件型病毒以及集两种病毒特性于一体的复合型病毒和宏病毒、网络病毒。5.其他一些分类方式按照计算机病毒攻击的操作系统;按照计算机病毒激活的时间;按计算机病毒攻击的机型。3计算机病毒的分类计算机病毒的工作机理1.计算机病毒的结构计算机病毒在结构上有着共同性,一般由引导模块、传染模块、表现(破坏)模块3部分组成。必须指出的是,不是任何病毒都必须包含这3个模块。2.计算机病毒的工作机理因为计算机病毒的传染和发作需要使用一些系统函数及硬件,而后者往往在不同的平台上是各不相同的,因此大多数计算机病毒都是针对某种处理器和操作系统编写的。我根据病毒的寄生方式分类介绍病毒。4计算机病毒的介绍常见的恶意代码(广义的病毒定义)4计算机病毒的介绍恶意代码需要宿主的程序可以独立运行的程序后门逻辑炸弹特洛伊木马病毒蠕虫复制恶意代码分类示意图4.1引导型病毒概述引导区病毒就是专门感染磁盘引导扇区和硬盘主引导扇区的计算机病毒程序,如果被感染的磁盘被作为系统启动盘使用,则在启动系统时,病毒程序即被自动装入内存,从而是现行系统感染病毒。引导区病毒是一种将硬盘重新分区和格式化都不能清除掉的一种顽固病毒。例如,“大麻”病毒、“小球”病毒、“磁盘杀手”病毒。目前,在windows环境中,主引导区也成为部分病毒(Bootkit)实施“永驻”的位置之一,只是实施起来比DOS系统更加复杂而已。4计算机病毒的介绍引导型病毒的工作机理引导扇区是硬盘或软盘的第一个扇区,是存放引导指令的地方,这些引导指令对于操作系统的装载起着十分重要的作用。一般来说,引导扇区在CPU的运行过程中最先获得对CPU的控制权,病毒一旦控制了引导扇区,也就意味着病毒控制了整个计算机系统。引导型病毒程序会用自己的代码替换原始的引导扇区信息,并把这些信息转移到磁盘的其他扇区中。当系统需要访问这些引导数据信息时,病毒程序会将系统引导到存储这些引导信息的新扇区,从而使系统无法发觉引导信息的转移,增强了病毒自身的隐蔽性。4计算机病毒的介绍磁盘硬盘引导区病毒感染引导指令引导区引导指令4.2文件型病毒概述文件型病毒攻击的对象是可执行程序,病毒程序将自己附着或追加在后缀名为.exe或.com等的可执行文件上。当感染了该类病毒的可执行文件运行时,病毒程序将在系统中进行它的破坏行动。同时,它将驻留在内存中,试图感染其他文件。当该类病毒完成了它的工作之后,其宿主程序才得到运行,使一切看起来很正常。4计算机病毒的介绍文件型病毒的工作机理当今,绝大多数的文件型病毒都属于Win32PE病毒,我来介绍一下Win32PE病毒的原理。一般来说,病毒往往先于HOST程序获得控制权。运行Win32病毒的一般流程示意如下:①用户点击或系统自动运行HOST程序;②装载HOST程序到内存;③通过PE文件中的AddressOfEntryPoint+ImageBase,定位第一条语句的位置(程序入口);④从第一条语句开始执行(这时执行的其实是病毒代码);⑤病毒主体代码执行完毕,将控制权交给HOST程序原来的入口代码;⑥HOST程序继续执行。4计算机病毒的介绍文件型病毒的种类覆盖型文件病毒依附性文件病毒伴随型文件病毒4计算机病毒的介绍病毒前依附后依附ABC.EXE伪ABC.EXE伪ABC.EXEVirus.exe捆绑型文件病毒ABC.exe感染infected.exeVirus.COM4.3混合病毒混合型病毒是指那些既可以对引导区进行感染也可以对文件进行感染的病毒。这样的病毒通常都具有复杂的算法,它们使用非常规的办法侵入电脑,用时使用了加密和变形技术,所以这类病毒清除的难度更大。具体的技术我在后面部门简述。4计算机病毒的介绍4.4网络病毒网络病毒是指通过计算机网络传播或感染网络中和网络上计算机文件的病毒。它不再只是靠移动式存储载体,而是网络通道。这种病毒的传染力更大,破坏力更强。例如蠕虫病毒和木马病毒等。随着互联网和无线互联网日趋完善,病毒的技术和攻击目的也更加多样,好多病毒的功能越来越多元化,集成化,智能化。4计算机病毒的介绍4.4.1特洛伊木马(1)木马病毒概述“特洛伊木马”的英文名称为TrojanHorse(其名称取自希腊神话的《特洛伊木马记》),是指表面看上去对人们有用或有趣,但实际上却有害的东西,并且它的破坏性是隐蔽的。计算机中的木马是一种基于远程控制的黑客工具,采用客户机/服务器(c/s)工作模式。它通常包含控制端和被控制端两部分。被控制端的木马程序一旦植入受害者的计算机(简称宿主)中,操纵者就可以在控制端实时监视该用户的一切操作,有的放矢地窃取重要文件和信息,甚至还能远程操控受害计算机对其他计算机发动攻击。木马的控制端和被控制端通过网络进行交互。4计算机病毒的介绍(2)木马的特点木马具有隐蔽性和非授权性的特点。所谓隐蔽性,是指木马的设计者为了防止木马被发现,会采用多种手段隐藏木马。这样,被控制端即使发现感染了木马,也不能确定其准确的位置。所谓非授权性,是指一旦控制端与被控制端连接后,控制端将享有被控制端的大部分操作权限,包括修改文件、修改注册表、控制鼠标、键盘等,这些权力并不是被控制端赋予的,而是通过木马程序窃取的。4计算机病毒的介绍(3)木马的工作过程木马对网络主机的入侵过程,可大致分为6个步骤。①配置木马(制造者)②传播木马(制造者上传,用户下载)③运行木马(用户运行)④信息泄露(病毒程序)⑤连接建立(病毒程序)⑥远程控制(病毒程序)4计算机病毒的介绍(4)木马的种类①密码发送型木马②键盘记录型木马③破坏型木马④DOS型木马(这个而是拒绝服务攻击的DOS)⑤FTP型木马4计算机病毒的介绍4.4.2蠕虫病毒(1)蠕虫的定义蠕虫病毒和普通病毒有着很大的区别。普通病毒主要是感染文件和引导区,而蠕虫则是一种通过网络进行传播的恶性代码。它具有普通病毒的一些共性,例如传播性、隐蔽性、破坏性等;同时也具有一些自己的特征,例如不利用文件寄生、可对网络造成拒绝服务、与黑客技术相结合等。蠕虫的传染目标是网络内的所有计算机。在破坏性上,蠕虫病毒也不是普通病毒所能比的,网络的发展使得蠕虫可以在短短的时间内蔓延到整个网络,造成网络瘫痪。4计算机病毒的介绍4计算机病毒的介绍蠕虫病毒与一般病毒的区别普通病毒蠕虫病毒存在形式寄存文件独立程序传染机制宿主程序运行主动攻击传染目标本地文件网络计算机(2)蠕虫的分类①根据使用者情况的不同,可将蠕虫病毒分为两类,即面向企业用户的蠕虫病毒和面向个人用户的蠕虫病毒。面向企业用户的蠕虫病毒利用系统漏洞,主动进行攻击,可以对整个网络造成瘫痪性的后果,以“红色代码”、“尼姆达”、“SQL蠕虫王”为代表;面向个人用户的蠕虫病毒通过网络(主要是电子邮件、恶意网页形式等)迅速传播,以“爱虫”、“求职信”蠕虫为代表。②按其传播和攻击特征,可将蠕虫病毒分为3类,即漏洞蠕虫、邮件蠕虫和传统蠕虫病毒。4计算机病毒的介绍(3)蠕虫的传播蠕虫程序的一般传播过程如下:(1)扫描。由蠕虫的扫描功能模块负责收集目标主机的信息,寻找可利用的漏洞或弱点。当程序向某个主机发送探测漏洞的信息并收到成功的反馈信息后,就得到一个可传播的对象。扫描采用的技术方法包括用扫描器扫描主机,探测主机的操作系统类型、主机名、用户名、开放的端口、开放的服务、开放的服务器软件版本等。(2)攻击。攻击模块按步骤自动攻击前面扫描中找到的对象,取得该主机的权限(一般为管理员权限),获得一个Shell。(3)复制。复制模块通过原主机和新主机的交互将蠕虫程序复制到新主机中并启动。4计算机病毒的介绍4.5宏病毒为了减少用户的重复劳作,例如进行相似的操作,Office提供了一种所谓宏的功能。利用这个功能,用户可以把一系列的操作记录下来,作为一个宏。之后只要运行这个宏,计算机就能自动地重复执行那些定义在宏中的所有操作。这种宏操作一方面方便了普通的计算机用户,另一方面却也给病毒制造者提供了可乘之机。宏病毒是一种专门感染Office系列文档的恶性病毒。1995年,世界上发现了第一个宏病毒Concept。由于宏的编程语言VBA简单易学,因此大量的宏病毒层出不穷,短短两年时间其数量就上升至20000多种!4计算机病毒的介绍5.1病毒技巧(1)病毒文件的隐藏技术(同理病毒进程、注册表、服务端口等)(2)病毒的花指令(3)病毒的加密(4)加壳技术(5)特征码定位(6)反调试技术5计算机病毒的对抗技术(1)病毒的隐藏技术5计算机病毒的对抗技术(1)病毒文件的隐藏技术用户态文件隐藏用户态HOOK(主要为IAT钩子)挂钩API两个函数:FindFirstFile和FindNextFile内核态文件隐藏核心态HOOK(主要为SSDT钩子)挂钩API一个函数:ZwQueryDirectoryFile5计算机病毒的对抗技术(2)病毒文件的花指令一个没有任何防护措施的程序,很容易被完整地静态反汇编出来。为了达到迷惑破解者的目的,病毒作者往往在程序中加入花指令。这不仅仅用在计算机病毒中以防止被轻易分析出其病毒结构和原理,它也常常用在很多正常的软件中,以防止遭到非法破解。所谓花指令就是在我们的程序之间加入一些似乎没有什么意义的代码,这些代码不会妨碍程序的正常低运行,但是在静态反汇编时,去会让原本正常的代码解释成难以读懂甚至有些怪异的汇编代码。5计算机病毒的对抗技术(3)病毒文件的加密尽管有些病毒采用了花指令,但是还是比较容易地被正确地反汇编出来。为了加大静态反汇编的难度,提高病毒的生存能力,病毒制造者采用了病毒的加密技术,该技术目前已经得到很大的发展,进而演变出病毒的多态技术和病毒的变形技术。5