项目概述
【免费下载链接】invoke-atomicredteamInvoke-AtomicRedTeam is a PowerShell module to execute tests as defined in the [atomics folder](https://github.com/redcanaryco/atomic-red-team/tree/master/atomics) of Red Canary's Atomic Red Team project.项目地址: https://gitcode.com/gh_mirrors/in/invoke-atomicredteam
Invoke-AtomicRedTeam 是一个功能强大的 PowerShell 模块,专门用于执行 Red Canary 的 Atomic Red Team 项目中定义的原子测试用例。该项目基于业界标准的 MITRE ATT&CK 框架,将复杂的红队操作简化为可执行的原子级别测试,帮助安全团队验证和提升防御能力。
核心特性
- 跨平台支持:支持 Windows、macOS 和 Linux 系统
- 标准化测试:每个原子测试对应 MITRE ATT&CK 框架中的特定技术
- 简单易用:通过 PowerShell 命令即可执行复杂的攻击模拟
- 模块化设计:清晰的 Public 和 Private 目录结构,便于功能扩展
项目结构解析
invoke-atomicredteam/ ├── Public/ # 公共函数模块 │ ├── Invoke-AtomicTest.ps1 # 核心测试执行函数 │ ├── Get-AtomicTechnique.ps1 # 获取原子技术信息 │ ├── AtomicRunnerService.ps1 # 原子运行器服务 │ └── ... # 更多公共功能模块 ├── Private/ # 私有函数模块 │ ├── AtomicClassSchema.ps1 # 原子类架构定义 │ ├── Invoke-ExecuteCommand.ps1 # 命令执行功能 │ └── ... # 内部实现细节 ├── docker/ # Docker 容器化部署 ├── kubernetes/ # Kubernetes 编排配置 ├── sandbox/ # 沙箱环境配置 └── 配置文件与安装脚本快速安装指南
安装 PowerShell 模块
项目提供了专门的安装脚本install-atomicredteam.ps1,可以快速完成环境部署:
# 执行安装脚本 .\install-atomicredteam.ps1依赖要求
- PowerShell 5.0 或更高版本
- 对于 macOS 和 Linux 系统,需要先安装 PowerShell Core
- 需要 powershell-yaml 模块支持
基础使用方法
执行原子测试
使用Invoke-AtomicTest函数执行具体的原子测试:
# 执行特定技术的原子测试 Invoke-AtomicTest -AtomicTechnique "T1059" -TestNumbers @("1","2") # 查看测试详情 Invoke-AtomicTest -AtomicTechnique "T1566" -ShowDetails获取技术信息
# 获取原子技术信息 Get-AtomicTechnique -TechniqueID "T1059"高级功能特性
测试参数配置
-TestNumbers:指定要执行的具体测试编号-TestNames:通过测试名称筛选-TestGuids:通过 GUID 标识符执行测试-ShowDetailsBrief:显示简化的测试详情
跨平台执行
项目支持在不同操作系统上执行原子测试,但需要确保:
- Windows:原生支持 PowerShell
- macOS/Linux:需要安装 PowerShell Core
- 所有平台都需要适当的权限和测试环境
安全注意事项
重要警告:执行原子测试可能使系统处于不稳定状态。在使用前请务必:
- 充分理解每个测试的具体作用和影响
- 确保拥有执行测试的合法权限
- 建议在专门的测试环境中执行原子测试
- 确保端点检测与响应解决方案正常运行
- 定期备份重要数据和配置
实战应用场景
企业安全评估
定期运行 Atomic Red Team 测试,持续验证以下安全控制措施:
- 防病毒软件检测能力
- 端点保护效果
- 安全监控有效性
- 安全事件响应流程
安全团队培训
利用预设的攻击模拟场景:
- 新员工安全意识培训
- 应急响应团队技能提升
- 红蓝对抗演练准备
配置与优化
环境变量设置
虽然没有独立的配置文件,但可以通过环境变量调整行为:
# 设置日志级别 $env:ART_LOG_LEVEL = "DEBUG" # 配置输出格式 $env:ART_OUTPUT_FORMAT = "JSON"执行上下文控制
# 指定执行平台 Invoke-AtomicTest -AtomicTechnique "T1059" -anyOS # 批量执行相关技术测试 $techniques = @("T1059", "T1566", "T1047") foreach ($tech in $techniques) { Invoke-AtomicTest -AtomicTechnique $tech }容器化部署
项目提供了 Docker 和 Kubernetes 支持:
Docker 部署
# 使用 Docker 容器执行测试 docker build -t atomic-redteam . docker run atomic-redteamKubernetes 编排
使用提供的k8s-deployment.yaml文件在 Kubernetes 集群中部署。
最佳实践建议
- 环境隔离:在独立的测试环境中执行原子测试
- 权限管理:确保拥有执行测试的适当权限
- 监控集成:将测试结果集成到现有的安全监控系统中
- 持续改进:根据测试结果不断优化安全防御策略
故障排除
常见问题解决
- 模块加载失败:检查 PowerShell 执行策略
- 依赖缺失:确保 powershell-yaml 模块正确安装
- 权限错误:以管理员权限运行 PowerShell
通过本指南,您可以快速掌握 Invoke-AtomicRedTeam 的核心功能和使用方法,开始您的红队测试和安全评估工作。记住,安全测试的目的是为了提升整体安全防护能力,请始终在合法合规的前提下进行操作。
【免费下载链接】invoke-atomicredteamInvoke-AtomicRedTeam is a PowerShell module to execute tests as defined in the [atomics folder](https://github.com/redcanaryco/atomic-red-team/tree/master/atomics) of Red Canary's Atomic Red Team project.项目地址: https://gitcode.com/gh_mirrors/in/invoke-atomicredteam
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考