关于DoS拒绝服务攻击的分析
(1内蒙古自治区教学仪器设备供应中心;2内蒙古农业大学,内蒙古 呼 和浩特 010000)
摘 要:文章分析了拒绝服务攻击的特性,指出掌握其原 理及主要攻击方式有助于多层网络安全防范体系。
关键词:服务攻击;TCP/IP协议;ICMP协议;SYN标志
中图分类号:TP309 文献标识码:A 文章编号:1007—6921(2009)03—0320—02
当用户在浏览器的地址栏里键入某个网站的URL地址的时候,是在向这个网站的后台服务 器发送一个浏览网页的请求,但服务器只能同时处理一定数量的请求,因此如果一个攻击者 恶意向服务器发出了超出其负荷的请求,该网站便不能给合法的用户提供正常的服务,这就 形成了简单的拒绝服务。DoS是Denial of serive 拒绝服务的缩写,是一种对网络服务有效 性的破坏,攻击者利用网络协议实现的缺陷,恶意发送大量带有合理服务请求的攻击数据包 ,以此占用并耗尽被攻击对象的资源(包括:网络带宽、文件系统空间、开放的进程及允许 的连接等)达到使目标计算机或网络无法提供正常资源访问、系统服务停止响应甚至崩溃的 目的。单一的DoS攻击采用一对一的攻击方式,当被攻击服务器的运算速度、内存、带宽等 性能指标不高时攻击效果是明显的,但随着计算机的处理能力迅速增长,内存加大以及千 兆级别的网络支持都使得网站对恶意攻击包的“消化能力”大大加强,传统DoS攻击失去了 作用。
为了获取足以发起攻击的高带宽资源支持,DoS攻击者开发了一种基于DoS的采取分布、协作 进攻的大规模拒绝服务攻击,攻击者利用一批受控制的傀儡机集合大量的网络带宽,同时对 一个目标发动攻击,在带宽相对有限的情况下,被攻击主机很容易丧失正常服务功能,这就 是DDoS (Distributed Denial of Service)分布式拒绝服务攻击。它利用超出被攻击目标 处理能力数倍的海量数据包消耗可用系统、带宽资源、致使网络服务瘫痪。由于DDoS破坏性 大,难以防范,也难以追查攻击源的特点,被认为是当前最有效的主流DoS攻击技术。一个 比较完善的DDoS攻击体系分成四个部分,黑客、控制傀儡机、攻击傀儡机、受害服务器。控 制傀儡机、攻击傀儡机分别用做控制和实际发起攻击。对受害服务器来说,DDoS的实际攻击 包是从攻击傀儡机上发出的,控制机只发布命令而不参与实际的攻击同时负责掩护幕后的黑 客。黑客对两种傀儡机黑客有控制权,并把相应的DDoS程序上传到这些平台上,这些程序与 正常的程序一样运行并等待来自黑客的指令。在平时,傀儡机并没有什么异常,只是一旦黑 客连接到它们进行控制,并发出指令的时候,傀儡机就成为害人者去发起攻击了。同时由于 傀儡机的掩护导致真正发起DDoS攻击的黑客难以追查。
无
论是DoS攻击还是DDo S攻击,虽然具体的实施方式千变万化,但其目的都是使受害主 机或网络无法及时回应或者接收、处理外界的请求,使被攻击主机系统瘫痪、停止服务。具 体表现方式有以下几种:
1 发送大量无用数据,造成被攻击主机的网络拥塞、资源耗尽,使被攻击主机无法 正常和外界通信
网络中的数据是以一定的速度和大小传输着,当传输的数据占满 网络带宽的 时候网站响应速度就会变慢,犹如公路塞车一样。攻击者用工具不停向目标发送一堆数据包 ,它们通常体积很小,所以速度很快,这些无用数据包迅速塞满网络带宽,于是网络传输就 慢下来,在被攻击目标网络带宽相对有限的情况下便形成了堵塞。在这种攻击模式里,ICMP 报文是最佳选择,因为它没有流量控制,在网络中可以横冲直撞。早期的ICMP攻击只是单纯 的堵路而已,现在利用特殊报文(例如ICMP的时间戳洪水)已经能达到让CPU满负荷的效果 。ICMP全称Internet Control Message Protocol(网际控制信息协议),是TCP/IP协议集中 的一个子协议,属于网络层协议,在Internet上用于错误处理和传递控制信息。这里的控制消 息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。比如我们经常使用的 用于检查网络通不通的Ping命令,“Ping”的过程实际上就是ICMP协议工作的过程。还有其 他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。要使用该协议,可以进行相 应的ICMP设置,比如在Windows XP中,首先打开“网络连接”,右键单击启用Internet连接 防火墙的“网络连接”,选择“属性”打开属性窗口。接着,选择“高级”选项卡,单击右 下角“设置”按钮。然后,在高级设置窗口中选择“ICMP”选项卡,在其中就可以进行相应 的设置,包括允许传入的回显请求等。ICMP协议本身的特点决定了它非常容易被用于攻击网 络上的路由器和主机。比如,可以利用许多操作系统的TCP/IP协议栈对ICMP数据包最大尺寸 不超过64KB的规定,向主机发起“Ping of Death”(死亡之Ping)攻击。其攻击的原理是: 故意产生畸形的测试Ping(Packet Internet Groper)包,声称自己的尺寸超过 ICMP上限, 也就是加载的尺寸超过 64KB上限,使未采取保护措施的网络系统出现内存分配错误,引起 计算机中TCP/IP栈瘫痪并停止响应TCP/IP请求。
2 利用被攻击主机传输协议或所提供服务程序的
本身缺陷,反复高频的发出攻击性 的服务请求或畸形的攻击数据,引发系统错误的分配大量系统资源,无法及时处理其他正常 的请求使主机处于挂起状态甚至死机要明白DoS攻击的原理,先要了解网络传输 协议的特点。TCP (Transfer Control Protocol 传输控制协议),主要用于在主机间建立一个虚拟连接,以 实现高可靠性的端到端的数据包交换。 我们常见到的TCP/IP协议中 IP(Internet Protocol 网间协议)协议可以进行IP数据包的分割和组装,但是通过IP协议并不能清楚地了解到数据 包是否顺利地发送给目标计算机。而使用TCP协议就不同了,在该协议传输模式中在将数据 包成功发送给目标计算机后,TCP会要求发送一个确认;如果在某个时限内没有收到确认, 那么TCP将重新发送数据包。发送和接收方的TCP传输以数据段的形式交换数据,一个数据段 包括一个固定的20字节数据头,加上可选部分,后面再跟上数据。数据流的传输最重要是TC P中数据头的内容,客户端和服务端的服务响应、两端的信息交流和交换都是根据TCP数据头 中内容实施的,至于发送的数据,只是数据头附带的。
下面是TCP数据段头格式。
Source Port和 Destination Port :是本地端口和目标端口
Sequence Number 和 Acknowledgment Number :是顺序号和确认号,确认号是希望接收的 字节号。
Data offset :表明TCP头包含多少个32位字,用来确定头的长度,因为头中可选字段长度是 不定的。
Reserved : 两个计算机数据交流的信息标志。接收和发送断根据这些标志来确定信息流的 种类。
URG:(Urgent Pointer field significant)紧急指针。用到的时候值为1,用来处理避免 TCP数据流中断 。
ACK:(Acknowledgment field significant)置1时表示确认号(Acknowledgment Number )为合法,为0的时候表示数据段不包含确认信息,确认号被忽略。
PSH:(Push Function),PUSH标志的数据,置1时请求的数据段在接收方得到后就可直接 送到应用程序,而不必等到缓冲区满时才传送。
RST:(Reset the connection)用于复位因某种原因引起出现的错误连接,也用来拒绝非 法数据和请求。如果接收到RST位的时候,通常会发生某些错误。
SYN: (Synchronize sequence numbers)用来建立连接,在连接请求中,SYN=1,ACK=0, 连接响应时,SYN=1,ACK=1。即,SYN和ACK来区分 Connection Request和Connection Acce pted。
FIN:(No more data from sender)用来释放连接,表明发送方已经没有数据发送了。
每当我们进行一次标准的TCP连接(如WWW浏览,下载文件等)从输入一个网址到看到网页, 机器在非常短的时间内做了三件重要的事情:①机器发送一个带有“ SYN”(同步)标志的数 据包给服务器,请求连接;②服务器返回一个带有SYN标志和ACK(确认)标志数据包给机器; ③机器也返回一个ACK确认标志数据包给服务器,数据传输建立。
这3步就叫做“三次握手”。所以服务器每次接收到SYN请求并不会立刻同客户端建立连接 ,而是为连接请求分配内存空间,建立会话,并放到一个等待队列中。这样DoS攻击就会利 用第二步,当服务器返回数据后并不走开,而是等待对方再次返回确认,问题就出在这里, 如果一台计算机发送SYN数据包后由于意外断开了网络,服务器返回的ACK就得不到回应,而 规范标准规定它必须等待,偶尔意外的一两台机器不回答并不影响大局,可是对于恶意攻击 者来说,他们使用工具大量产生这种导致服务器等待的虚假IP地址的SYN数据包,由于IP地 址代表的机器根本不存在,自然不会有任何回应,所以等待的数据包一直排在服务器队列中 ,如果等待的队列被占满,那么,服务器就不再为新的连接分配任何资源,直接丢弃新的请 求,于是服务器发生拒绝服务。这就是最常见的SYN拒绝服务模式,利用的攻击工具也很多 ,例如流行的Lion SYN Flood、xdos、独裁者等。
同样利用 TCP 三次握手规则发起攻击的还有DRDoS(Distributed Reflection Denial of S ervie Attack,分布式反射拒绝服务攻击),攻击借用了正常的服务器来做武器,用特殊发 包工具将伪造的、冒充源地址(受害者地址) 的 SYN 连接请求包,发送给大量的被欺骗的服 务器, 这些服务器群并不知道这是骗局,依然会根据TCP规则向源 IP(受害者地址) 发出 大量的 SYN +ACK 或 RST 包来响应此请求。结果受骗服务器正常的回应变成了参与攻击的 数据流, 并最终在受害者处汇集, 使被攻击服务器难以隔离攻击数据流, 并且更难找到攻击 的来源。与以往DDoS 攻击不同的是, DRDoS利用反射技术并不需要在实际攻击之前占领大量 傀儡机,收到伪造的请求数据报后产生回应数据报的主机称为反射服务器, 这样的机制让攻 击者可以利用不同网络结构的服务器作为反射服务器以发起攻击。当前最具威胁的反射服务 器包括以下三类:DNS 服务器、Gnutella 服务器、基于 TCP/IP 的服务器( 特别是Web 服 务器)。
伴随着互联网技术的快速发展,DoS攻击也将会出现更多地针对 TCP/IP 协议缺陷,进行如 半连接 SYN 攻击和 ACK 攻击,采用更先进的分布式技术增加攻击源,同时利用诸如IP 欺 骗技术或者利用木马程序使得攻击隐蔽性更好以达到难以追查的目的,DoS 攻击工具也将更 易操作, 功能将更完善, 破坏性更大, 这样怀有恶意的非黑客人员也能够使用以进行破坏。
在DoS攻击的预防方面,目前最根本的还是提高TCP/IP 协议的质量,延长缓冲队列的长度以 缓解系统资源的消耗,还有减少处理延时以更快的速度抛弃队列中等待的连接,阻止其任意 堆满队列。对抗DoS攻击另一要素就是增强自身的防御能力。使用更大的带宽及提升相关设 备的性能是面对DoS攻击最直接的处理方法,但在资源有限的前提下需要把握适度的原则, 对系统的透彻了解则更为重要,必须清楚地知道系统对外开放了哪些服务,哪些访问是被禁 止的,定期扫描网络节点清查可能存在的安全漏洞,及时更新系统补丁关闭不必要的服务。 同时对防火墙进行正确设置, 启用防火墙的防 DoS/DDoS 属性,优化路由和网络结构并对路 由器进行正确设置,防止 SYN Flood 攻击设置 TCP 侦听功能等,依次建立起多层网络安全 防范体系。
相关热词搜索: 拒绝服务 攻击 分析 DoS热门文章:
- 2024研究思考:探索开展村(...2023-12-26
- 2024年心得感悟:强担当抓落...2023-12-26
- 主题教育心得:新时代思想政...2023-12-26
- 在共青团第x次代表大会开幕式...2023-12-26
- 2024年度常委宣传部长在主题...2023-12-26
- 2024年xx队伍安全管理集中排...2023-12-25
- 2024年党课:习近平大历史观2023-12-25
- 本科毕业自我鉴定范文通用版...2023-12-05
- 党员代表在党支部成立大会上...2023-12-05
- 党委领导班子民主生活会剖析...2023-12-05
相关文章:
- 个人政治生态分析报告最新2021-08-18
- 党风廉政建设形势分析报告12篇2021-08-19
- 《2020中国民营企业500强调研...2021-08-27
- 大学生心理健康自我成长分析报告2021-08-27
- 公司年上半年经济运行分析报告2021-08-27
- 人力资源部招聘分析报告2021-08-27
- 市高中教育教学分析会发言稿2021-08-27
- 自我成长分析报告2021-08-27
- 学校课程达成度分析报告范文2021-08-27
- 电子工程技术发展趋势分析2021-08-27