记docker复杂环境下的内网打点
字数 1658 2025-09-01 11:26:11

Docker复杂环境下的内网渗透实战教学

一、前言

本文详细记录了一次在Docker复杂环境下的内网渗透过程,包含外网打点、Docker环境突破、内网横向移动等完整流程。所有技术仅用于安全研究和防御目的,相关漏洞均已修复。

二、渗透流程概述

  1. 外网打点:通过SQL注入和XXE漏洞获取初始权限
  2. Docker环境突破:发现目标处于Docker容器内,通过内存马建立隧道
  3. 内网横向渗透:数据库攻陷、系统攻陷、突破内网隔离
  4. 最终成果:控制多台内网主机,获取高权限账户,突破隔离网段

三、详细技术教学

3.1 外网打点阶段

3.1.1 初始漏洞利用

  • SQL注入利用

    • 发现登陆口存在1Day SQL注入漏洞(MySQL)
    • 结合XXE漏洞获取初始系统权限
    • 使用sqlmap等工具自动化利用
  • 隐藏资产发现

    • 全端口扫描发现404响应端口
    • 目录扫描发现/jmreport路径
    • 确认为Jeecg-Boot系统

3.1.2 Jeecg-Boot RCE利用

  • 确认系统版本后直接利用已知RCE漏洞
  • 获取Webshell权限

3.1.3 反弹Shell受阻处理

  • 目标环境严格限制出网,常规反弹Shell失败
  • 尝试多种内存马注入工具均失败
  • 最终使用特制版哥斯拉成功植入内存马

3.2 Docker环境突破

3.2.1 环境确认

  • 发现当前Shell处于Docker容器内
  • 尝试Docker逃逸未成功

3.2.2 内存马植入技术

  • 手动打入sou5内存马
  • 建立Socks5代理隧道进入Docker内网
  • 关键工具:特制版哥斯拉

3.2.3 内网侦察技术

  • 使用webshell工具自带端口扫描功能
  • 使用fscan快速扫描内网资产
    • 发现MySQL、MSSQL、Web等服务
    • Linux环境下无需考虑免杀问题

3.3 内网横向渗透

3.3.1 数据库攻陷

MySQL数据库

  • 发现Druid未授权访问(但无近期登录记录)
  • 通过Swagger API接口报错注入获取MySQL root密码
  • 破解哈希后连接受阻(数据库限制外部访问)

MSSQL数据库

  • 通过密码复用进入MSSQL服务器
  • 目标不出网限制进一步利用

3.3.2 系统攻陷

Linux主机

  • 利用S2漏洞攻陷不出网的Linux服务器
  • 发现多台SSH弱口令主机

Windows主机

  • 利用永恒之蓝(MS17-010)攻陷Windows机器
  • 抓取密码尝试突破内网隔离

3.3.3 突破内网隔离

  • 以攻陷的Windows主机作为跳板
  • 进入内网其他隔离网段
  • 扫描新网段发现更多漏洞:
    • 弱口令
    • 未授权访问漏洞

3.4 关键工具与技术总结

  1. 内存马技术

    • 特制版哥斯拉
    • sou5内存马
    • 针对不出网环境的解决方案
  2. 内网扫描工具

    • fscan快速内网资产识别
    • CS自带端口扫描
  3. 漏洞利用

    • Jeecg-Boot RCE
    • S2漏洞
    • 永恒之蓝(MS17-010)
  4. 代理与隧道

    • Socks5代理建立
    • MSF代理设置:
      setg Proxies socks5:127.0.0.1:1080
      setg ReverseAllowProxy true
      

四、经验与教训

  1. 不出网环境处理

    • 内存马是唯一选择
    • 需要准备多种版本的内存马工具
  2. Docker环境限制

    • 逃逸难度大时,建立隧道是更好选择
    • 注意Docker内网的特殊性
  3. 内网横向技巧

    • 密码复用是高效方法
    • 利用已控主机突破隔离
  4. 效率问题

    • Docker小水管导致操作卡顿
    • 需要合理安排渗透顺序

五、防御建议

  1. 对外服务

    • 及时修复已知漏洞(如Jeecg-Boot RCE)
    • 限制不必要的端口暴露
  2. Docker安全

    • 使用非root用户运行容器
    • 限制容器网络权限
  3. 内网安全

    • 避免密码复用
    • 网络隔离策略实施
    • 定期更新内网系统补丁
  4. 监控措施

    • 内存马检测机制
    • 异常网络连接监控

六、参考资源

  1. 内网渗透相关文章:

  2. 工具集合:

    • fscan内网扫描工具
    • 哥斯拉Webshell管理工具
    • MSF渗透框架

本教学文档完整呈现了一次复杂环境下的内网渗透过程,重点突出了在限制条件下的技术解决方案,可作为高级渗透测试人员的实战参考。

Docker复杂环境下的内网渗透实战教学 一、前言 本文详细记录了一次在Docker复杂环境下的内网渗透过程,包含外网打点、Docker环境突破、内网横向移动等完整流程。所有技术仅用于安全研究和防御目的,相关漏洞均已修复。 二、渗透流程概述 外网打点 :通过SQL注入和XXE漏洞获取初始权限 Docker环境突破 :发现目标处于Docker容器内,通过内存马建立隧道 内网横向渗透 :数据库攻陷、系统攻陷、突破内网隔离 最终成果 :控制多台内网主机,获取高权限账户,突破隔离网段 三、详细技术教学 3.1 外网打点阶段 3.1.1 初始漏洞利用 SQL注入利用 : 发现登陆口存在1Day SQL注入漏洞(MySQL) 结合XXE漏洞获取初始系统权限 使用sqlmap等工具自动化利用 隐藏资产发现 : 全端口扫描发现404响应端口 目录扫描发现 /jmreport 路径 确认为Jeecg-Boot系统 3.1.2 Jeecg-Boot RCE利用 确认系统版本后直接利用已知RCE漏洞 获取Webshell权限 3.1.3 反弹Shell受阻处理 目标环境严格限制出网,常规反弹Shell失败 尝试多种内存马注入工具均失败 最终使用特制版哥斯拉成功植入内存马 3.2 Docker环境突破 3.2.1 环境确认 发现当前Shell处于Docker容器内 尝试Docker逃逸未成功 3.2.2 内存马植入技术 手动打入sou5内存马 建立Socks5代理隧道进入Docker内网 关键工具:特制版哥斯拉 3.2.3 内网侦察技术 使用webshell工具自带端口扫描功能 使用fscan快速扫描内网资产 发现MySQL、MSSQL、Web等服务 Linux环境下无需考虑免杀问题 3.3 内网横向渗透 3.3.1 数据库攻陷 MySQL数据库 : 发现Druid未授权访问(但无近期登录记录) 通过Swagger API接口报错注入获取MySQL root密码 破解哈希后连接受阻(数据库限制外部访问) MSSQL数据库 : 通过密码复用进入MSSQL服务器 目标不出网限制进一步利用 3.3.2 系统攻陷 Linux主机 : 利用S2漏洞攻陷不出网的Linux服务器 发现多台SSH弱口令主机 Windows主机 : 利用永恒之蓝(MS17-010)攻陷Windows机器 抓取密码尝试突破内网隔离 3.3.3 突破内网隔离 以攻陷的Windows主机作为跳板 进入内网其他隔离网段 扫描新网段发现更多漏洞: 弱口令 未授权访问漏洞 3.4 关键工具与技术总结 内存马技术 : 特制版哥斯拉 sou5内存马 针对不出网环境的解决方案 内网扫描工具 : fscan快速内网资产识别 CS自带端口扫描 漏洞利用 : Jeecg-Boot RCE S2漏洞 永恒之蓝(MS17-010) 代理与隧道 : Socks5代理建立 MSF代理设置: 四、经验与教训 不出网环境处理 : 内存马是唯一选择 需要准备多种版本的内存马工具 Docker环境限制 : 逃逸难度大时,建立隧道是更好选择 注意Docker内网的特殊性 内网横向技巧 : 密码复用是高效方法 利用已控主机突破隔离 效率问题 : Docker小水管导致操作卡顿 需要合理安排渗透顺序 五、防御建议 对外服务 : 及时修复已知漏洞(如Jeecg-Boot RCE) 限制不必要的端口暴露 Docker安全 : 使用非root用户运行容器 限制容器网络权限 内网安全 : 避免密码复用 网络隔离策略实施 定期更新内网系统补丁 监控措施 : 内存马检测机制 异常网络连接监控 六、参考资源 内网渗透相关文章: 某地级市三甲医院从sql注入到内网漫游 工具集合: fscan内网扫描工具 哥斯拉Webshell管理工具 MSF渗透框架 本教学文档完整呈现了一次复杂环境下的内网渗透过程,重点突出了在限制条件下的技术解决方案,可作为高级渗透测试人员的实战参考。