SSL-DoS和SSL-DDos攻击与防御

发布时间:2024年01月11日

一、攻击原理

SSL握手的过程中,在协商加密算法时服务器CPU的开销是客户端开销的15倍左右。攻击者利用这一特点,在一个TCP连接中不停地快速重新协商(这种行为是被SSL所允许的),从而耗尽服务器CPU资源,这种攻击叫做SSL-DoS。

如果多个僵尸主机向服务器发起SSL-DoS,则叫做SSL-DDoS攻击。,利用该SSL漏洞的攻击的详细过程如下图所示:

?

二、攻击过程分析

?

上述报文可以看到SSL服务器的资源如何被耗尽。

SSL客户端发送一条ClientHello消息来初始化一次新的握手,该消息大约100字节左右,不需要加密。

服务器端响应ClientHello消息,需要连续发出3个消息,ServerHello、Certificate、ServerHelloDone,这3个消息一般在3000字节左右,需要用高级加密标准AES或流加密算法簇RC-4进行加密后再发送。

每次握手,SSL服务端发送的数据比客户端多了30倍,还要进行加密,从而导致服务端CPU计算资源大量占用。

抓包分析:

?

攻击一段时间,服务器不能响应

?

三、防御方法

针对Pushdo僵尸的垃圾报文攻击,可以在建立TCP连接后进行报文规格检查。

严格的规格检查:

对SSL连接中的所有报文进行检查,如果其不符合ssl报文规格,则丢弃该报文并对源ip进行封禁。

优点:可以发现任何类型的ssl垃圾报文,准确度高;

缺点:如果出现ssl分段报文,无法检测或者检测代价高;

?

宽松的规格检查:

对建立tcp连接后的一个或者几个ssl报文,如对client hello、change cipher spec进行规格检查;

优点:检测效率高;

缺点:不能对检测范围外的ssl垃圾报文进行防护;

针对thc-ssl-dos及类似的以ssl握手协商过程进行dos的攻击,可以对源ip或者一条ssl连接内的协商报文(change cipher spec报文)速率进行统计。

如果协商报文速率异常,则丢弃该连接的所有报文。

还有一些网络安全公司提出了关闭重握手(Renegotiation)以防止该漏洞被利用的解决方案,但这只能延缓SSL服务被攻击所导致的宕机到来时间, 还会导致SSL扩展服务无法使用。相关用户应尽快进行SSL服务器安全检查,并且及时调整相关安全产品的安全规则,以应对此漏洞带来的安全风险。

感谢您的阅读,中云云安全致力于为各种规模的业务提供方便快捷的高强度防护,以保护客户免受最大、最复杂的DDOS攻击的侵害。对网络安全感兴趣的或遇到攻击困扰的,可以动动您发财的小手关注下方公众号,享更多网络安全防护知识!!

?

文章来源:https://blog.csdn.net/Dachuibabaya/article/details/135528256
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。