vlambda博客
学习文章列表

利用CVE-2012-2122漏洞绕过mysql身份认证

预备知识

以CVE-2012-2122的msf利用脚本进行测试,并且通过python编写漏洞利用脚本,来加深对漏洞危害性的认识,该实验思路可以在其他的服务器认证流程中进行测试,检验服务的安全性;加固mysql身份认证漏洞的方法为直接安装最新版本就会自动升级,并保持MYSQL服务是停止或启动都不影响安装新版的mysql,升级后一切都会正常,并不需要重新设置运行用户或安全。升级后的MySQL就解决了代号为CVE-2012-2122的MySQL身份认证漏洞。

漏洞版本:
All MariaDB
MySQL 5.1.61, 5.2.11, 5.3.5, 5.5.22 之前的版本
漏洞描述:当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。按照公告说法大约256次就能够蒙对一次。而且漏洞利用工具已经出现。不过,MySQL身份认证的时候是采用3元组,username,ip,password。如果client的IP在mysql.user表中找不到对应的,也无法登陆。

安全建议:强烈建议升级官方补丁:All MariaDB and MySQL versions up to 5.1.61, 5.2.11, 5.3.5, 5.5.22,5.5.23 are vulnerable. MySQL versions from 5.1.63, 5.5.24, 5.6.6 arenot.

临时解决办法:
在防火墙上关闭mysql端口

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证

利用CVE-2012-2122漏洞绕过mysql身份认证