4-wireshark网络安全分析——TCP SYN Flooding攻击

目录

1. 拒绝服务攻击

2. TCP SYN Flooding攻击

3. TCP SYN Flooding安全测试


 

关于tcp协议的参考链接:

16-tcp首部分析一

17-tcp首部分析二

18-tcp数据报文封装格式

19-tcp连接建立

 

1. 拒绝服务攻击

拒绝服务攻击(英文为Denial of Service通常简称为DOS攻击,其目的是使目标计算机或服务器等IT基础设施无法正常提供服务,从网络安全的角度来说,DOS攻击是一种针对目标网络服务的攻击,最常见的攻击方式就是发送大量恶意的数据流量使目标服务器的网络带宽资源耗尽,无法对用户提供正常的访问服务。

 

 

2. TCP SYN Flooding攻击

拒绝服务攻击的方式多种多样,针对目标网络服务的攻击也只是拒绝服务攻击里的一小部分,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连接请求。

 

3. TCP SYN Flooding安全测试

本次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数据包是恶意攻击者伪造的。

 

原创文章 317 获赞 280 访问量 24万+

猜你喜欢

转载自blog.csdn.net/qq_35733751/article/details/104888324