洪泛攻击

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验目的

1.理解带宽攻击原理

2.理解资源消耗攻击原理

3.掌握洪泛攻击网络行为特征

学时分配

1学时

实验人数

每组2人

系统环境

Windows

网络环境

企业网络结构

实验工具

Nmap

洪泛工具

网络协议分析器

实验类型

验证型

实验原理

一.SYN Flood攻击

Dos(Denial of Service)拒绝服务攻击是指在特定攻击发生后,被攻击的对象不能及时提供应有的服务。从广义上说,任何导致服务器不能正常提供服务的攻击都是拒绝服务攻击。

SYN Flood是当前最流行的拒绝服务攻击之一,这是一种利用TCP协议缺陷,发送大量的伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。

TCP协议是基于连接的,也就是说,为了在服务端和客户端之间传送TCP数据,必须先建立一个虚拟电路,也就是TCP连接。

建立TCP连接的标准过程是这样的:

第一步,请求端(客户端)发送一个包含SYN标志的TCP报文,SYN即同步(Synchronize),同步报文会指明客户端使用的端口以及TCP连接的初始序号;

第二步,服务器在收到客户端的SYN报文后,将返回一个SYN+ACK的报文,表示客户端的请求被接受,同时TCP序号被加1,ACK即确认(Acknowledgement);

第三步,客户端也返回一个确认报文ACK给服务器端,同样TCP序列号被加1,到此一个TCP

连接完成。

以上的连接过程在TCP协议中被称为三次握手。

问题就出在TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN超时,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源。实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃——即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况我们称作:服务器端受到了SYN Flood攻击(SYN洪水攻击)。二.ICMP Flood攻击

正常情况下,为了对网络进行诊断,一些诊断程序,比如Ping等,会发出ICMP请求报文(ICMP Request),计算机接收到ICMP请求后,会回应一个ICMP应答报文。而这个过程是需要CPU处理的,有的情况下还可能消耗掉大量的资源,比如处理分片的时候。这样如果攻击者向目标计算机发送大量的ICMP Request报文(产生ICMP洪水),则目标计算机会忙于处理这些请求报文,而无法继续处理其它的网络数据报文,这也是一种拒绝服务攻击(DOS)。

对于诸如此类洪泛攻击,可以利用设置防火墙和关闭不必要的端口来加以防范。设置防火墙可以直接拒绝接受非法的或不可信任的用户的连接,而关闭不必要的端口可以减少半连接的可能性,从而有效的抑制洪泛攻击所带来的危害。下面给出一些具体实施办法:

监控计算资源的使用。例如建立资源分配模型图,统计敏感的计算资源使用情况。

修补漏洞。例如给操作系统或应用软件包升级。

关掉不必要的TCP/IP服务。关掉系统中不需要的服务,以防止攻击者利用。过滤网络异常包。例如通过防火墙配置阻断来自Internet的恶意请求。

实验步骤

具体操作如下:依次单击“开始”|“程序”|“管理工具”|“性能”。在监视视图区点击鼠标右键,选择“属性”打开“系统监视器属性”窗口,在“数据”属性页中将“计数器”列表框中的条目删除;单击“添加”按钮,打开“添加计数器”对话框,在“性能对象”中选择“TCPv4”,在“从列表选择计数器”中选中“Segments Received/sec”,单击“添加”按钮,然后“关闭”添加计数器对话框;单击“系统监视器属性”对话框中的“确定”按钮,使策略生效。

(2)靶机打开“任务管理器”,单击“性能”选项卡,记录内存的使用状况。

3.洪水攻击

(1)攻击者单击实验平台工具栏中的“Nmap”按钮,进入nmap工作目录。在控制台中输入命令:nmap -v –sS -T5 靶机IP地址,对靶机进行端口扫描,根据nmap对靶机的扫描结果选择一个开放的TCP端口作为洪水攻击的端口。

(2)单击工具栏“洪泛工具”按钮,启动洪泛工具,在视图中需要输入以下信息:

目的IP:靶机IP地址。

目标端口:在步骤1中扫描所得的靶机开放端口(建议80/tcp端口)。

伪源IP:任意。

单击“发洪水”按钮,对靶机进行SYN洪水攻击。

(3)攻击者对靶机实施洪水攻击后,靶机观察“性能”监控程序中图形变化,并通过“任务管理器”性能页签观察内存的使用状况,比较攻击前后系统性能变化情况。

(4)攻击者停止洪水发送,并停止协议分析器捕获,分析攻击者与靶机间的TCP会话数据。

(5)通过对协议分析器所捕获到的数据包进行分析,说明在攻击者对靶机开放的TCP端口进行洪泛攻击时,靶机为什么会消耗大量的系统资源:。

二.ICMP洪水攻击

(1)攻击者启动协议分析器,监听任意源与靶机间的ICMP会话数据,协议分析器设置方法参看步骤一。

(2)靶机启动“性能监视器”,监视在遭受到洪水攻击时本机CPU、内存消耗情况。具体操作参看步骤一。需要说明的是监视的性能对象应为ICMP,并且计数单位应为“Messages Received/sec”。

(3)攻击者对靶机进行洪水攻击,进入洪泛工具“ICMP洪水攻击”视图,填写相关信息,并发ICMP洪水。

(4)靶机观察“性能”监控程序中图形变化,比较洪水攻击前后系统性能变化情况。

(5)攻击者停止洪水发送,并停止协议分析器捕获,观察并分析ICMP会话过程。

相关文档
最新文档