服务器SYN的原理

更新时间:2020-11-18267次浏览| 信息编号:m84314  
管理信息
 | 投诉
  • 供求:出售
  • 成色:全新
  • 价格:面议
  • 标签:台式服务器,机架式服务器,机柜式服务器,IBM服务器,
  • 地址:东莞市南城街道高盛科技园大厦
  • 联系人:李彦婷
  • 联系电话:点击查看完整号码
  • 联系QQ:点击这里给我发消息

详情介绍
我们先来研究最常见的, SYN攻击属于DOS 攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。TCP协议建立连接的时候需要双方相互确认信息,来防 止连接被伪造和精确控制整个数据传输过程数据完整有效。所以TCP协议采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送syn包到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到syn包,确认客户的SYN 同时自己也发送一个SYN包 即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

SYN攻击利用TCP协议三次握手的原理,大量发送伪造源IP的SYN包,也就是伪造第一次握手数据包,服务器每接收到一个SYN包就会为这个连接信息分 配核心内存并放入半连接队列,如果短时间内接收到的SYN太多,半连接队列就会溢出,操作系统会把这个连接信息丢弃造成不能连接,当攻击的SYN包超过半 连接队列的最大值时,正常的客户发送SYN数据包请求连接就会被服务器丢弃. 每种操作系统半连接队列大小不一样,所以抵御SYN攻击的能力也不一样。那么能不能把半连接队列增加到足够大来保证不会溢出呢,答案是不能,每种操作系统 都有方法来调整TCP模块的半连接队列最大数,,Linux操作系统用变量tcp_max_syn_backlog来定义半连接队列的最大数。但是每建立一个半连接资源就会耗费系统的核心内存,操作系 统的核心内存是专门提供给系统内核使用的,核心内存不能进行虚拟内存转换,因此是非常紧缺的资源.以windows2000系统为例,当物理内存是4g的 时候 核心内存只有不到300M,系统所有核心模块都要使用核心内存,所以能给半连接队列用的核心内存非常少。



企鹅客服琪琪:3007277016   管网:llidc
联系我的时候请说是在搜即讯信息网上看到的,谢谢。
首发网址:http://bj.sojixun.com/ershoudiannao/m84314.htm
查看全部北京二手电脑/配件信息
发布发布一条信息北京二手电脑/配件信息>>