SYNCookie反制
浏览:2073次 出处信息
最近看到一个很有意思的攻击。记一笔。
针对 SYN Flood 攻击(特点是攻击者发出大量 SYN 请求,但并不完成 TCP 握手),目前操作系统会采用 SYNcookie 予以反制。FreeBSD上的实现是在系统资源充足的时候采用标准的握手机制,而当发现存在可能的攻击(即可用的 TCP 状态资源不足时)应用 SYNcookie;SYNcookie是将TCP状态建立推迟到三次握手 之后,具体做法是将服务器本地的一个秘密数据与来源/目的IP、端口编码来形成序号来发出SYN+ACK,并在收到对方回应ACK时验证这个序号的真实性。
这种方法实际上是用计算来换内存资源,即增加了两步计算操作来避免在握手完成之前消耗 TCP 状态资源。
SYN Flood提供了两个优势:
攻击者可以伪造来源IP 攻击者可以不维护TCP状态(四两拨千斤)新的攻击方法在攻击者一方也使用了类似SYN cookie的方法,即,它能够实际完成TCP握手,从而击败 SYN cookie(当然,由于完成了三次握手,伪造源IP就不太容易了),方法是将本机和服务器的端口/IP编码进序号。
这次公开的攻击方法还有很多非常聪明的做法,在改TCP实现之前,防守一方能够采取的缓解方法不太多(限制IP、推迟服务启动时间等)。
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:由firebug引发的一次约会
后一篇:NAT网关安装笔记 >>
文章信息
- 作者:delphij's Chaos 来源: delphij's Chaos
- 标签: SYNCookie
- 发布时间:2009-10-14 23:45:05
近3天十大热文
-
[882] WordPress插件开发 -- 在插件使用 -
[136] 解决 nginx 反向代理网页首尾出现神秘字 -
[57] 整理了一份招PHP高级工程师的面试题 -
[55] 分享一个JQUERY颜色选择插件 -
[54] Innodb分表太多或者表分区太多,会导致内 -
[54] 用 Jquery 模拟 select -
[54] 如何保证一个程序在单台服务器上只有唯一实例( -
[52] jQuery性能优化指南 -
[52] CloudSMS:免费匿名的云短信 -
[52] 海量小文件存储