专栏首页FreeBufMySQL曝中间人攻击Riddle漏洞,可致用户名密码泄露

MySQL曝中间人攻击Riddle漏洞,可致用户名密码泄露

针对MySQL 5.5和5.6版本的Riddle漏洞会经由中间人攻击泄露用户名密码信息。请尽快更新到5.7版本。

Riddle漏洞存在于DBMS Oracle MySQL中,攻击者可以利用漏洞和中间人身份窃取用户名和密码。

“Riddle是一个在Oracle MySQL 5.5和5.6客户端数据库中发现的高危安全漏洞。允许攻击者在中间人位置使用Riddle漏洞破坏MySQL客户端和服务器之间的SSL配置连接。”漏洞描述写道。“此漏洞是一个非常危险的漏洞,因为首先它会影响MySQL – 非常流行的SQL数据库 – 其次会影响SSL连接,根据SSL的定义,它理应是安全的。”

Riddle漏洞的编号为CVE-2017-3305,当MySQL 5.5和5.6向服务器发送数据,包括用户名密码时,攻击者可以捕获它们。

针对5.5.49、5.6.30版本的安全更新并没有完全修复漏洞。专家注意到,5.7版本之后以及MariaDB系统没有受到漏洞影响。

安全研究员Pali Rohár称,导致Riddle漏洞的原因是之前存在于MySQL数据库中的BACKRONYM漏洞没有被修复。Backronym漏洞能在中间人攻击时用来泄露密码,即使流量经过加密。

“针对稳定版本的MySQL 5.5.49和5.6.30的安全更新中添加了在验证过程完成后对安全参数的验证。”“由于动作是验证完成后做出的,因此利用Riddle进行中间攻击再与SSL降级配合,攻击者就可以窃取登录数据进行身份验证并登录到MySQL服务器,“Rohár写道。

“有趣的是,当MySQL服务器拒绝验证用户时,MySQL客户端不会报告任何与SSL相关的错误,而是会报告服务器发送的未加密的错误消息。而这些错误消息由中间人攻击者控制的。”

专家建议将客户端软件更新为MySQL 5.7或MariaDB,因为这些应用程序的安全更新是能够正常工作的。

PoC

作者给出了用Perl写的PoC脚本。它会在本地3307端口开启riddle,MySQL服务器运行在localhost:3306。

在中间人服务器运行riddle:

$ perl riddle.pl

将MySQL客户端与riddle连接:

$ mysql --ssl-mode=REQUIRED -h 127.0.0.1 -P 3307 -u user -p password

如果你提供了正确的用户名密码,riddle就会连接到服务器,执行SQL语句并输出:

SELECT COUNT(*) FROM information_schema.TABLES --> 121

MySQL客户端会收到一条由riddle发送的错误信息:

ERROR 1045 (28000): Access denied: MITM attack

Oracle修复漏洞不及时

Riddle漏洞在二月份被发现,但是这个漏洞仍然能够影响到Oracle MySql软件。

“如果你不是Oracle客户的话,向他们报告漏洞是没有用的(即使是与安全相关的漏洞)。他们可以完全忽视任何报告,如果没人知道的话,他们会很高兴,因此不用修复漏洞了,“Rohár解释说。

“立即公开披露似乎是对用户最负责的解决方案,这是保护用户的唯一方法,能立即让他们知道应该做什么。”

本文分享自微信公众号 - FreeBuf(freebuf),作者:Sphinx

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-04-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • “拔网线”,解决不了安全产品0Day问题

    日前,一年一度的大型线上攻防对抗大赛已圆满落下帷幕。但今年的演习尤其热闹,乙方安全产品频频被曝出0Day漏洞,各种真假消息满天飞,让甲方企业每天都惴惴不安,开始...

    FB客服
  • 三款自动化代码审计工具

    0x01 简介 工欲善其事,必先利其器。 在源代码的静态安全审计中,使用自动化工具代替人工漏洞挖掘,可以显著提高审计工作的效率。 学会利用自动化代码审计工具,...

    FB客服
  • 谷歌Project Zero漏洞披露政策变更,建议满90天后再公开

    谷歌Project Zero网络安全团队试行一项新政策,该政策表明即使在漏洞修复之后也不会过早地披露漏洞细节。该缓冲期默认为90天,这意味着无论何时修复漏洞,都...

    FB客服
  • MySQL-关系型数据库管理系统

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理...

    一点博客
  • 神仙级MySQL调优及架构笔记,今年见过最全的MySQL笔记,没有之一

    MySQL 作为一款轻量级数据库被越来越多的企业使用,特别是 MySQL 的 innoDB 的存储引擎和 8.0 版本发布以来更是有了较大的提升。现在免费分享给...

    用户5546570
  • Windows7下命令行使用MySQL

    1、在Win7环境下安装MySQL,关于安装方法可以参考文章: Win7系统安装MySQL5.5.21图解教程、win7安装MySql

    ccf19881030
  • Why choose MySQL?

    MySQL可以说是目前流行的的开源数据库,在DB-Engines网站上,维护着一个数据库流行度积分榜,最近两年的积分榜一直是Oracle和MyS...

    MySQL数据库技术栈
  • 你不知道的MySQL,以及MariaDB初体验

    MySQL 是一个跨世纪的伟大产品,它最早诞生于 1979 年,距今已经有 40 多年的历史了,而如今比较主流的 Java 语言也只是 1991 年才诞生的,也...

    Java中文社群_老王
  • 最新版MySQL在MacOS上的安装与使用!

    我们本文将采用最常规的方式,也就是安装包的方式进行安装,这也是我推荐给新手的安装方式,因为这种安装方式更直观更可控一些,比如对 MySQL 版本的选择和密码配置...

    Java中文社群_老王
  • 如何在Debian 7上安装MySQL

    MySQL是一种流行的数据库管理系统,用于Web和服务器应用程序。本指南将介绍如何在Debian 7(Wheezy)的Linode上安装,配置和管理MySQL。

    Techeek

扫码关注云+社区

领取腾讯云代金券