1.Red Teaming VS Penetration Testing VS漏洞测试
基于威胁的安全测试方法可能使用多个名称; 红队、威胁操作、威胁评估、紫队、对抗评估、渗透测试、漏洞测试。这些并非完全相同,安全行业定义用于建立共同理解的术语非常重要。为了解决这个问题,本文中所有基于威胁的安全测试都将被称为Red Teaming。
定义:红色团队是使用战术、技术和过程(TTP)来模拟现实世界攻击的过程,其目标是训练和衡量用于保护系统环境的人员、过处理流程和技术的有效性。换句话说,红队是使用真实攻击技术来模拟攻击的过程,目的是培训蓝队和/或测量整个安全操作。
红色团队可以深入了解自动攻击行为者对目标的影响。使用反金字塔图,我们可以说明红队,渗透测试和漏洞评估之间的关系。这将有助于进一步定义Red Teaming IS和IS NOT。
脆弱性评估 :脆弱性评估往往覆盖范围广。考虑对所有企业工作站进行漏洞评估。范围很广,但在对企业组织受到风险的背景下了解不是很深。当发现漏洞时,对漏洞风险能说明什么呢?企业组织的总体风险可能会在很小程度上推断,但通常会保持在该工作站级别。漏洞评估擅长减少攻击面,但在企业组织风险方面没有提供太多细节。
渗透测试:通过利用和证明攻击路径将漏洞评估提升到新的水平。渗透测试通常看起来和感觉像一个红色团队的参与,甚至使用一些相同的工具或技术。关键的区别在于目标和意图。渗透测试的目标是对目标系统执行攻击,以识别和测量与目标攻击面的利用相关的风险。企业组织风险可以间接衡量,通常从某些技术攻击中推断出来。人员和流程怎么样?这就是红队适合的地方。红队注重整体安全操作,包括人员、流程和技术。红队特别关注与培训蓝队或衡量安全操作如何影响威胁的操作能力相关的目标。技术缺陷是理解威胁如何影响组织的操作或安全操作如何影响威胁的操作能力的次要因素。
3.红队参考
描述 | 地址 |
---|---|
红队:如何像敌人一样思考 - Micha Zenko | https://www.cfr.org/book/red-team |
Strategic Cyber Blog | http://blog.cobaltstrike.com |
SpecterOps Blog | https://posts.specterops.io |
ThreatExpress Blog | http://threatexpress.com |
Cobalt Strike Aggressor Scripts @ harleyQu1nn | https://github.com/harleyQu1nn/AggressorScripts |
Cobalt Strike Aggressor Scripts @bluescreenofjeff | https://github.com/bluscreenofjeff/AggressorScripts |
Awesome-Red-Teaming | https://github.com/yeyintminthuhtut/Awesome-Red-Teaming |
Red Team Journal | http://redteamjournal.com |
2.1 红队基础设施
有关构建红队基础架构的提示和技巧
2.2.红队工具
2.3.获得权限
侦察
信息收集工具
描述 | 地址 |
---|---|
BloodHound | https://github.com/BloodHoundAD/BloodHound |
DomainHunter | https://github.com/threatexpress/domainhunter |
EyeWitness | https://github.com/ChrisTruncer/EyeWitness |
MailSniper | https://github.com/dafthack/MailSniper |
NMAP | https://nmap.org |
Recon-NG | https://bitbucket.org/LaNMaSteR53/recon-ng |
Shodan | https://www.shodan.io/ |
OPSEC对Beacon命令的注意事项 | https://blog.cobaltstrike.com/2017/06/23/opsec-considerations-for-beacon-commands/ |
武器化
用于创建有效payload的工具
网络钓鱼
初始访问和有效payload交付的工具
描述 | 地址 |
---|---|
Social Engineering Toolkit | https://github.com/trustedsec/social-engineer-toolkit |
GoPhish | https://getgophish.com/ |
FiercePhish | https://github.com/Raikia/FiercePhish |
利用
利用工具
描述 | 地址 |
---|---|
Burp Suite | https://portswigger.net/burp |
Exploit-DB | https://www.exploit-db.com |
Metasploit | https://www.metasploit.com |
Zed Attack Proxy | https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project |
2.4.维持权限
安装
用于持久性和有效payload安装的工具
命令与控制
命令和控制工具与框架
描述 | 地址 |
---|---|
Empire | http://www.powershellempire.com/ |
CobaltStrike | https://cobaltstrike.com/ |
Kodiac | https://github.com/zerosum0x0/koadic |
PoshC2 | https://github.com/nettitude/PoshC2 |
Pupy | https://github.com/n1nj4sec/pupy |
Merlin | https://github.com/Ne0nd0g/merlin |
Metasploit | https://www.metasploit.com/ |
TinyShell | https://github.com/threatexpress/tinyshell |
Throwback | https://github.com/silentbreaksec/Throwback |
WMImplant | https://github.com/ChrisTruncer/WMImplant |
2.5.行动
对目标采取行动
在目标上执行操作的工具
描述 | 地址 |
---|---|
Misc PowerShell Post Exploitation Scripts | https://github.com/rvrsh3ll/Misc-Powershell-Scripts |
Hashcat | https://hashcat.net/hashcat/ |
GhostPack | https://github.com/GhostPack |
DCOM对象用于横向移动 | https://www.cybereason.com/blog/dcom-lateral-movement-techniques |
Mimikatz | https://github.com/gentilkiwi/mimikatz |
PowerUp | https://github.com/PowerShellMafia/PowerSploit/blob/master/Privesc/PowerUp.ps1 |
PowerView的 | https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1 |
WMIOps | https://github.com/ChrisTruncer/WMIOps/ |
2.6.NET
描述 | 地址 |
---|---|
James Forshaw的OleView .NET项目 | https://tyranidslair.blogspot.com/2018/09/finding-interactive-user-com-objects_9.html |
用于从VBS/JScript运行C#的DotNetToJScript项目 | https://github.com/tyranid/DotNetToJScript |
2.7. Windows Active Directory
3.MITER ATT&CK
MITRE的对抗战术,技术和常识(ATT&CK™)是网络对手行为的策划知识库和模型,反映了对手生命周期的各个阶段以及他们已知的目标平台。ATT&CK有助于了解对抗已知对手行为的安全风险,规划安全改进,并验证防御系统是否按预期工作。
ATT&CK 分为战术,技术和过程
- 战术是在行动中对目标可能使用的战术目标。
- 技术描述了为实现其目标所采取的行动。
- 过程是执行操作所需的技术步骤
不管潜在的漏洞是什么,这个框架提供了所有威胁行为的分类
红队可以通过技术研究和经验来模拟真实的TTP攻击。这些信息中的大部分都已提交给ATT&CK。TT&CK可以被认为是TTP的菜单。红队可以利用这一点来确保他们有一套全面的攻击战术、技术和过程,蓝队可以利用这一点来建立一个计分卡,显示他们在防御各种战术、技术和执行过程方面的能力。
参考:
4.红队备忘表
4.1Windows Active Directory
4.2.PowerView
4.3.SANS备忘表
4.4.Blue Teaming Cheat Sheets
4.5.Powershell备忘表
4.6.Bloodhound
5.红队建设清单
这套清单旨在帮助您规划和建立一个红队。每种设计都可能有其他要求。使用此清单作为模板并根据需要进行修改。
- ☐确定所需的知识和技能
- ☐确定并弥补知识所缺的方法
- ☐制定角色和责任指南
- ☐制定红色团队方法
- ☐为参与制定TTP指南
- ☐包括一些技巧
- ☐制定数据收集指南和工具
- ☐制定业务流程计划
- ☐制定沟通计划模板
- ☐制定ROE模板
- ☐制定技术简报模板
- ☐制定报告模板
5.1.规划 - 红队建设核对清单
- ☐参与计划
- ☐RHE
- ☐事件沟通计划
- ☐分散解决意见不一致过程
- ☐切入点/方法
- ☐范围
- ☐目标(应至少解决以下一项问题)
- ☐保护
- ☐检测
- ☐响应
- ☐恢复
- ☐目标限制
- ☐目标基础设施/资产验证/批准
- ☐场景利用
- ☐安全运营影响规划
- ☐RHE
- ☐制定攻击概况
- ☐网络和主机活动
- ☐IOC生成(包括后续分析)和管理
- ☐规划攻击基础设施
- ☐第1层
- ☐入侵防御系统
- ☐系统
- ☐重定向器
- ☐PPS
- ☐第2层
- ☐入侵防御系统
- ☐系统
- ☐重定向器
- ☐PPS
- ☐第3层
- ☐入侵防御系统
- ☐系统
- ☐重定向器
- ☐PPS
- ☐将工具部署到基础架构中
- ☐第1层
- ☐数据收集库
5.2.执行 - 红队建设核对清单
- ☐每日完成和汇总确认
- ☐获取日志信息
- ☐获取屏幕截图
- ☐获取系统变化
- ☐每日(或每日两次)强制性内部RT SITREP
- ☐更新实时攻击图
5.3.收尾 - 红队建设核对清单
- ☐红队攻击结束
- ☐汇总数据
- ☐回滚系统更改
- ☐已收集验证数据
- ☐描述关键攻击图
- ☐技术评审
- ☐执行摘要
- ☐报告
- ☐攻击性报告阐述
- ☐攻击总结
- ☐完成攻击图
- ☐完成报告