OpenSSL ‘dtls1_retrieve_buffered_fragment()’ DTLS报文拒绝服务漏洞

漏洞起因
异常条件处理失败错误
 
影响系统
OpenSSL Project OpenSSL 1.0 Beta2
 
不受影响系统
 
危害
远程攻击者可以利用漏洞对应用程序进行拒绝服务攻击。
 
攻击所需条件
攻击者必须访问OpenSSL。
 
漏洞信息
OpenSSL是一款开放源码的SSL实现,用来实现网络通信的高强度加密。
OpenSSL ‘dtls1_retrieve_buffered_fragment()’存在设计问题,远程攻击者可以利用漏洞对应用程序进行拒绝服务攻击。
当运行:
./openssl s_server -dtls1 -no_ecdhe -timeout -cert large.pem
并执行如下命令:
./openssl s_client -dtls1
会在客户端触发段错误,GDB显示错误发生在d1_both.c:539行:
return frag->msg_header.frag_len;
由于函数访问已经释放的数据结构,导致’dtls1_retrieve_buffered_fragment()’处理报文时可导致应用程序崩溃。
 
测试方法
 
厂商解决方案
可参考如下补丁:
OpenSSL Project OpenSSL 1.0 Beta2
OpenSSL Project retrieve_buffered_fragment.patch
http://rt.openssl.org/Ticket/Attachment/22142/10060/retrieve_buffered_ fragment.patch
 
漏洞提供者
Daniel Mentz

发表评论?

0 条评论。

发表评论