mysql root getshell_[猥琐姿势]利用MySQL的root账号从而快速GetShell

*本文注重分享,切勿用作非法用途

今天给大家介绍通过mysql的root账号来get shell的猥琐方法,写的不是很详细,但图配了不少,大家应该是会看得懂了

今天的场景是前一周在内网渗透的时候遇到过的,找到一个mysql数据库弱口令。

账号和密码分别是root,也就是mysql中的dba。

这里其实权限很大了,首先mysql的root用户具有文件写权限,同时mysql5.0以上,提供一个system函数,而这个函数通常被攻击者用作shell的接口。

那时在遇到这个弱口令时,我就在想怎样快速的拿下这台主机,通过mysql的root账号。是否有比较快速的方法,这时候,我当然想到了sqlmap。经过查询github上的文档,我发现了这样的参数环境:

两台机器,一台是kali linux,作为mysql服务器,开放ssh服务以及mysql服务,ip地址为192.168.80.128;另外一台是ubuntu,作为攻击主机,安装有nmap,sqlmap,ip地址为192.168.80.129。

1. 首先我们对nmap扫描一下常见端口。

nmap -A -n -T3 192.168.80.128

扫描结果如下图:

ZbqInm.jpg

ZbqInm.jpg

2. 第二步主要是通过爆破工具发现了mysql的弱口令,这一步忽略。

3. 现在来讲主要内容,我们获得mysql的root账号和密码之后怎样利用。

我们先来看一下Github上的sqlmap文档(ClickMe):

36VRRv.jpg

36VRRv.jpg 我们可以看到这是一个”-d”选项,用法在For example有

整一个的语法为:” DBMS://USER:PASSWORD@DBMS_IP:DBMS_PORT/DATABASE_NAME” 或者是”DBMS://DATABASE_FILEPATH”。

[1]dbms:代表所使用的数据库,如我们这里是mysql

[2]user:对应我们数据库的用户,如我们这里是root

[3]password:对应我们数据的密码,如我的服务器为3erver

[4]dbma_IP:数据库服务器对应的ip地址,如我这里为192.168.80.128

[5]dbms_PORT:数据服务器所使用的端口,不能省略。默认我们写3306

[6]database_NAME:你要使用的数据库名,因为mysql一般会有test数据库,如我这里使用test。假如没有test,我们可以自己使用create database test;创建一个

4. 下面我们开始利用,服务器上我首先以root身份运行mysql数据库。看看会发生什么事情。在Mysql中,以什么身份运行数据库,会在/etc/mysql/my.cnf这个配置文件设置。所以下面我将用户mysqld节点中的user修改为root。如下图:

neQf6n.jpg

neQf6n.jpg 我们通过查看进程,可以看到在服务启动的时候,mysqld已经带上–user=root这个选项了。

niAvau.jpg

niAvau.jpg 现在我开始根据sqlmap的选项在kali里面对mysql服务器进行连接。

sqlmap -d “mysql://root:3erver@192.168.80.128:3306/test” -f

RjIr63.jpg

RjIr63.jpg 上面-f参数是打印mysql服务器的版本信息,如下图:

NFfQBn.jpg

NFfQBn.jpg 我们之后将-f参数更换成–os-shell参数:

aiIbeq.jpg

aiIbeq.jpg 之后sqlmap会让我们选择服务器的位数,要是你不知道就猜一个,反正两个选项,不是32位就是64位

2ey2yi.jpg

2ey2yi.jpg 我这里选择64位(看大家计算机而定),然后系统就会替我们上传对应位数的动态链接库文件,这个文件提供system函数以便我们可以执行系统命令:

rYZfUn.jpg

rYZfUn.jpg 当我们输入whoami命令时候,系统会询问我们是否返回命令的输出,我们这里选择”a”,代表总是返回命令的输出。可以看到这里可以获取到权限与我们运行mysql服务器用户权限一致,也就是说我们这里获取root权限所有,比如查看/etc/passwd,nc反弹shell、添加用户等

ifconfig信息:

A32m6z.jpg

A32m6z.jpg 查看/etc/passwd文件:

fMjEZ3.jpg

fMjEZ3.jpg nc反弹shell

(1)执行nc,在Mysql服务器上2333端口进行监听

ER3qUz.jpg

ER3qUz.jpg (2)我们查看我们攻击机的ip,可以看到的确是192.168.80.129。

我们使用ncat 192.168.80.128 2333 来进行连接反弹shell

7ny6ra.jpg

7ny6ra.jpg *到这里,我们已经将怎样快速利用一个mysql的root账号来获取系统权限的过程演示完毕 。

//Author:W3bSafe安全团队–黑子

知乎整理:W3bSafe安全团队–黑色毛衣

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值