好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

网络蠕虫课件.ppt

32页
  • 卖家[上传人]:新**
  • 文档编号:593594109
  • 上传时间:2024-09-26
  • 文档格式:PPT
  • 文档大小:286.50KB
  • / 32 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 计算机病毒与反病毒技术计算机病毒与反病毒技术网络蠕虫 主要内容•网络蠕虫的定义及其与狭义病毒的区别•蠕虫的分类•蠕虫的工作原理•蠕虫的行为特征•蠕虫的防治第第6 6章章 网络蠕虫网络蠕虫网络蠕虫 6.1.1 蠕虫的起源•1980年,Xerox PARC的研究人员John Shoch和Jon Hupp在研究分布式计算、监测网络上的其他计算机是否活跃时,编写了一种特殊程序,Xerox蠕虫•1988年11月2日,世界上第一个破坏性计算机蠕虫正式诞生–Morris为了求证计算机程序能否在不同的计算机之间进行自我复制传播,编写了一段试验程序–为了让程序能顺利进入另一台计算机,他还写了一段破解用户口令的代码–11月2日早上5点,这段被称为“Worm”(蠕虫)的程序开始了它的旅行它果然没有辜负Morris的期望,爬进了几千台计算机,让它们死机–Morris蠕虫利用sendmail的漏洞、fingerD的缓冲区溢出及REXE的漏洞进行传播•Morris在证明其结论的同时,也开启了蠕虫新纪元6.1 6.1 蠕虫的起源及其定义蠕虫的起源及其定义网络蠕虫 6.1.2 蠕虫的原始定义•蠕虫这个生物学名词在1982年由Xerox PARC的John F. Shoch等人最早引入计算机领域,并给出了计算机蠕虫的两个最基本特征:“可以从一台计算机移动到另一台计算机”和“可以自我复制”•1988年Morris蠕虫爆发后,Eugene H. Spafford为了区分蠕虫和病毒,给出了蠕虫的技术角度的定义:“Worm is a program that can run by itself and can propagate a fully working version of itself to other machines. ”(计算机蠕虫可以独立运行,并能把自身的一个包含所有功能的版本传播到另外的计算机上)6.1 6.1 蠕虫的起源及其定义蠕虫的起源及其定义网络蠕虫 6.1.3 计算机病毒的原始定义•计算机病毒从技术角度的定义是由Fred Cohen在1984年给出的:“A program that can ‘infect’ other programs by modifying them to include a possibly evolved copy of itself.”(计算机病毒是一种可以感染其它程序的程序,感染的方式为在被感染程序中加入计算机病毒的一个副本,这个副本可能是在原病毒基础上演变过来的)•1988年Morris蠕虫爆发后,Eugene H. Spafford为了区分蠕虫和病毒,将病毒的含义作了进一步的解释:“Virus is a piece of code that adds itself to other programs, including operating systems. It cannot run independently and it requires that its 'host' program be run to activate it.”(计算机病毒是一段代码,能把自身加到其它程序包括操作系统上。

      它不能独立运行,需要由它的宿主程序运行来激活它)6.1 6.1 蠕虫的起源及其定义蠕虫的起源及其定义网络蠕虫 6.1.4 蠕虫与病毒之间的区别及联系病 毒蠕 虫存在形式寄生独立个体复制机制插入到宿主程序(文件)中自身的拷贝传染机制宿主程序运行系统存在漏洞(Vulnerability)搜索机制(传染目标)主要是针对本地文件主要针对网络上的其它计算机触发传染计算机使用者程序自身影响重点文件系统网络性能、系统性能计算机使用者角色病毒传播中的关键环节无关防治措施从宿主程序中摘除为系统打补丁(Patch)6.1 6.1 蠕虫的起源及其定义蠕虫的起源及其定义网络蠕虫 6.1.5 蠕虫定义的进一步说明•计算机病毒主要攻击的是文件系统,在其传染的过程中,计算机使用者是传染的触发者,是传染的关键环节,使用者的计算机知识水平的高低常常决定了病毒所能造成的破坏程度而蠕虫主要是利用计算机系统漏洞(Vulnerability)进行传染,搜索到网络中存在漏洞的计算机后主动进行攻击,在传染的过程中,与计算机操作者是否进行操作无关,从而与使用者的计算机知识水平无关•蠕虫的定义中强调了自身副本的完整性和独立性,这也是区分蠕虫和病毒的重要因素。

      可以通过简单的观察攻击程序是否存在载体来区分蠕虫与病毒•不能简单的把利用了部分网络功能的病毒统称为蠕虫或蠕虫病毒•“Melissa网络蠕虫宏病毒”(Macro.Word97.Melissa)、“Lover Letter网络蠕虫病毒”(VBS.LoveLetter)等等,都是病毒,而不是蠕虫以病毒命名的“冲击波病毒”(Worm.MSBlast),却是典型的蠕虫6.1 6.1 蠕虫的起源及其定义蠕虫的起源及其定义网络蠕虫 6.2.1 蠕虫的分类•根据蠕虫的传播、运作方式,可以将蠕虫分为两类–主机蠕虫•主机蠕虫的所有部分均包含在其所运行的计算机中•在任意给定的时刻,只有一个蠕虫的拷贝在运行•也称作“兔子”(Rabbit)–网络蠕虫•网络蠕虫由许多部分(称为段,Segment)组成,而且每一个部分运行在不同的计算机中(可能执行不同的动作)•使用网络的目的,是为了进行各部分之间的通信以及传播•网络蠕虫具有一个主segment,该主segment用以协调其他segment的运行•这种蠕虫有时也称作“章鱼”(Octopus)6.2 6.2 蠕虫的分类蠕虫的分类网络蠕虫 6.2.2 蠕虫与漏洞•网络蠕虫最大特点是利用各种漏洞进行自动传播•根据网络蠕虫所利用漏洞的不同,又可以将其细分–邮件蠕虫•主要是利用MIME(Multipurpose Internet Mail Extension Protocol,多用途的网际邮件扩充协议)漏洞6.2 6.2 蠕虫的分类蠕虫的分类MIME描述漏洞描述漏洞网络蠕虫 6.2.2 蠕虫与漏洞–网页蠕虫•主要是利用IFrame漏洞和MIME漏洞•网页蠕虫可以分为两种–用一个IFrame插入一个Mail框架,同样利用MIME漏洞执行蠕虫,这是直接沿用邮件蠕虫的方法–用IFrame漏洞和浏览器下载文件的漏洞来运作的,首先由一个包含特殊代码的页面去下载放在另一个网站的病毒文件,然后运行它,完成蠕虫传播–系统漏洞蠕虫•利用RPC溢出漏洞的冲击波、冲击波杀手•利用LSASS溢出漏洞的震荡波、震荡波杀手•系统漏洞蠕虫一般具备一个小型的溢出系统,它随机产生IP并尝试溢出,然后将自身复制过去•它们往往造成被感染系统性能速度迅速降低,甚至系统崩溃,属于最不受欢迎的一类蠕虫6.2 6.2 蠕虫的分类蠕虫的分类网络蠕虫 6.3.1 蠕虫的基本结构•蠕虫程序的实体结构•蠕虫程序的功能结构6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.2 蠕虫的工作方式与扫描策略•蠕虫的工作方式一般是“扫描→攻击→复制”6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.2 蠕虫的工作方式与扫描策略•蠕虫的扫描策略–现在流行的蠕虫采用的传播技术目标,一般是尽快地传播到尽量多的计算机中–扫描模块采用的扫描策略是:随机选取某一段IP地址,然后对这一地址段上的主机进行扫描–没有优化的扫描程序可能会不断重复上面这一过程,大量蠕虫程序的扫描引起严重的网络拥塞•对扫描策略的改进–在IP地址段的选择上,可以主要针对当前主机所在的网段进行扫描,对外网段则随机选择几个小的IP地址段进行扫描–对扫描次数进行限制,只进行几次扫描–把扫描分散在不同的时间段进行6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.2 蠕虫的工作方式与扫描策略•扫描策略设计的原则–尽量减少重复的扫描,使扫描发送的数据包总量减少到最小–保证扫描覆盖到尽量大的范围–处理好扫描的时间分布,使得扫描不要集中在某一时间内发生–怎样找到一个合适的策略需要在考虑以上原则的前提下进行分析,甚至需要试验验证6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.2 蠕虫的工作方式与扫描策略•蠕虫常用的扫描策略–选择性随机扫描(包括本地优先扫描)–可路由地址扫描(Routable Scan)–地址分组扫描(Divide-Conquer Scan)–组合扫描(Hybrid Scan)–极端扫描(Extreme Scan)6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.3 蠕虫的传播模型•蠕虫在计算机网络上的传播,可看作是服从某种规律的网络传播行为•一个精确的蠕虫传播模型可以使人们对蠕虫有更清楚的认识,能确定其在传播过程中的弱点,而且能更精确的预测蠕虫所造成的损失•目前已有很多学者对蠕虫进行了深入研究,提出了一些模型,这些蠕虫传播模型都是针对随机网络的,不能很好的模拟实际网络环境。

      如何精确地描述蠕虫传播行为,揭示它的特性,找出对该行为进行有效控制的方法,一直是学者们共同关注的焦点•最经典网络传播模型的SIS模型和SIR模型–在SIS模型中,每一个网络节点只能处于两种状态中的一种,一是易感的,二是已被感染从而具有传染能力的–在SIR模型中,节点还可以处于一种叫做免疫的状态,在这种状态下,节点既不会被感染,也不会感染其它节点6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.3 蠕虫的传播模型•Kermack-Mckendrick模型是SIR模型中的经典–在Kermack-Mckendrick模型中考虑了感染主机的恢复,它假定在蠕虫传播期间,一些受感染的主机可以恢复为正常状态或死亡,且对此蠕虫具有免疫功能,因此每个主机具有三种状态:易感、感染或恢复,其状态转移可表示为易感→感染→恢复,或永远保持易感状态6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.3 蠕虫的传播模型–感染的主机数与感染强度示意图6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.3 蠕虫的传播模型–Kermack-Mckendrick模型用数学公式可以表示为•r(t)表示在时刻t被感染的主机数•R(t)表示在时刻t被恢复的主机数•S(t)表示在t时刻尚未感染的主机数•N表示主机总数–从Kermack-Mckendrick模型可以得出一个重要的理论——蠕虫爆发定理:一个大规模蠕虫爆发的充分必要条件是初始易感主机的数目S(0)>ρ–由于存在蠕虫爆发的阈值,因此,采取各种防治手段,如安装杀毒软件、打补丁、断开网络连接等降低蠕虫感染率,通过先进的治疗手段提高恢复率,使S(0)≤ρ,从而有效地遏制蠕虫的传播。

      能否在蠕虫的缓慢传播阶段实现对蠕虫的检测和防治成为有效防治蠕虫的关键6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.4 蠕虫的行为特征•通过对蠕虫的整个工作流程进行分析,可以归纳得到它的行为特征–主动攻击–行踪隐蔽–利用系统、网络应用服务器漏洞–造成网络拥塞–消耗系统资源,降低系统性能–产生安全隐患–反复性–破坏性6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.3.5 蠕虫技术的发展•通过对蠕虫行为特征、实体结构、功能结构的分析,可以预测蠕虫技术发展的趋势将主要集中在如下几个方面:–超级蠕虫–分布式蠕虫–动态功能升级技术–通信技术–与黑客技术的结合–与病毒技术的结合6.3 6.3 蠕虫的基本原理蠕虫的基本原理网络蠕虫 6.4.1 蠕虫的防治策略•尽早地发现蠕虫并对感染了蠕虫的主机进行隔离和恢复,是防止蠕虫泛滥、避免造成重大损失的关键•计算机蠕虫防治的方案可以从两个角度来考虑–从它的实体结构来考虑,如果破坏了它的实体组成的一个部分,则破坏了其完整性,使其不能正常工作,从而达到阻止其传播的目的–从它的功能组成来考虑,如果使其某个功能组成部分不能正常工作,也同样能达到阻止其传播的目的–具体可以分为如下一些措施•修补系统漏洞•分析蠕虫行为•重命名或删除命令解释器(Interpreter)•防火墙(Firewall)•公告•更深入的研究6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.4.2 蠕虫的防治周期•结合蠕虫的传播模型,对蠕虫的防治分为四个阶段–对某个具体的蠕虫而言,这四个阶段是串行的,而对蠕虫这类病毒而言,是并行的•预防阶段•检测阶段•遏制阶段•清除阶段6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.4.3 蠕虫的检测与清除•对未知蠕虫的检测–有多种方法可以对未知蠕虫进行检测,比较通用的方法有对流量异常的统计分析、对TCP连接异常的分析、对ICMP(Internet Control Message Protocol,互联网控制报文协议)数据异常的分析蠕虫的随机扫描行为与蠕虫的随机扫描行为与路由器返回路由器返回ICMP-T3包包6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.4.3 蠕虫的检测与清除•对于已知蠕虫的检测–以Worm.Sasser.b(振荡波变种B)检测为例6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.4.3 蠕虫的检测与清除•以Worm.Sasser.b为例,说明蠕虫的清除方法–该蠕虫是“震荡波”的第二个变种,依然是利用微软操作系统的LSASS(Local Security Authority Subsystem Service)缓冲区溢出漏洞进行远程主动攻击和传染,导致系统异常和网络严重拥塞,具有极强的危害性–和上一版本相比,其攻击方式发生了变化,改成了多线程扫描多进程攻击,而且,蠕虫产生的文件名和注册表键值也都发生了变化–该蠕虫占用大量的系统和网络资源,使被感染的计算机变得很慢。

      由于Windows NT以上操作系统中广泛存在此漏洞,该蠕虫会在网络上迅速传播,造成网络瘫痪6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.4.3 蠕虫的检测与清除–感染机理及感染过程•①使用AbortSystemShutdown API来防止系统重启或关机,然后拷贝自身到系统目录,名为%WINDOWS%\avserve2.exe,然后登记到自启动项•②开辟线程,在本地建立FTP服务器•③开辟128个扫描线程,以本地IP地址为基础,取随机IP地址,疯狂地试探连接TCP端口445,如果试探成功,则把该目标的IP地址保存到“c:\win2.log”,并向被连接主机发动溢出攻击•④利用LSASS中存在一个缓冲区溢出漏洞进行攻击,一旦攻击成功会导致对方主机感染此蠕虫并进行下一轮的传播,攻击失败也会造成对方主机缓冲区溢出,导致对方主机程序非法操作,以及系统异常等由于该蠕虫在LSASS中溢出,可以获取管理员的权限,执行任意指令•⑤溢出代码主动从原主机下载蠕虫程序并执行,开始新的攻击被攻击的计算机将自动连接蠕虫主机的5554端口并通过FTP下载蠕虫的副本,名称一般为4到5个数字加上“_up”的组合,如“78456_up.exe”6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.4.3 蠕虫的检测与清除–手动清除•①给计算机打上最新的补丁•②打开任务管理器,查看是否存在名为avserve2.exe的进程,存在则终止之•③打开注册表编辑器,删除启动键值(如果存在的话) •④删除%WINDOWS%\avserve2.exe6.4 6.4 蠕虫的防治蠕虫的防治网络蠕虫 6.5.1 “冲击波清除者”概述•2003年8月18日,互联网中出现一种清除“冲击波”(Worm.MSBlast) 的蠕虫(MSBlast.Remove.Worm/ W32)•该蠕虫利用Windows RPC DCOM漏洞(MS03-026)及Windows IIS WEBDAV(MS03-07)作为感染攻击手段,并通过T简单文件传输协议)下载病毒体到被感染机器中•该蠕虫不在被感染系统留后门,也不会进行有目的的拒绝服务攻击。

      其感染目的是清除MSBlast.Worm/W32病毒体及分别为Win2000、Win XP的韩文系统、繁体中文系统、简体中文系统、英文系统下载和安装Windows RPC DCOM(MS03-26)安全补丁,而且该蠕虫还具有定时自毁功能•该蠕虫也称作“Chian”蠕虫,因其体内有“~~~ Welcome Chian~~~”字样据蠕虫作者在某安全网站发表的声明,“Chian”是“China”的笔误6.5 “6.5 “冲击波冲击波””清除者分析清除者分析网络蠕虫 6.5.1 “冲击波清除者”概述•感染途径–病毒体初始化前为了避免蠕虫多次感染运行,会检查或者建立一个互斥量并将其命名为“RpcPatch_Mutex”–蠕虫体被运行后,蠕虫会在%System%\wins文件夹中复制一个蠕虫体拷贝(DLLHOST.EXE),然后蠕虫会新建一个服务,服务名为 “RpcPatch”, 显示名称为“WINS Client”,可执行文件的路径为%System%\wins\ DLLHOST.EXE,大小为10KB,服务启动属性为自动运行(注意:系统目录里也有一个DLLHOST.EXE文件,但它是正常文件,大小只有6KB)。

      随后,蠕虫会把T拷贝到%System%\Wins目录下面取名为SVCHOST.EXE,建立一个服务,服务名称为“RpcTftpd”,显示名称为 “Network Connections Sharing”,可执行文件的路径为%System%\wins\ SVCHOST.EXE,服务启动属性为自动运行(注意:系统目录里也有一个SVCHOST.EXE文件,但它是正常文件,大小为7952字节)6.5 “6.5 “冲击波冲击波””清除者分析清除者分析网络蠕虫 6.5.1 “冲击波清除者”概述–当系统重新启动的时候,以上两个服务启动触发蠕虫运行–蠕虫会绑定一个由随机数除以100并把余数加上666的最终值作为提供感染源连接发送病毒体文件操作命令的端口,建立独立线程(分析中发现多次出现TCP 707端口)当检测到dllhost.exe、t字符串的时候该端口关闭6.5 “6.5 “冲击波冲击波””清除者分析清除者分析网络蠕虫 6.5.1 “冲击波清除者”概述•蠕虫特点–杀除其它MSBlast蠕虫–下载补丁–会删除自身•蠕虫会在删除完MSBlast后开始检查系统时间当系统设置的年份为2004年时,把自己从系统中删除掉,也对应了这个作者在代码中的一句留言“Notice: 2004 will remove myself:-) ”•清除方法–由于该蠕虫的自清除属性,因此可以修改系统时间年份至2004年,并重新启动系统。

      安装漏洞补丁后再矫正系统时间6.5 “6.5 “冲击波冲击波””清除者分析清除者分析网络蠕虫 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.