记一次实战渗透(上)
字数 1411 2025-08-05 08:19:51

JBoss JMX Console 漏洞利用与内网渗透实战教学文档

一、漏洞背景与前期准备

1.1 JBoss JMX Console 漏洞概述

  • JBoss应用服务器默认安装后会暴露JMX Console管理界面
  • 未授权访问漏洞允许攻击者直接访问管理功能
  • 最经典的利用方式是war包的远程部署

1.2 环境准备

  • 目标系统:运行JBoss应用服务器的Web环境
  • 工具准备:
    • 集成化漏洞利用脚本工具
    • Metasploit框架
    • PowerShell脚本
    • 内网渗透工具集(如psexec、mimikatz等)

二、Web打点阶段

2.1 漏洞发现

  1. 访问目标JBoss服务
  2. 检查JMX Console是否可直接访问(无需认证)
  3. 确认存在jboss.deployment功能模块

2.2 漏洞利用步骤

  1. 定位void addURL()方法
  2. 使用集成化工具扫描确认漏洞存在
  3. 执行远程war包部署攻击
  4. 获取反弹shell连接

2.3 初始权限维持

  1. 检查系统进程(确认无AV防护)
  2. 检查管理员登录时间
  3. 检查网卡信息
  4. 确认网络连通性(ping测试)

三、后渗透阶段

3.1 本机信息收集

  1. 权限提升检查

    • 确认当前权限级别
    • 使用mimikatz抓取本地hash
  2. 网络环境确认

    • 确认是否在域环境中
    • 获取当前主机所在域名
  3. 定位域控

    • 通过DNS解析定位域控IP
    • 使用nslookup查询域控记录

3.2 域内信息收集技术

3.2.1 基础域信息查询

net group "domain admins" /domain      # 查询域管账户
net group "domain controllers" /domain # 查询域控账户
net user /domain                       # 查询域内用户
net group "domain computers" /domain   # 查询域内主机
net accounts /domain                   # 查询域账户属性
nltest /domain_trusts                  # 查询域信任信息
net group /domain                      # 查询域中组信息

3.2.2 共享与连接信息

net use    # 查看IPC连接
net share  # 查看共享资源
net session # 查看其他主机连接本机的IPC会话

3.3 SPN扫描技术

  1. SPN扫描原理

    • 通过LDAP查询Kerberos服务主体名称
    • 比端口扫描更精确且隐蔽
  2. 使用setspn工具

    setspn -T 域名 -Q */* > spn.txt
    
  3. 结果处理

    grep "CN=" spn.txt | awk -F "," {'print $1'} | awk -F "=" {'print $2'} > host.txt
    

3.4 横向移动技术

3.4.1 密码哈希传递(PTH)

  1. 尝试传递哈希攻击域控
  2. 检查MS17-010漏洞存在性

3.4.2 利用现有会话

  1. 分析net session结果
  2. 查找同名账户进行横向移动
  3. 使用psexec传递hash攻击其他主机

3.4.3 令牌窃取

  1. 检查会话中是否存在高权限账户
  2. 创建高权限进程(如域管的cmd)

3.4.4 批量漏洞扫描

  1. 批量扫描MS17-010漏洞
  2. 分析操作系统版本信息
  3. 使用Metasploit框架进行漏洞利用

四、防御与检测建议

4.1 JBoss防护措施

  1. 限制JMX Console的访问权限
  2. 设置强认证机制
  3. 及时更新JBoss版本

4.2 内网防护建议

  1. 监控异常LDAP查询行为
  2. 检测异常的SPN扫描活动
  3. 限制域内主机的横向移动能力

4.3 检测关键指标

  1. 异常的war文件部署行为
  2. 异常的setspn查询操作
  3. 非常规的net命令使用模式

五、工具与资源

5.1 推荐工具列表

  1. 漏洞利用

    • JBoss自动化利用工具
    • Metasploit框架
  2. 内网渗透

    • mimikatz
    • psexec
    • PowerSploit
  3. 信息收集

    • setspn
    • nltest
    • BloodHound

5.2 学习资源

  1. Kerberos协议详解
  2. Active Directory安全指南
  3. 红队基础设施搭建教程

六、总结与进阶

本案例展示了从Web应用漏洞到内网渗透的完整链条,重点包括:

  1. JBoss JMX Console的未授权访问漏洞利用
  2. 基础的权限维持技术
  3. 全面的域环境信息收集方法
  4. 多种横向移动技术

进阶研究方向:

  1. Kerberos委派攻击
  2. AD证书服务攻击
  3. 域持久化技术
JBoss JMX Console 漏洞利用与内网渗透实战教学文档 一、漏洞背景与前期准备 1.1 JBoss JMX Console 漏洞概述 JBoss应用服务器默认安装后会暴露JMX Console管理界面 未授权访问漏洞允许攻击者直接访问管理功能 最经典的利用方式是war包的远程部署 1.2 环境准备 目标系统:运行JBoss应用服务器的Web环境 工具准备: 集成化漏洞利用脚本工具 Metasploit框架 PowerShell脚本 内网渗透工具集(如psexec、mimikatz等) 二、Web打点阶段 2.1 漏洞发现 访问目标JBoss服务 检查JMX Console是否可直接访问(无需认证) 确认存在 jboss.deployment 功能模块 2.2 漏洞利用步骤 定位 void addURL() 方法 使用集成化工具扫描确认漏洞存在 执行远程war包部署攻击 获取反弹shell连接 2.3 初始权限维持 检查系统进程(确认无AV防护) 检查管理员登录时间 检查网卡信息 确认网络连通性(ping测试) 三、后渗透阶段 3.1 本机信息收集 权限提升检查 : 确认当前权限级别 使用mimikatz抓取本地hash 网络环境确认 : 确认是否在域环境中 获取当前主机所在域名 定位域控 : 通过DNS解析定位域控IP 使用 nslookup 查询域控记录 3.2 域内信息收集技术 3.2.1 基础域信息查询 3.2.2 共享与连接信息 3.3 SPN扫描技术 SPN扫描原理 : 通过LDAP查询Kerberos服务主体名称 比端口扫描更精确且隐蔽 使用setspn工具 : 结果处理 : 3.4 横向移动技术 3.4.1 密码哈希传递(PTH) 尝试传递哈希攻击域控 检查MS17-010漏洞存在性 3.4.2 利用现有会话 分析 net session 结果 查找同名账户进行横向移动 使用psexec传递hash攻击其他主机 3.4.3 令牌窃取 检查会话中是否存在高权限账户 创建高权限进程(如域管的cmd) 3.4.4 批量漏洞扫描 批量扫描MS17-010漏洞 分析操作系统版本信息 使用Metasploit框架进行漏洞利用 四、防御与检测建议 4.1 JBoss防护措施 限制JMX Console的访问权限 设置强认证机制 及时更新JBoss版本 4.2 内网防护建议 监控异常LDAP查询行为 检测异常的SPN扫描活动 限制域内主机的横向移动能力 4.3 检测关键指标 异常的war文件部署行为 异常的setspn查询操作 非常规的net命令使用模式 五、工具与资源 5.1 推荐工具列表 漏洞利用 : JBoss自动化利用工具 Metasploit框架 内网渗透 : mimikatz psexec PowerSploit 信息收集 : setspn nltest BloodHound 5.2 学习资源 Kerberos协议详解 Active Directory安全指南 红队基础设施搭建教程 六、总结与进阶 本案例展示了从Web应用漏洞到内网渗透的完整链条,重点包括: JBoss JMX Console的未授权访问漏洞利用 基础的权限维持技术 全面的域环境信息收集方法 多种横向移动技术 进阶研究方向: Kerberos委派攻击 AD证书服务攻击 域持久化技术