赞
踩
漏洞原理
当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。
This flaw was rooted in an assumption that the memcmp() function would always return a value within the range -128 to 127 (signed character). On some platforms and with certain optimizations enabled, this routine can return values outside of this range, eventually causing the code that compares a hashed password to sometimes return true even when the wrong password is specified. Since the authentication protocol generates a different hash each time this comparison is done, there is a 1 in 256 chance that ANY password would be accepted for authentication.
受影响版本:
漏洞危害
只要知道用户名,不断尝试就能够直接登入SQL数据库。
复现环境
攻击机:kali-linux-2021.3
靶机:ubuntu(192.168.11.241/24)
复现过程
启动靶场
进入靶场目录
编译
docker-compose build
启动环境
docker-compose up -d #启动环境
查看端口
查看靶机IP地址
使用nmap进行扫描
mysql版本是5.5.23,可以尝试进行身份认证绕过
进入msfconsole
不知道完成了没有,没有返回用户名和密码
用默认用户名密码连接mysql成功
在kali中执行
for i in `seq 1 1000`; do mysql -uroot -pwrong -h 192.168.11.241 -P3306 ; done
进入数据库
成功!!!
漏洞解决方法
升级数据库,更新补丁
在防火墙上关闭3306端口
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。