Openssl renegotiation DoS攻击仍然难以解决

互联网  /  houtizong 发布于 3年前   57
Shawn the R0ck 写道 "2011年报出的Openssl重新密钥协商会导致DOS攻击,漏洞报出后没多久一个黑客组织放出了dos攻击工具,这个代号CVE-2011-1473的漏洞至今openssl upstream并没有具体的修复方案,这个烂摊子留给了具体的应用程序开发者,比如Apache2给了相应的配置文件可以直接关闭密钥重新协商:

shawn@fortress / $ openssl s_client -connect build.opensuse.org:443

..............................

..............................

Timeout   : 300 (sec)   

Verify return code: 20 (unable to get local issuer certificate)---

R   // 这里按R然后回车

RENEGOTIATING140722018514592:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt.c:592:

服务器端的重新密钥协商的开销是客户端的15倍,在带宽足够的情况下一台i7的CPU可以fuc*掉足够多的服务器,以下是测评数据:

测试环境:SLES 11 SP2 , 虚拟机中分配了2 cores + 1GB内存

Case I:

Server: openssl s_server -key server-key.pem

Client: thc-ssl-dos 192.168.0.1 4433 --accept -l 10000

最坏的情况:

Cpu0 : 1.3%us, 1.7%sy, 0.0%ni, 97.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Cpu1 : 53.1%us, 5.1%sy, 0.0%ni, 37.1%id, 0.0%wa, 0.0%hi, 0.7%si, 0.0%st

Case II:  使用了开源加固方案,在netfilter上限制连接的速率和用固定的特征码去匹配

#sh iptables.sh

#iptables -A INPUT -d 192.168.0.1 -p tcp --dport 4433 -j LIMIT_RENEGOCIATION

Server: openssl s_server -key server-key.pem

Client: thc-ssl-dos 192.168.0.1 4433 --accept -l 10000

最坏的情况:

Cpu0 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

Cpu1 : 0.0%us, 0.7%sy, 0.0%ni, 99.3%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

这个方案的确有效,但不确定是否有副作用,固定的特征如果跟其他hash or 其他xx碰撞是否会有false positive?"

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客