【HTB 靶机记录】Poison
字数 1316 2025-08-10 22:27:01
HTB 靶机 Poison 渗透测试教学文档
1. 靶机概述
Poison 是一个 Hack The Box 平台上的靶机,主要考察以下技术点:
- 任意文件读取漏洞
- Base64 多层解码
- 端口转发技术
- VNC 服务利用
- 权限提升技术
2. 信息收集阶段
2.1 端口扫描
使用 nmap 进行端口扫描:
nmap -sS 10.10.10.84 -T4 -p-
扫描结果显示靶机开放了以下端口:
- 22/tcp - SSH 服务
- 80/tcp - HTTP 服务
2.2 服务枚举
尝试 SSH 爆破(虽然不推荐在生产环境使用):
sudo hydra -l root -P wordlist.TXT ssh://10.10.10.84
3. 初始访问 (Foothold)
3.1 任意文件读取漏洞利用
通过 Web 服务发现任意文件读取漏洞,获取 base 文件。
3.2 Base64 多层解码
对获取的 base 文件进行 13 次 Base64 解码:
base64 -d base|base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d |base64 -d
最终得到密码:Charix!2#4%6&8(0
3.3 获取用户权限
使用获得的密码通过 SSH 登录:
ssh charix@10.10.10.84
获取用户 flag:
cat user.txt
用户 flag 为:eaacdfb2d141b72a589233063604209c
4. 权限提升 (Privilege Escalation)
4.1 环境分析
发现系统禁用了 sudo 命令,且 sudoers 文件不存在:
sudo cat /etc/sudoers
4.2 进程枚举
检查运行中的进程,发现以 root 权限运行的进程:
- xvnc
- xterm
4.3 VNC 服务利用
4.3.1 端口发现
检查网络连接:
netstat -an
发现开放了 5801 和 5901 端口(VNC 默认端口)
4.3.2 获取 VNC 密码
在 /home/charix 目录下发现 secret.zip 文件:
ls /home/charix
将 secret.zip 下载到本地:
scp charix@10.10.10.84:/home/charix/secret.zip /
4.3.3 端口转发
由于靶机没有 vncviewer 命令,需要进行 SSH 端口转发:
- 转发 5901 端口:
ssh -L 1234:127.0.0.1:5901 charix@10.10.10.84
- 在另一个终端使用 vncviewer 连接:
vncviewer 127.0.0.1:1234 -passwd secret
4.4 获取 root 权限
成功连接 VNC 后,获得 root 权限 shell,读取 root flag:
cat /root/root.txt
root flag 为:716d04b188419cf2bb99d891272361f5
5. 关键知识点总结
-
任意文件读取漏洞:Web 应用中常见的漏洞类型,可能导致敏感信息泄露。
-
Base64 多层编码:
- 数据可能被多次 Base64 编码
- 需要尝试多层解码才能获取原始数据
- 使用管道可以简化多层解码过程
-
VNC 服务利用:
- VNC 默认使用 5800+ 和 5900+ 端口
- 密码可能存储在本地文件中
- 可以通过端口转发访问受限服务
-
权限提升技巧:
- 检查运行中的 root 进程
- 利用服务配置不当获取更高权限
- 当直接提权路径受阻时,寻找间接方法
-
SSH 端口转发:
- 本地端口转发语法:
ssh -L [本地端口]:[目标主机]:[目标端口] [用户名]@[SSH服务器] - 用于访问受限网络中的服务
- 本地端口转发语法:
6. 防御建议
- 避免 Web 应用中的任意文件读取漏洞
- 不要将敏感信息存储在多层编码中
- 限制 VNC 服务的访问权限
- 定期检查系统上运行的高权限进程
- 实施最小权限原则,限制用户权限
- 监控和限制端口转发功能的使用