TCP简介:
传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议
有三次握手和四次挥手的过程。
三次握手
四次挥手
TCP压力测试
1、IP欺骗技术
假设现在有一个合法用户 (1.1.1.1) 已经同服务器建立正常的连接,测试者构造的 TCP 数据,伪装自己的 IP 为 1.1.1.1,并向服务器发送一个带有 RSI 位的 TCP 数据段。服务器接收到这样的数据后,认为从 1.1.1.1 发送的连接有错误,就会清空缓冲区中建立好的连接。
2、SYN Flooding
A 可以向 B 发送大量 SYN 消息但不响应 ACK 消息,或者干脆伪造 SYN 消息中的 Source IP,使 B 反馈的 SYN-ACK 消息石沉大海,导致 B 被大量注定不能完成的半开连接占据,直到资源耗尽,停止响应正常的连接请求。
3、TCP 重置测试
在 TCP 重置测试中,测试者通过向通信的一方或双方发送伪造的消息,告诉它们立即断开连接,从而使通信双方连接中断。正常情况下,如果客户端收发现到达的报文段对于相关连接而言是不正确的,TCP 就会发送一个重置报文段,从而导致 TCP 连接的快速拆卸。
防御技巧
1、针对每个“客户端”做一个请求频率的限制
2、高防服务器
3、CDN 加速
抓包分析
使用kali系统中的hping3进行测试
打开工具
构造ACK数据包
打开wireshark抓包,发现发送大量的TCP数据包。