MySQL 5.6.x < 5.6.34 多个漏洞(2016 年 10 月 CPU)(SWEET32)

critical Nessus 插件 ID 94197

简介

远程数据库服务器受到多个漏洞的影响。

描述

远程主机上运行的 MySQL 版本为低于 5.6.34 的 5.6.x。因此,该服务器受到多个漏洞的影响:

- s3_srvr.c、ssl_sess.c 和 t1_lib.c 中存在多个整数溢出情况,这是未正确使用指针算术进行堆缓冲区边界检查所致。未经身份验证的远程攻击者可利用此情况造成拒绝服务。(CVE-2016-2177)

- dsa_ossl.c 的 dsa_sign_setup() 函数中存在信息泄露漏洞,这是未妥当确定是否使用常数时间操作所致。
未经身份验证的远程攻击者可利用此漏洞,通过时序边信道攻击,泄露 DSA 密钥信息。(CVE-2016-2178)

- DTLS 实现中存在拒绝服务漏洞,这是未正确限制与未使用乱序消息相关的队列条目使用期所致。未经身份验证的远程攻击者可利用此问题,通过同时维持多个构建的 DTLS 会话,来消耗内存。
(CVE-2016-2179)

- X.509 公钥基础设施时间戳协议 (TSP) 实现中存在越界读取错误。未经身份验证的远程攻击者可利用此问题,通过由 'openssl ts' 命令错误处理的特制时间戳文件,造成拒绝服务或泄露敏感信息。
(CVE-2016-2180)

- DTLS 实现的防重放功能中存在拒绝服务漏洞,这是未正确处理记录中的 epoch 序列号所致。
未经身份验证的远程攻击者可利用此漏洞,通过伪造的 DTLS 记录,造成合法数据包遭到终止。(CVE-2016-2181)

- bn_print.c 的 BN_bn2dec() 函数中存在溢出情况,这是在处理 BIGNUM 值时未正确验证用户提供的输入所致。未经身份验证的远程攻击者可利用此情况造成进程崩溃。(CVE-2016-2182)

- 3DES 和 Blowfish 算法中存在漏洞(称为 SWEET32),这是默认使用弱 64 位块密码所致。具有足够资源的中间人攻击者可利用此漏洞,通过 'birthday' 攻击检测会在固定密码与已知纯文本之间泄露 XOR 的冲突,进而泄露密码文本(例如安全 HTTPS Cookie),并可能导致劫持经身份验证的会话。
(CVE-2016-2183)

- Optimizer 子组件中存在一个不明缺陷,经过身份验证的远程攻击者可利用此漏洞,造成拒绝服务情况。(CVE-2016-3492)

- Security: Encryption 中存在不明缺陷,允许经身份验证的远程攻击者泄露敏感信息。
(CVE-2016-5584)

- MyISAM 子组件中存在一个不明缺陷,本地攻击者可利用此漏洞,获取提升的特权。(CVE-2016-5616)

- Error Handling 子组件中存在一个不明缺陷,本地攻击者可利用此漏洞,获取提升的特权。(CVE-2016-5617)

- GIS 子组件中存在一个不明缺陷,经过身份验证的远程攻击者可利用此漏洞,造成拒绝服务情况。(CVE-2016-5626)

- Federated 子组件中存在一个不明缺陷,经过身份验证的远程攻击者可利用此漏洞,造成拒绝服务情况。(CVE-2016-5629)

- t1_lib.c 的 tls_decrypt_ticket() 函数中存在缺陷,这是未正确处理票证 HMAC 摘要所致。未经身份验证的远程攻击者可利用此问题,通过过短的票证造成进程崩溃,进而导致拒绝服务。
(CVE-2016-6302)

- mdc2dgst.c 的 MDC2_Update() 函数中存在整数溢出情况,这是未正确验证用户提供的输入所致。未经身份验证的远程攻击者可利用此问题造成基于堆的缓冲区溢出,从而导致拒绝服务情况或可能执行任意代码。
(CVE-2016-6303)

- t1_lib.c 的 ssl_parse_clienthello_tlsext() 函数中存在缺陷,这是未正确处理客户端的过大 OCSP 状态请求扩展所致。未经身份验证的远程攻击者可利用此问题,通过大型 OCSP 状态请求扩展,消耗内存资源,进而导致拒绝服务情况。
(CVE-2016-6304)

- 证书解析器中存在越界读取错误,未经身份验证的远程攻击者可利用此错误,通过构建的证书操作,造成拒绝服务。(CVE-2016-6306)

- sql/sys_vars.cc 文件的 check_log_path() 函数中存在一个缺陷,这是因为对于写入到 my.cnf 配置文件的功能限制不充分并且允许从目前版本不使用的路径位置加载配置文件所导致。经身份验证的远程攻击者可利用此问题,通过使用特制的查询,利用日志记录功能来创建新文件或将自定义内容附加到现有文件。攻击者可利用此漏洞,通过插入自定义 .cnf 文件来获取根特权,该文件含有指向特别构建 mysql_hookandroot_lib.so 文件的“malloc_lib=”指令,因此造成 MySQL 在下次启动时加载恶意库。(CVE-2016-6662)

- 在 AES 加密和解密的 C 软件版本中,wolfSSL 中存在一个缺陷,这是表格查找未正确考虑缓存库访问时间所致。本地攻击者可利用此缺陷,通过特制的应用程序泄露 AES 密钥。
(CVE-2016-7440)

- Types 子组件中存在一个不明缺陷,经过身份验证的远程攻击者可利用此漏洞,造成拒绝服务情况。(CVE-2016-8283)

请注意,Nessus 尚未测试这些问题,而是只依靠应用程序自我报告的版本号。

解决方案

升级至 MySQL 5.6.34 或更高版本。

另见

http://www.nessus.org/u?bac902d5

http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-34.html

http://www.nessus.org/u?fbd97f45

https://sweet32.info/

https://www.openssl.org/blog/blog/2016/08/24/sweet32/

http://www.nessus.org/u?453a538d

插件详情

严重性: Critical

ID: 94197

文件名: mysql_5_6_34_rpm.nasl

版本: 1.10

类型: local

代理: unix

系列: Databases

发布时间: 2016/10/21

最近更新时间: 2020/6/3

支持的传感器: Nessus Agent, Nessus

风险信息

VPR

风险因素: High

分数: 7.4

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 7.8

矢量: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

CVSS 分数来源: CVE-2016-6662

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.8

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:P/RL:O/RC:C

漏洞信息

CPE: cpe:/a:oracle:mysql, p-cpe:/a:amazon:linux:mysql, p-cpe:/a:centos:centos:mysql, p-cpe:/a:fedoraproject:fedora:mysql, p-cpe:/a:fermilab:scientific_linux:mysql, p-cpe:/a:novell:opensuse:mysql, p-cpe:/a:novell:suse_linux:mysql, p-cpe:/a:oracle:linux:mysql, p-cpe:/a:redhat:enterprise_linux:mysql

必需的 KB 项: Host/local_checks_enabled

可利用: true

易利用性: Exploits are available

补丁发布日期: 2016/10/18

漏洞发布日期: 2016/5/4

参考资料信息

CVE: CVE-2016-2177, CVE-2016-2178, CVE-2016-2179, CVE-2016-2180, CVE-2016-2181, CVE-2016-2182, CVE-2016-2183, CVE-2016-3492, CVE-2016-5584, CVE-2016-5616, CVE-2016-5617, CVE-2016-5626, CVE-2016-5629, CVE-2016-6302, CVE-2016-6303, CVE-2016-6304, CVE-2016-6306, CVE-2016-6662, CVE-2016-7440, CVE-2016-8283

BID: 91081, 91319, 92117, 92557, 92628, 92630, 92912, 92982, 92984, 92987, 93150, 93153, 93612, 93614, 93638, 93650, 93659, 93668, 93735, 93737