前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mysql离线本地解析密码

mysql离线本地解析密码

作者头像
红队蓝军
发布2022-05-17 15:20:57
1.1K0
发布2022-05-17 15:20:57
举报
文章被收录于专栏:红队蓝军

前言

有些时候我们做渗透并不是一定要进到内网,拿到域控,进而拿下一整个域内的机器,一是不可能每次运气都那么好,能够通过一些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,是一样的,证明离线解析成功

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 红队蓝军 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 正文
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档