mysql离线本地解析密码

前言

有些时候我们做渗透并不是一定要进到内网,拿到域控,进而拿下一整个域内的机器,一是不可能每次运气都那么好,能够通过一些exp批量扫得一些机子,二是在打内网的过程中会有许多不同的情况,导致会花费大量的时间

有些时候渗透的目标可能就是某个网站的数据库内的用户信息,所以拿到用户信息就相当于工作完成了一大半,没有必要所有都继续往内网渗透,这时候就相当于只要拿到数据库内的数据,这次渗透就十分成功

而这篇文章就是介绍如何在已经拿到一台有数据库的机器,但是不知道他数据库密码的情况下,通过离线本地解析,获取机器的数据库密码

正文

因为物理机上安装得有phpstudy,所以将物理机作为被攻击机,虚拟机作为攻击机

即:攻击机 win2008r2 (虚拟机)

被攻击机 win10 (本机)

攻击机安装MySQL Server 5.0,有些5.0.x版本只支持32位系统,找支持x64或者64-bit的zip安装即可

安装程序就随便放几张图吧,跟着默认设置走就行,密码设置的地方记住即可

这里假设我已经拿到了目标机的shell,能够对他文件夹下的所有文件进行下载和上传操作

进入MYSQL\data\mysql目录

找到目录下的 user.frm ,user.MYD ,user.MYI文件下载到本机上

这里假装我已经从目标机上拿到了user.frm ,user.MYD ,user.MYI文件放到了我本机的mysql\data\mysql目录下

然后打开mysql目录下的my.ini文件,在[mysqld]模块下加上一行

skip-grant-tables

这里解释一下这条命令:登录的时候不启动grant-tables这个表,这个地方是授权表,相当于mysql每次登陆的时候都会跟这个授权表比对之后才能够登陆成功,skip这个表达到绕过的效果

多提一句,如果mysql的密码忘记了也可以用这个命令直接进mysql,但是可能会遇到一些报错

进入cmd,输入如下语句查看:

select user,password,host from mysql.user;

成功拿到密码hash

到本机上看下密码hash,是一样的,证明离线解析成功

相关推荐
云边云科技1 分钟前
零售行业新店网络零接触部署场景下,如何选择SDWAN
运维·服务器·网络·人工智能·安全·边缘计算·零售
钢铁男儿7 分钟前
Python 正则表达式(正则表达式和Python 语言)
python·mysql·正则表达式
rainFFrain23 分钟前
Boost搜索引擎项目(详细思路版)
网络·c++·http·搜索引擎
AOwhisky27 分钟前
Linux 文本处理三剑客:awk、grep、sed 完全指南
linux·运维·服务器·网络·云计算·运维开发
Kan先生2 小时前
对象存储解决方案:MinIO 的架构与代码实战
数据库·python
超级迅猛龙2 小时前
保姆级Debezium抽取SQL Server同步kafka
数据库·hadoop·mysql·sqlserver·kafka·linq·cdc
杨过过儿2 小时前
【Task02】:四步构建简单rag(第一章3节)
android·java·数据库
青草地溪水旁2 小时前
网络连接的核心机制
网络
中科数测3 小时前
开源软件惊现高危漏洞,中科固源解决方案利用GDB 调试成关键 “排雷兵”,实战运用指南
安全
····懂···3 小时前
攻克PostgreSQL专家认证
数据库·postgresql