Vulnhub内网渗透DC-7靶场通关

个人博客: xzajyjs.cn


DC系列共9个靶场,本次来试玩一下一个 DC-7,下载地址。
下载下来后是 .ova 格式,建议使用vitualbox进行搭建,vmware可能存在兼容性问题。靶场推荐使用NAT(共享)模式,桥接模式可能会造成目标过多不易识别。 M1请使用UTM进行搭建,教程见此


IP

DC-7: 192.168.168.8(后来为192.168.168.9)

Kali: 192.168.168.5


信息收集

arp-scan -l
# nmap -sn 192.168.168.0/24

先进行端口扫描, 扫到两个端口22, 80 ,并进行进一步服务版本信息探测

nmap -sS -p- 192.168.168.8
nmap -sV -p22,80 192.168.168.8

pic-014818

dirsearch扫一下目录,并且分析整理得到如下信息

  • robots.txtconfig.php等文件,可以去看一下

  • 是Drupal的站点

  • 并且通过install.php查看到Drupal的版本号为8.7.6searchexploit搜了一下漏洞,没有什么结果

  • 站点可以登录

  • 站点尾部@DC7USER可疑,非copyrights


渗透过程

installphp

通过github中的信息泄露,找到dc7user的账户密码信息

dc7user
MdR3xOgB7#dW

image-20230901020252711

尝试了一下drupal的登陆,失败了。尝试ssh连接,成功。

ssh

看下当前目录有个mbox文件,里面有一些信息,root在定时执行/opt/scripts/backups.sh脚本,我们去看一下这个脚本

backup

backup2

发现这个脚本中使用了drush命令,百度了一下这个命令是是Drupal的一个命令行外壳和脚本接口。

我们的当前用户dc7user也可以使用。

通过脚本知道网页的目录为/var/www/html

www

然后我们当前用户对于该目录并没有权限。我们进到这个目录中,使用drush相关命令修改管理员密码。

drush user-information admin		# 查看admin用户信息
drush user-password admin --password="haha123"

drush_user

changepasswd

改完密码后可以登录到Drupal后台

admin

想直接添加一个webshell的php,然而发现并不能直接写php源码,只有富文本等三种格式,百度了一下发现是高版本的drupal要装一个插件叫做PHP才能写php页面

content

install_modul

安装成功并启用组件后就可以写php了。哥斯拉连上去

image-20230901021326556

image-20230901021435233

前面说root会定时执行backups.sh,我们看下这个文件

image-20230901021725755

这个文件属于root,www-data组,所以我们的www-data用户可以修改它,在最后一行加上nc来反弹shell即可,kali来监听。

godizilla

等待一段时间,就能获得shell了

flag

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/97116.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式系列-创建者模式

一、上篇回顾 上篇我们主要讲述了抽象工厂模式和工厂模式。并且分析了该模式的应用场景和一些优缺点,并且给出了一些实现的思路和方案,我们现在来回顾一下: 抽象工厂模式:一个工厂负责所有类型对象的创建,支持无缝的新增新的类型对…

Yjs + Quill 实现文档多人协同编辑器开发(基础+实战)

前言 多人协同开发确实是比较难的知识点,在技术实现上有一定挑战,但随着各种技术库的发展,目前已经有了比较成熟的解决方案。今介绍 Yjs 基于CRDT算法,用于构建自动同步的协作应用程序,与Quill富文本编辑器&#xff0c…

小程序数据导出文件

小程序josn数据生成excel文件 先从下载传送门将xlsx.mini.min.js拷贝下来,新建xlsx.js文件放入小程序项目文件夹下。 const XLSX require(./xlsx)//在需要用的页面中引入// 定义导出 Excel 报表的方法exportData() {const that thislet newData [{time:2021,val…

NoSQL MongoDB Redis E-R图 UML类图概述

NoSQL NoSQL(Not only SQL)是对不同于传统的关系数据库的数据库管理系统的统称,即广义地来说可以把所有不是关系型数据库的数据库统称为NoSQL。 NoSQL 数据库专门构建用于特定的数据模型,并且具有灵活的架构来构建现代应用程序。NoSQL 数据库使用各种数…

uni-app之android离线打包

一 AndroidStudio创建项目 1.1,上一节演示了uni-app云打包,下面演示怎样androidStudio离线打包。在AndroidStudio里面新建空项目 1.2,下载uni-app离线SDK,离线SDK主要用于App本地离线打包及扩展原生能力,SDK下载链接h…

C#里Bitmap转Halocn的HObject

一般情况下,图像的width是4的倍数的话,用以下代码便可将彩色bitmap转出halcon里的HObject public void Bitmap2HObject(Bitmap bmp, out HObject image){try{Rectangle rect new Rectangle(0, 0, bmp.Width, bmp.Height);BitmapData srcBmpData bmp.L…

常见路由跳转的几种方式

常见的路由跳转有以下四种&#xff1a; 1. <router-link to"跳转路径"> /* 不带参数 */ <router-link :to"{name:home}"> <router-link :to"{path:/home}"> // 更建议用name // router-link链接中&#xff0c;带/ 表示从根…

【STM32】IIC的初步使用

IIC简介 物理层 连接多个devices 它是一个支持设备的总线。“总线”指多个设备共用的信号线。在一个 I2C 通讯总线中&#xff0c;可连接多个 I2C 通讯设备&#xff0c;支持多个通讯主机及多个通讯从机。 两根线 一个 I2C 总线只使用两条总线线路&#xff0c;一条双向串行数…

基于 xhr 实现 axios

基于 xhr 实现 axios 上面我们讲到二次封装 axios &#xff0c;但是现在我们尝试完全脱离 axios&#xff0c;自己实现一个 axios&#xff0c;由于 axios 底层是基于 xhr 做了二次封装&#xff0c;所以我们也可以尝试一下。 xhr 二次封装 src/plugins/xhr.js /*** 请求拦截器…

支付宝使用OceanBase的历史库实践分享

为解决因业务增长引发的数据库存储空间问题&#xff0c;支付宝基于 OceanBase 数据库启动了历史库项目&#xff0c;通过历史数据归档、过期数据清理、异常数据回滚&#xff0c;实现了总成本降低 80%。 历史数据归档&#xff1a;将在线库&#xff08;SSD 磁盘&#xff09;数据归…

常量指针 指针常量 修饰常量

常量指针&#xff08;const修饰指针&#xff09; const int *p&a; int a 0, b 0;//常量指针&#xff1a;不能改变指向的值&#xff0c;可以改变指向。const int* p &a;cout << p << endl;p &b;cout << p << endl; 指针常量 &#xff…

iOS开发Swift-5-自动布局AutoLayout-摇骰子App

1.在iOS坐标系中&#xff0c;以向左、向下为正方向。图片以左上角为基准点。 2.打开之前的摇骰子App&#xff0c;对它的界面做一些适应所有iPhone机型的效果。 3.先对上方logo做一个y轴约束和一个宽高约束。 宽高约束&#xff1a; 水平居中&#xff1a; 对y轴进行约束。将虚线点…