服务器SYN洪水攻击原理和防御办法-SynAttackProtect保护机制
SYN洪水攻击是利用客户端和服务端建立TCP连接,服务器必须收到客户端返回的一个ACK包才完成建立连接,否则一直处于等待的缺陷,连续发送SYN报文给服务器端请求建立TCP连接,却不回应(这种情况称为半开连接),当半开连接数达到系统允许的最大值时,系统不再接受建立连接请求,即后面的用户无法访问到服务器,拿网站服务器来说就是无法打开网页;最终还可能耗尽服务器的 CPU 和内存,使服务器彻底瘫痪。
好在 Windows 系统提供了修改注册表的办法,防止SYN洪水攻击来保护服务器的正常运行,这种方法咱们称为SynAttackProtect机制。
【 tcp|服务器SYN洪水攻击原理和防御办法-SynAttackProtect保护机制】为防范SYN攻击,win2000系统的tcp/ip协议栈内嵌了SynAttackProtect机制,Win2003系统也采用此机制。SynAttackProtect机制是通过关闭某些socket选项,增加额外的连接指示和减少超时时间,使系统能处理更多的SYN连接,以达到防范SYN攻击的目的。
默认情况下,Win2000操作系统并不支持SynAttackProtect保护机制,需要在注册表以下位置增加SynAttackProtect键值,以下为设置步骤
1、依次选择“开始 → 运行”,输入 regedit 回车,打开注册表编辑器。
2、定位到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
在空白处单击右键,选择“DWORD(32-位)值”,如图1所示:
文章插图
3、名称输入 SynAttackProtect,双击 SynAttackProtect,把值设置为1或2,如图2所示:
文章插图
需要特别说明一下,当SynAttackProtect值(如无特别说明,本文提到的注册表键值都为十六进制)为0或不设置时,系统不受SynAttackProtect保护。
当SynAttackProtect值为1时,系统通过减少重传次数和延迟未连接时路由缓冲项(route cache entry)防范SYN攻击。
当SynAttackProtect值为2时(Microsoft推荐使用此值),系统不仅使用backlog队列,还使用附加的半连接指示,以此来处理更多的SYN连接,使用此键值时,tcp/ip的TCPInitialRTT、window size和可滑动窗囗将被禁止。
4、单击“确定”设置完成,按照上述步骤继续设置以下项(新建类型均为 DWORD值):
TcpMaxHalfOpen 值:500
TcpMaxHalfOpenRetried 值:400
EnablePMTUDiscovery 值:0
NoNameReleaseOnDemand 值:1
EnableDeadGWDetect 值:0
KeepAliveTime 值(十进制):300,000
PerformRouterDiscovery 值:0
EnableICMPRedirects 值:0
二、防止SYN洪水攻击修改项说明SynAttackProtect:syn 洪水攻击保护,取值范围 0、1、2;
TcpMaxHalfOpen:允许的最大半开连接数;
TcpMaxHalfOpenRetried:是处于至少已发送一次重传的 SYN_RCVD 状态中的TCP连接数;
EnablePMTUDiscovery:是否进行最大包长度路径检测;
NoNameReleaseOnDemand:当收到网络名称释放请求时,是否释放 NetBIOS 名称;
EnableDeadGWDetect:是否允许网关检测;
KeepAliveTime:每隔多长时间验证一次闲置未断开连接,单位:毫秒;
PerformRouterDiscovery:是否将试图执行路由器发现每个 RFC 1256 在每个接口基础上;
EnableICMPRedirects:是否启用 ICMP 重定向。
推荐阅读
- 火狐|火狐回应 Firefox 无法访问网页:服务器更新触发 bug,现已解决
- 攻击|服务器被攻击了多久恢复?服务器被攻击了怎么处理?
- exch微软 Exchange 服务器出现 2022 年日期 Bug,暂时无法处理邮件
- 修复|微软发布 Exchange 服务器“2022 版千年虫”问题官方修复程序
- 网络攻防|沃尔沃服务器遭勒索攻击研发信息被盗;360网络攻防靶场获数字城市优秀解决方案奖
- dns服务器|DNS污染攻击的危险及预防方法
- 腾讯服务器|宗庆后质疑腾讯服务器在美国?马化腾问非所答,杨元庆帮忙解围
- 沙利文|网络攻击者无需密码就能访问网络服务器!中国程序员发现“近年来最大计算机漏洞”
- log4j|立即修补您的 Minecraft 服务器以避免巨大的 Java 漏洞
- 淘宝|淘宝回应服务器崩了 网友质疑是不是原来关了不少服务器