红队测试从0到1 - PART 1
字数 1639 2025-08-29 08:32:30
红队测试从0到1 - 完整教学文档
1. 红队测试概述
1.1 定义
红队测试是全方位、多层次的攻击模拟,旨在衡量企业人员、网络、应用程序和硬件设施的安全控制在多大程度上能够抵御现实世界对手的攻击。红队通过制定攻击方案揭示潜在的物理、硬件、软件和人为漏洞。
1.2 红队测试 vs 渗透测试
| 特征 | 渗透测试 | 红队测试 |
|---|---|---|
| 范围 | 有限且明确 | 整个组织环境 |
| 时间 | 短期(几天到几周) | 长期(数周到数月) |
| 方法 | 传统漏洞利用 | 多样化攻击手段 |
| 隐蔽性 | 动静较大易被发现 | 高度隐蔽 |
| 目标 | 发现漏洞 | 模拟真实攻击全流程 |
| 社会工程 | 通常不包含 | 包含 |
| 权限维持 | 不强调 | 强调 |
2. 红队测试流程
2.1 主要阶段
- 信息侦察:收集员工、管理员、技术栈、安全设备等信息
- 物理安全:绕过物理安全措施
- 社会工程:网络钓鱼、假冒身份等
- 漏洞利用:Payload投递与执行
- 权限维持:提权、持久化、建立跳板
- 后期利用:横向移动、数据外泄
2.2 初始目标
- 在目标网络内获得初始立足点
- 保持隐蔽性
- 规避AV/端点保护/NIDS检测
3. C2框架选择
3.1 推荐框架
- Cobalt Strike:商业红队框架(3500美元/年)
- PowerShell Empire:开源免费框架
3.2 PowerShell Empire优势
- 灵活性和弹性:掉线后可自动重连
- 语言优势:基于PowerShell(Windows)和Python(Unix)
- 代理感知:自动获取系统代理设置
- 可拓展C2配置:可自定义通信特征
- 无powershell.exe执行:可绕过PowerShell执行限制
- 混淆功能:内置Invoke-Obfuscation模块
- 持久性模块:多种可靠的持久化方法
- 丰富后利用模块:信息收集、横向移动等
- 多样化监听器:支持HTTP、HTTP_HOP等协议
4. C2基础设施设计
4.1 基础设施组件
- C2服务器:命令与控制核心
- 重定向器:保护C2服务器
- 钓鱼服务器:用于社会工程攻击
- Payload投递服务器:分发恶意负载
4.2 设计原则
- 隔离:不同组件部署在不同服务器
- 短程/长程C2分离:短程(频繁回调)和长程(低频回调)服务器分开
- 弹性:单一组件被发现不影响整体
4.3 重定向技术
4.3.1 哑管重定向
- 使用Socat将所有流量转发到C2服务器
- 基本语法:
Socat TCP4-LISTEN:80,fork TCP4:<REMOTE-HOST-IP-ADDRESS>:80
4.3.2 智能重定向
- 仅转发C2流量,其他流量重定向到合法网站
- 实现方法:Apache mod_rewrite
- 示例.htaccess配置:
RewriteEngine On RewriteCond %{REQUEST_URI} ^/(owa/mail/inbox.srf|owa/mail/drafts.srf|owa/mail/archive.srf)/?$ RewriteCond %{HTTP_USER_AGENT} ^Mozilla/5\.0\ $Windows\ NT\ 6\.1;\ WOW64;\ Trident/7\.0;\ yie11;\ rv:11\.0$\ like\ Gecko?$ RewriteRule ^.*$ http://[C2 server]%{REQUEST_URI} [P] RewriteRule ^.*$ https://login.microsoftonline.com/? [L,R=302]
4.4 SSL加密配置
- 在重定向器启用SSL:
a2enmod ssl - 修改SSL配置文件:
SSLProxyEngine On SSLProxyVerify none SSLProxyCheckPeerCN off SSLProxyCheckPeerName off - 更新重写规则使用HTTPS
4.5 日志管理
- 目的:监控蓝队调查活动
- 监控内容:
- 访问IP地址
- 时间戳
- 访问URL
- 响应代码
- User-Agent
- 工具选择:根据基础设施规模选择集中式日志管理工具
5. Empire配置示例
5.1 监听器配置
listeners
uselistener http
set Name microsoft
set DefaultJitter 0.6
set DefaultDelay 11
set DefaultProfile /owa/mail/inbox.srf,/owa/mail/drafts.srf,/owa/mail/archive.srf|Mozilla/5.0(Windows NT 6.1; WOW64; Trident/7.0; yie11; rv:11.0)like Gecko|Accept:*/*
set Host http://[Redirector-ip]:80
5.2 启动Empire
./empire -r microsoft.profile
6. 关键注意事项
- 隐蔽性:所有操作应尽可能模拟正常流量
- 弹性设计:确保单一组件失效不影响整体
- 流量伪装:选择与目标环境相符的伪装策略
- 持续监控:密切关注蓝队响应活动
- 应急计划:准备备用方案应对域名/IP被封情况
7. 后续步骤
- Payload创建与投递:制作规避AV检测的有效负载
- 权限提升:从初始访问到系统权限
- 横向移动:在网络内部扩展控制范围
- 数据外泄:隐蔽地提取敏感数据
- 痕迹清理:清除活动证据
这份文档涵盖了红队测试的基础概念、框架选择、基础设施设计和关键配置步骤,可作为红队测试入门的实用指南。后续可在此基础上深入探讨Payload制作、权限维持和后期利用等技术细节。