什么是SYN泛洪攻击(SYN flood attack)
首先回顾一下TCP三次握手机制:
- 第一步:客户端向服务端发送SYN
- 第二步:服务端回应SYN与ACK
- 第三步:客户端回应ACK
第二步过后,服务端会为该次连接分配端口号以及内存资源,并等待ACK一段时间。如果存在大量的SYN请求,并且不回复第三步的ACK,服务端就会出现端口耗尽或者内存不足的情况。
SCTP如何解决SYN泛洪攻击
相比于TCP,SCTP建立链接需要4次握手,简单流程如下:
- 第一步:客户端发起INIT
- 第二步:服务端回复INIT_ACK,并附带一个cookie
- 第三步:客户端发起COOKIE_ECHO
- 第四步:服务端回复COOKIE_ACK
服务端在第二步并不会分配任何端口与内存资源,只是生成一个cookie。所以无法通过INIT攻击来达到TCP中SYN泛洪的目的。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。