SYN洪泛攻击及预防措施:
SYN洪泛攻击常出现在TCP三次握手的第二次,当服务端收到客户端的SYN报文之后,服务端回复客户端一个SYN和一个ACK报文,然后将这个客户端的信息放入半连接队列(这个半连接队列的长度是由listen函数第二个参数指定的)。如果这个之后,客户端不回复ACK报文,那么服务端半连接列表就会一直维护这个信息,白白消耗资源。如果大量的客户端不回复我ACK,那么服务端就不得不消耗大量资源维护这些客户端的连接。而新的客户端连接就得不到处理,阻塞在那里。
针对SYN洪泛攻击,可以采用SYN Cookies,其会在服务端回复的时候,根据客户端的信息生成一个SYN报文,这个报文有一个生成的序列号。之后,服务端不会给这个客户端建立资源。当客户端回复ACK报文,并且这个ACK的序列号和生成的SYN的序列号可以匹配的时候,服务端才会维护和客户端的连接信息。