赞
踩
目录
关于tcp协议的参考链接:
拒绝服务攻击(英文为Denial of Service)通常简称为DOS攻击,其目的是使目标计算机或服务器等IT基础设施无法正常提供服务,从网络安全的角度来说,DOS攻击是一种针对目标网络服务的攻击,最常见的攻击方式就是发送大量恶意的数据流量使目标服务器的网络带宽资源耗尽,无法对用户提供正常的访问服务。
拒绝服务攻击的方式多种多样,针对目标网络服务的攻击也只是拒绝服务攻击里的一小部分,TCP SYN Flooding攻击是一种针对目标网络服务的攻击,跟ARP欺骗攻击有些类似,它利用了传输层TCP协议在设计上的缺陷。
客户端和服务器正常通信时的TCP三次握手过程中,客户端会首先发送一个SYN报文,服务器收到SYN报文会回复一个SYN+ACK报文,客户端收到SYN+ACK报文会回复一个ACK报文,至此双方建立TCP连接完成。
TCP SYN Flooding攻击过程利用了TCP协议三次握手来实现,关键就在于服务端发送的SYN+ACK报文。服务器收到客户端发送的SYN报文会回复一个SYN+ACK报文,并等待客户端回复一个ACK报文,表示TCP连接进入了半打开状态并会设置一个计时器,在这期间服务端需要分配一定的系统资源来维护TCP连接。
如果因为网络延迟等问题服务器始终无法收到最后的ACK报文,计时器会超时并重传SYN+ACK报文直到TCP规定的重传次数才会释放这个TCP连接。
当攻击者伪造大量恶意的IP向目标服务器发送TCP请求时,在计时器超时之前,大量系统资源被假冒的客户端占用而没有利用,最终导致服务端资源被耗尽,忙于处理来自攻击者伪造的TCP连接请求,而无暇顾及来自真正的客户端的TCP连接请求。
本次TCP SYN Flooding安全测试的环境为:一个是kali linux,另一个是windows。将采用kali linux中的hping3工具进行TCP SYN Flooding安全测试,使用wireshark抓包工具进行抓包分析。
Hping3工具中-S选项表示采用SYN半连接方法,--flood 尽可能快的发送数据包,--rand-source 表示伪造IP地址,-p用于指定目标主机的端口号
开启wireshark进行抓包分析,点击统计-->流量图,使用wireshark的流量图功能生成TCP流量图标进行分析:
从上图中可以看到有大量伪造的IP地址向192.168.111.140发送了TCP SYN报文,因此我们可以怀疑这应该是TCP SYN Flooding攻击。
点击wireshark工具的统计-->端点,进一步分析:
从wireshark工具中看到hping3工具发起TCP SYN Flooding攻击总共发了15万多个TCP报文,从Address字段中可以得出分别是不同IP地址发送的,且每个ip地址只发送了一个TCP报文(即SYN报文),由此我们可以确定这些不正常的TCP数据包是恶意攻击者伪造的。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。