Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
OpenSSL_DTLS_CVE_2014_0221 — OpenSSL DTLS CVE-2014-0221远程拒绝服务 | Kitploit
工具/GitHubGitHub/tpdlshdmlrkfmcla/openssl_dtls_cve_2014_0221
漏洞分析漏洞利用网络安全密码学渗透测试
GitHubtpdlshdmlrkfmcla/openssl_dtls_cve_2014_0221

OpenSSL_DTLS_CVE_2014_0221

OpenSSL DTLS CVE-2014-0221远程拒绝服务

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
31年前尚未审核
分享

OpenSSL_DTLS_CVE_2014_0221

OpenSSL DTLS CVE-2014-0221 远程拒绝服务

DTLS(数据报传输层安全)是什么?

数据报传输层安全。*物理层

TCP 层数据报支持:TLS
UDP 层数据报支持:DTLS:通过对握手过程的适当修改来处理密钥交换、认证、安全参数设置等,通过超时和重传来支持具有无连接特性的 UDP 的稳定安全通信

DTLS 是 Datagram Transport Layer Security 的缩写,是一种在基于 UDP(用户数据报协议)的通信中提供安全的协议。 TLS(传输层安全)主要用于基于 TCP(传输控制协议)的通信中提供安全,但 UDP 是面向无连接的、基于数据包的协议,因此直接应用 TLS 存在困难。 为此,DTLS 被设计用于在基于 UDP 的通信中提供安全。

DTLS 与 TLS 的基本结构非常相似,但存在几个主要区别:

数据报支持:DTLS 设计适用于基于数据报的协议 UDP。TLS 针对面向连接的 TCP 进行了优化,为了应用于 UDP,被改造为可以按数据报单元运行。
握手过程的适当修改:与 TLS 一样,DTLS 使用握手过程来处理通信的认证、密钥交换、安全参数设置等。但由于 UDP 的特性,可能出现数据包丢失或顺序变化,因此 DTLS 中增加了应对这些情况的机制。
超时和重传:DTLS 包含超时和重传机制,以备数据包丢失或需要重传时使用。这弥补了 UDP 无连接特性的不足,实现了稳定的安全通信。
安全方面的考虑:DTLS 使用与 TLS 相同的安全协议来保证数据的机密性、完整性和认证。因此,即使在基于 UDP 的应用程序中也能安全地传输数据。
DTLS 主要用于 VoIP(语音通话)、多媒体流、游戏服务器等使用 UDP 的环境中提供安全。

那么 OpenSSL DTLS 漏洞

为什么是 OpenSSL:DTLS 是什么:基于 UDP 的 TLS,DTLS 1.0 由 OpenSSL 实现

通过发送伪造的握手进行的中间人(MITM)攻击,能够解密传输数据并篡改服务器/客户端之间传输数据的漏洞(CVE-2014-0224)
通过向 OpenSSL DTLS 客户端发送异常的 DTLS 握手,可能造成拒绝服务攻击的漏洞(CVE-2014-0221)
通过向 OpenSSL DTLS 客户端或服务器发送异常的 DTLS 分片,可能执行任意代码的漏洞(CVE-2014-0195)
因 do_ssl3_write 函数的缺陷,可能执行任意代码的漏洞(CVE-2014-0198)
该漏洞在 OpenSSL 1.0.0 和 1.0.1 中启用 SSL_MODE_RELEASE_BUFFERS 选项时发生(该选项默认禁用)
因 ssl3_read_bytes 函数的竞争条件,攻击者可能向会话中注入数据或造成拒绝服务攻击的漏洞(CVE-2010-5298)
该漏洞在使用 OpenSSL 1.0.0 和 1.0.1 的多线程应用程序中启用 SSL_MODE_RELEASE_BUFFERS 选项时发生(该选项默认禁用)
在启用匿名 ECDH 密码套件的 OpenSSL TLS 客户端上可能发生拒绝服务攻击的漏洞(CVE-2014-3470)

受影响的产品和版本

OpenSSL 0.9.8 系列版本
OpenSSL 1.0.0 系列版本
OpenSSL 1.0.1 系列版本
其中 CVE-2014-0221 是通过向 OpenSSL DTLS 客户端发送异常的 DTLS 握手,可能造成拒绝服务攻击的漏洞

了解的 CVE-2014-0221

< DTLS 拒绝服务漏洞(CVE-2014-0221) >
o DTLS(数据报传输层安全)是基于 TLS 的协议,用于传输加密的数据报
o 当将异常的 DTLS 握手消息(DTLS Hello 消息)发送给 DTLS 客户端时,OpenSSL 可能陷入递归状态,导致拒绝服务攻击

  • 在处理 DTLS Hello 消息时,函数会对自身进行递归调用

示例代码 dtls1_get_message_fragment 方法的递归调用部分示例

root@kitploit:~
if(!s->server && s->d1->r_msg_hdr.frag_off == 0 && wire[0] == SSL3_MT_HELLO_REQUEST) {
    if(wire[1] == 0 && wire[2] == 0 && wire[3] == 0) {
        if(s->msg_callback)
            s->msg_callback(0, s->version, SSL3_RT_HANDSHAKE,
                wire, DTLS1_HM_HEADER_LENGTH, s, s->msg_callback_arg);

            s->init_num = 0;
            return dtls1_get_message_fragment(s, st1, stn, max, ok);
    }
    else {
        al=SSL_AD_UNEXPECTED_MESSAGE;
        SSLerr(SSL_F_DTLS1_GET_MESSAGE_FRAGMENT,SSL_R_UNEXPECTED_MESSAGE);
        goto f_err;
    }
}
下载工具