MariaDB 本身不受 DROWN 漏洞影响
最近发现了一个名为 DROWN 的严重漏洞。该漏洞存在于支持 SSLv2 的系统中。SSLv2 中存在一个缺陷,可用于解密通过较新 SSL 协议(如 TLS)传输的信息。关于 DROWN 漏洞(CVE 编号 CVE-2016-0800)的更多信息可以在这里找到
去年十二月,Sergei Golubchik 写了一篇关于 MariaDB 中的 SSL 状态 的博客文章,解释了不同 MariaDB 版本中使用了哪些版本的 SSL 加密技术,以及从 MySQL 继承了什么。在该博客文章中,您会看到 MariaDB(和 MySQL)从未支持 SSLv2,而这正是 DROWN 攻击会利用的。因此,可以肯定地说,MariaDB 本身不受 DROWN 漏洞的影响。
DROWN 是一种中间人 (MitM) 攻击。通常,为确保客户端直接与 MariaDB 服务器通信,我们建议使用服务器证书验证,例如:
[client] ssl-verify-server-cert
MariaDB 依赖外部库进行加密,对于 Linux 版本的 MariaDB,使用的库是 OpenSSL。较新版本的 OpenSSL 已禁用 SSLv2,但旧版本没有。很难预测如何在 MariaDB 使用的已安装旧版本 OpenSSL 上利用 DROWN 漏洞,因为如上所述,MariaDB 本身不允许 SSLv2。无论如何,我们建议您确保在运行 MariaDB 的服务器上安装了最新的 OpenSSL 版本。