一篇文章让你理解TCP协议,搭建TCP flood攻击实验以及了解其防御原理

目录

1、知识点回顾

 2、TCP协议

 3、TCP字段含义

4、TCP的三次握手过程 

5、释放连接的四次挥手过程

6、握手挥手七次总过程 

7、TCP的半关闭状态

8、TCP的半连接状态

 9、常见的TCP端口号

10、TCP flood攻击实验

11、防御原理


 

 

1、知识点回顾

efca7d28725a422ab75d2f99029e6bfd.png

 2、TCP协议

d6c95a243dcb46df851ad8501d38b111.png

 3、TCP字段含义

0d736f632d844bd79c0d3204330ce965.png

 8c51566d6f78444697decef04b297949.png

4、TCP的三次握手过程 

5db31679f9404cf48706fb6396fde3f4.png

 

b4694c0fe5c44898805bfe82e68b9118.png

5、释放连接的四次挥手过程

8017ff6bda1c43bcacde4de388f73932.png

6、握手挥手七次总过程 

f27346c56e5f4195830c3075e0447d75.png

7、TCP的半关闭状态

TCP提供了连接的一端在结束它的发送后还能接收来自另一端数据的能力。这就是所谓
的半关闭。如图当四次挥手处于被动关闭的一方在收到主动关闭方的FIN时,进入CLOSE_WAIT状态,主动方收到对方的同意ACK后就进入了半关闭状态。此时,左方还可以收到右方所发送过来的数据。当右方已经没有数据可发时向对方发送FIN,等对方回复确认ACK后,这个TCP的链接便彻底关闭了。

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80Mzk2ODQ0Nw==,size_16,color_FFFFFF,t_70

8、TCP的半连接状态

客户端向服务端发起连接请求,服务器第一次收到客户端的SYN之后,就会处于SYN_RCVD状态,此时双方还没有完全建立其连接,服务器会把此种状态下请求连接放到一个队列里,我们将这种队列称之为半连接队列。

0dbb21a637484d13a903b63409c45d92.png

 9、常见的TCP端口号

189d3f991f904a10a5b599b2e8cd4fc1.png

DNS服务器同步时传输需要用到TCP协议

 6e5935255afc4af196c4a9ddbd7acd44.png

10、TCP flood攻击实验

 

主机192.168.101.199192.168.101.79
kali192.168.109.129192.168.109.2
server192.168.109.130192.168.109.2

windows server搭建服务器 

ed8e5aead29a429abf42b9d1c17207d2.png

ac6e4b73cce8412785c6af92f69da2d3.png

 此时可以通过物理机访问该web

c9e1123f577b41f58a183ebe3a95d52d.png

 由于是持续性链接,所以目前没有挥手过程 4c27975118734a748092c3a344474957.png

 

检验三次握手的过程

12cb872135d24d03901e88089401f321.png

27a2b5eb90524d0e93263881a2f32f08.png 

bab857625f744f05b1306bb2c1923a4b.png 

 

 关闭网页,抓取四次挥手过程

70700de22d054ae9888638c76d4f5a41.png

 

kali命令

hping3 -c 数据包次数 -d 数据包大小 -S(只发送syn请求)-w(窗口大小)-p 80(端口) --flood --rand-source 自己的ip

 

此时追踪任意一次攻击的TCP流,前两次半连接状态后,第三次路由器回复目标不可达,然后服务器按照时间间隔进行两次重传请求,最后申请一次重新建立连接。重连不成功,交互停止

811a2e3c0dd744c3a4149290fb54c67f.png

 

此时我们发现服务器仍然可以访问(攻击的流量太小),我们可以尝试多开几个窗口同时hping3看看(如果电脑性能够好)

e64d890e1c1e41b0997c383410816a8e.png

 

11、防御原理

方法一:先和TCP代理(高防火墙的代理)建立三次握手,然后由代理转发到服务器

592550e76ef742dd92c9b94e564b3eec.png

方法二:建立TCP的源探测代理

47226e00fb974f3c84ad3162e792839a.png

 

 

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

coleak

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值