1、天津大学网络教育学院1大纲l一、概述l二、攻击原理分析 DoS , DDoS, DRDoSl三、各种攻击方法的介绍l四、拒绝服务攻击的检测、防范及对策l五、结束语2一、概述l 美伊之战惨烈异常,然而战争的暴风雨早已在网络上铺天盖地,据美联邦调查局( FBI)的一份评估报告披露最近频繁发生的针对美国政府部门和军用计算机网络攻击可能是亲伊拉克黑客所为,而且多是使用一种叫做拒绝服务的攻击手段,那么下面我们就来研究这种近来网上极为流行的黑客攻击方法。3典型的网络环境群件服务器ExchangeLotus Notes 文件服务器W2K ServerWindows NTNetWareLinux Intern
2、et网关SMTPFTPHTTP 客户端计算机Windows 9xNT Wks.W2K Pro.Internet4黑客入侵途径FirewallInternetClientInternet GatewayFile ServerMail Server从 Internet 入侵藏匿在文件服务器Email 病毒 木马从用戶端渗透5通过资源共享入侵HACKER寻找网络邻居进行入侵6Internet网关入侵Internet闸门SMTPFTPHTTP透过 SMTP外流带毒邮件透过 SMTP、HTTP、 FTP进入网络7文件服务器感染途径文件服务器W2K ServerNT ServerNetWareUNIX经由
3、软盘片、光盘等途径感染 从客户端电脑感染从其它文件服务器感染8新闻l 最近一段时间,国内几大安全网站遭到强烈的分布式拒绝服务攻击( DDoS),服务器连接几十小时无法正常工作,造成巨大的损失。而且这种攻击方法在国外也被广泛使用,下面是几则新闻很能说明问题:l 1, “2000年 7, 8, 9,日三天,美国最著名的几大网站Yahoo!,eBay,Buy,CNN,相继遭到网络黑客狂风暴雨式的攻击,导致网站瘫痪服务中断。这次黑客攻击就采用了这种拒绝服务的变种分布式拒绝服务攻击技术。 ”l 2, “2002年 1月 11日凌晨两点, 被一种更先进的恶意洪水数据包攻击。这种新型攻击形式我们称之为分布式
4、反射服务攻击。 ”l 3, “2002年美国当地时间 10月 21日,全世界 13台路由 DNS服务器( Route Server)同时受到了 DDoS(分布式拒绝服务)攻击。值得庆幸的是并没有酿成严重事故。但此事再次表明,在因特网上目前仍旧存在很多充当 DDoS攻击帮凶的机器。每台机器的预防策略的不完善就有可能威胁到因特网赖以存在的基础。 ”9攻击目的l 拒绝服务攻击可谓害人不利己,它采取向受害者发送海量的超常数据包的形式,造成受害主机所在网段的拥塞,受害主机被数据包淹没,使得网络中断甚至主机崩溃。l 拒绝服务攻击的目的就是让被攻击目标无法正常工作,既是剥夺了合法用户享有网络用户的权利。比如
5、:l ( 1)用数据流淹没一个网络,从而阻止合法用户网络传输。l ( 2)破坏两个主机之间的连接,从而破坏用户网络服务。l ( 3)阻止用户得到网络服务。l ( 4)阻止某些服务提供给某些阻止和个人。l 从攻击的角度看来,目标可以很复杂因为和完全攻破一个系统相比,造成系统拒绝服务要更加容易些,因此,很多黑客新手都会以这种方法来攻击网站从而获得一种刺激和快感。但这种纯粹为了造成对方网络瘫痪而进行的拒绝服务是真正黑客高手所不屑一顾的。虽然真真的黑客很少单纯为了攻击而去攻击,但这并不是说他们就不使用拒绝服务攻击高手们所使用的拒绝服务通常是为了完成其他的攻击所必须做的,例如: 10攻击目的l ( 1)
6、在目标机上放了木马,需要让目标机重启。l ( 2)为了完成 IP欺骗攻击,而被冒充的主机却瘫痪了。l ( 3)在正式攻击前,需要使目标的日志记录系统无法正常工作。l 而在被攻击一方看来,当遭到攻击时,系统会出现一些异常现象,例如系统出显蓝屏、 CPU占用率达到 100%等。11二、攻击原理分析 DoS 、 DDoS、 DRDoSl 众所周知,现在网络互连是基于 TCP/IP协议的,在 TCP/IP协议在制定时并没有考虑安全因素,因此存在很多安全漏洞。这些漏洞包括如下一些: 源 IP地址可以任意改变、无限制的 SYN连接、采用错误的数据包(包头偏址或其他坏包)对IP栈的攻击、流地址及故意丢失认证
7、信息的数据、缺乏对信息源的有效认证,通常只依靠数据包的 IP地址,而 IP地址有可以伪造,当数据包在INTERNET上传输时,中间的路由器通常只关注数据包的目的地址,而数据包的源地址通常被忽略,这是导致服务拒绝攻击的一个关键因素。 12综述l 通常 ,DoS攻击的目标是你网络的 TCP/IP内层结构。这些攻击分为三种 :第一种是利用给定的 TCP/IP协议栈软件的弱点 ;第二种是利用 TCP/IP协议的漏洞 ;第三种是不断尝试的野蛮攻击 . 然而攻击的最多种类是利用 TCP/IP协议上的漏洞造成拒绝服务,例如曾经一度流行甚至于让网管闻之色变的 Land攻击,就是利用了 IP协议中源地址容易被欺
8、骗的弱点发动的攻击,使用欺骗性的 SYN(使用伪装的 IP地址向计算机主机发送网络请求)数据包 ,它带有一个伪装的 IP地址 ,使得它看起来像是来自你自己的网络。现在 ,SYN攻击就像是来自于你防火墙的内部 ,这使得问题更加严重。所以它并不是针对某一特殊系统,而是对凡是运行于 TCP/IP协议上的所有系统均可造成拒绝服务攻击,这也是这种攻击如此普遍的原因之一。常见的 Outlook, e-mail,蠕虫病毒 ,Melissa及其同类可以被看作是 DoS攻击的代理者 ,因为它们驱使 Outlook 程序的客户端向服务器不停的发出充满了蠕虫病毒的信件直到服务器在重压之下瘫痪 .。 131.DoSl
9、 所谓拒绝服务的攻击是指利用系统与程序本身的设计缺陷占用系统资源,从而造成系统的运行迟缓或瘫痪,它的英文名是: Denial of Service,可不要认为是十年前我们用的那种操作系统 Dos, Disk Operation System。l 从网络攻击的各种方法和所产生的破坏情况来看, DoS算是一种很简单但又很 有效的进攻方式。l 图 1DoS攻击的原理l 从图 1中我们可以 看出 DoS攻击的基本过程:首先攻击者向 服务器发送众多的带有虚假地址的请求,服务器发送回复信息后等待回传信息,由于地址是伪造的,所以服务器一直等不到回传的消息,分配给这次请求的资源就始终没有被释放。当服务器等待一
10、定的时间后,连接会因超时而被切断,攻击者会再度传送新的一批请求,在这种反复发送伪地址请求的情况下,服务器资源最终会被耗尽。14DoSl 通常 ,DoS攻击的目标是你网络的 TCP/IP内层结构。这些攻击分为三种 :第一种是利用给定的 TCP/IP协议栈软件的弱点 ;第二种是利用 TCP/IP协议的漏洞 ;第三种是不断尝试的野蛮攻击 . 然而攻击的最多种类是利用 TCP/IP协议上的漏洞造成拒绝服务,例如曾经一度流行甚至于让网管闻之色变的 Land攻击,就是利用了 IP协议中源地址容易被欺骗的弱点发动的攻击,使用欺骗性的 SYN(使用伪装的 IP地址向计算机主机发送网络请求)数据包 ,它带有一个
11、伪装的 IP地址 ,使得它看起来像是来自你自己的网络。现在,SYN攻击就像是来自于你防火墙的内部 ,这使得问题更加严重。所以它并不是针对某一特殊系统,而是对凡是运行于 TCP/IP协议上的所有系统均可造成拒绝服务攻击,这也是这种攻击如此普遍的原因之一。常见的 Outlook, e-mail,蠕虫病毒 ,Melissa及其同类可以被看作是 DoS攻击的代理者 ,因为它们驱使 Outlook 程序的客户端向服务器不停的发出充满了蠕虫病毒的信件直到服务器在重压之下瘫痪 .。 152.DDoSl DDoS(分布式拒绝服务),它的英文全称为 Distributed Denial of Service,它
12、是一种基于 DoS的特殊形式的拒绝服务攻击 ,或者说是一种它的变种和增强版,具体就是一种分布、协作的大规模攻击方式,这种攻击主要瞄准比较大的站点,像商业公司,搜索引擎和政府部门的站点。从图 1我们可以看出 DoS攻击只要一台单机和一个 modem就可实现。l 而要理解 DDoS的原理,首先应该搞清楚分布式的意思。 “分布 ”是指把较大的计算量或工作量有多个处理器或多个接点共同协作完成。所以不难理解 DDoS攻击就是攻击者利用一批受控制的机器(主控端和代理端)向同一台机器(受害者)发起攻击,每个攻击端也是一台已被入侵并运行特定程序的系统主机,攻击端的程序由主控端的攻击程序来控制。当攻击者向主控端
13、发出攻击命令后,在由攻击端向被攻击目标送出发出拒绝服务攻击的数据包,这样来势迅猛的攻击令人难以防备,因此具有较大的破坏性。 16客户端感染途径客户端计算机Windows 9xNT Wks.经由软盘片、光盘等途径感染 透过网络从其它计算机感染 从文件服务器感染透过电子邮件、公用数据夹感染 透过 SMTP邮件、 HTTP网页Script、 Web Mail、 HTTP下载、 FTP下载途径感染 17InternetDDoS攻击原理图HACKER Create 感染 , 潜伏 , 扩散 攻击 破坏 拒绝服务 利用系统后门感染RandomlyAttack RandomlyAttack Randomly
14、Attack DDOSDDOSDDOSDDOSDDOSDDOSDDOS Create 感染 潜伏 扩散 攻击破坏 拒绝服务 利用系统后门感染Activate 100, 300 or 600 threads to attack random IP address servers没用补丁 web system已补丁 web system18DDoSl 从图 2可以看出, DDoS攻击分为 3层:攻击者、主控端、代理端,三者在攻击中扮演着不同的角色。l 为了提高分布式拒绝服务攻击的成功率 ,攻击者一般需要先控制大量的主机来作为主控端和攻击端。这些主机一般需要是UNIX主机。但让,这些攻击工具也能够移
15、植到其他平台上运行,但是要麻烦一些了。这些工具入侵主机和安装程序的过程都是自动化的。这个过程可分为以下几个步骤:l ( 1)入侵并控制大量主机从而获取控制权。l ( 2)在这些被入侵的主机中安装 DDoS攻击程序。l ( 3)利用这些被控制的主机对攻击目标发起 DDo S攻击。 l 它的精髓在于用许多台计算机同时向目标网站发送大量信息;一个黑客只有 1台计算机,即使他夜以继日的黑别人的网站,一年也只能控制 1000台计算机,要命令这些计算机同时向目标网站进攻,不可能手动完成。因此如果要实施 DDOS,首先要做一个软件出来,这个软件必须能够像病毒一样能够传染,在网上扩散;还必须能够像病毒一样潜伏
16、,不让别人发现;更重要的是它必须能接收你发布的指令,在某一时刻向某个网站发动 19DDoSl攻击。所以对于 DDOS来说,战争早在几个月之前就已经静悄悄地打响,默默地蔓延。等到攻击的一刻,就是它落幕的一刻了。l 由于整个过程是自动化的,攻击者能在5秒中之内入侵一台主机并安装攻击工具。可想而知,在短短的一小时内就可以入侵数千台主机。而且由于攻击者在幕后操纵,所以在攻击时不会受到监控系统的跟踪,身份不容易被发现。20文件服务器感染途径文件服务器W2K ServerNT ServerNetWareUNIX经由软盘片、光盘等途径感染 从客户端电脑感染从其它文件服务器感染21服务器感染途径群件服务器Ex
17、changeLotus Notes 从客户端计算机感染透过外来文件感染透过 Replication等方式从其它群件服务器感染223.DRDoSl DRDoS是 Distributed Reflection Denial of Service Attack 的缩写直意为分布式反射拒绝服务它是在 2002年 1月 11日第一次现身更确切地说是第一次被我们所重视。我们通常以前遭受 UDP和 ICMP洪水攻击,这些攻击其实都可以由被攻击者入侵的主机、 zombie工具及 windows系统简单的实现,但这次 (上文新闻中提到的受害公司)受的攻击有所不同。由攻击的数据包显示这次是被 SYN/ACK数据攻
18、击,而通常只是 SYN包。但这些洪水般的数据包几乎都是合法的 SYN/ACK连接回应包。换句话说,就是一个恶意的入侵者在其他的 Internet角落里利用带有连接请求的 SYN数据包对网络路由器进行洪水攻击,这些数据包带有虚假的 IP地址而这些地址就是。这样一来路由器就认为这些 SYN是从 发送出来的,所以他们便对他们发送 SYN/ACK数据包作为 3次握手过程的第二次握手。23DRDoS恶意的数据包其实就是那些被利用的主机反射到受害者主机上。这些被反射 的数据包返回到受害者主机 上后就形成了洪水攻击。攻击 中最经典最核心的就是 “R” (reflection)了,也就是说我们 的任何一个合法
19、的 TCP连接 请求都会得到返回数据包 ( SYN/ACK),而攻击的办法就是如何将这个返回包直接返回到被攻击主机上。利用数据包的 IP欺骗方法,来欺骗那些被利用的 TCP主机认为 TCP请求连接是从被攻击主机上发出来的,这样就可以导致 DRDoS。24三、攻击方法介绍1DoS攻击方法l 1.TCP-SYN-FLOOD攻击l 这种攻击中,攻击这发送大量的半连接,且连接的源地址是伪造的,造成服务器过载而不能提供服务。l 我们知道在正常的 TCP/IP连接中,用户想访问的网站服务器发出一条连接请求( SYN),服务器接受请求后,确认该请求,并发出确认信息( ACK) ,从而通过这样三次交流,通常称
20、为为三次握手,完成一次完整的 TCP连接,以后用户就可以和网站进行交流了。而在 TCP-SYN-FLOOD攻击中,攻击者向服务器发出大量的连接请求,使其满负荷,并且所有请求的返回地址都是伪造的,当服务器企图将确认信息返回给用户时它将无法找到这些用户,这种情况下服务器只好等待,并不断给该用户发请求确认信息,直到该信息超过时才能关闭这种办连接。当服务器关闭连接后,攻击者又发送一批虚假请求,以上过程又重复发生,指导服务器因过载而拒绝服务。 25Dos攻击方法l 2.ICMP广播风暴攻击l 在这种攻击中,攻击者通过发送大量的目的地址指向广播地址且源地址为受害者主机地址的 ICMP ECHO请求包,从而
21、引起大量的广播包发向受害者主机,是受害者主机被数据包淹没,引起网络拥塞。l ICMP 是在网络中用来交流网络状态和差错控制包括网络拥塞及其它网络传输问题的协议。 ICMP还可以用来确定某一主机是否在线。 ICMP是网络中进行网络故障诊断的有效工具。在TCP/IP网络中,网络中主机的数据包可以发给任意的主机或广播整个网络。如果数据包的目的地址是一局域网的广播地址,则局域网中的每一主机都可以收到。在 ICMP 广播攻击过程中,攻击者通过发送大量的伪造 ICMP ECHO 请求包,通常目的地址指向一个高速局域网的广播地址,如果该局域网没有禁止这种 ICMP ECHO请求包,则该局域网上的主机就回复这
22、种请求包,从而引起受害主机的网络拥塞,攻击者制造了许多工具,用来侵入很多网络同时发起这种攻击,造成受害主机被汹涌而至的数据包淹没。 26DoS攻击方法l 3.“流( stream) ”攻击l 流攻击发送带有 ACK标记集或同时带有 SYN和 ACK标记集的 TCP包。因为他们并不是连接的组成部分,因此他们将 “困扰”目标计算机并且需要操作系统花一定的时间去处理 。如果这种记忆攻击以分布式方式进行,那么攻击者只需要较少的主机就能使目标主机计算机超载。l 4.多点广播攻击l 目前还未实现的特征是多点传送地址( multicast addresses)。多点传送地址由路由器转发,它可以将一个数据包倍
23、增成多个数据包。其基本概念是从一个多点传送源(224.xxx)发送数据包,目标计算机将给该多点传送源回送一条错误信息,并成倍的占用网络带宽。l 5.UDP服务攻击l 由于 UDP不提供流量控制, UDP按发送方的发送的速率发送数据,不管接收方的缓冲区是否装的下,因此提供 UDP服务的主机已遭受来自 UDP数据风暴的攻击,攻击者向受害者主机发送海量的数据,使得受害主机被淹没。 27DoS攻击方法l 6.攻击入侵监测系统l 故意发送特殊的字符串,是入侵监测系统( IDS, Intrusion Detection Systems)将他们误认为是非法登陆,由此造成误报,最终使 IDS过载或崩溃。l 7
24、.Smurf攻击l Smurf攻击的威胁性在于,它是一种具有放大效果的攻击方式,这种放大效果的原理是这样的:攻击者冒充被攻击者向某个网络上的广播设备发送请求,然后广播设备将请求转发给该网络上的大量设备,于是所有的这些设备都向被攻击者进行回应,这样就达到了使用很小的代价来进行大量攻击的目的。l 例如,攻击者冒充被攻击者的 IP,使用 ping来对一个 C类网络的广播地址进行发送 ICMP包,这样,该网络上的 254台主机都会对被攻击者的 IP发送 ICMP回应包,那么,攻击者每发一个包就会给被攻击者带来 254个包的攻击效果。当然,普通的ping命令是不允许对广播地址发包的,但是攻击者完全可以使
25、用编程的方法来达到这种效果。l 28DoS攻击方法l 不仅是 ICMP包可以用来进行这种攻击,现在还有一种称为Fraggle的攻击工具利用 UDP包对某一网络的广播地址发送对号端口( echo)包的攻击方式,这样,开放 7号端口的主机会回应 UDP包,而没有开放号端口的主机也会发送 ICMP不可达消息包,同样可以达到很好的效果。l 8.Land攻击l Land也是因特网上最常见的拒绝服务国际类型之一,它是由著名黑客组织 rootshell发现的,原理很简单:利用向目标机发送大量的源地址和目标地址相同的包,造成目标机解析Land包时占用大量的系统资源,从而使网络功能完全瘫痪。l 由于这种攻击是利用 TCP/IP协议本身的漏洞,所以几乎所有连在因特网上的系统都会受到它的影响,尤其是对路由器进行的 Land攻击威胁更大,会造成整个网络的瘫痪。29DoS攻击方法l 9.死亡之 Pingl “死亡之 Ping”攻击是通过向目标端口发送大量的超大尺寸的 ICMP包来实现的。当目标收到这些ICMP碎片包后,会在缓冲区里重新组合它们,由于这些包的尺寸实在太大以致于造成缓冲区溢出,从而导致系统崩溃。l 这种攻击实现起来非常简单,不需要任何其他的程序,只要在 Windows9x、 Windows NT或Linux的命令行上输入如下命令即可完成攻击:l ping 165527 s 1 30