Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
PurpleKeep — 提供 Azure 管道来创建基础设施并运行 Atomic 测试。 | Kitploit
工具/GitHubGitHub/retrospected/purplekeep
渗透测试云安全威胁情报学习与教育红队事件响应实验室与实践
GitHubretrospected/purplekeep

PurpleKeep

提供 Azure 管道来创建基础设施并运行 Atomic 测试。

查看仓库
5363年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

描述

随着攻击技术的种类迅速增加,同时 EDR(端点检测与响应)提供的检测规则以及自定义规则数量也在上升,对检测规则进行持续功能测试的需求变得显而易见。然而,手动重复执行这些攻击并与检测规则进行交叉核对是一项劳动密集型任务,值得自动化处理。

为应对这一挑战,我开发了"PurpleKeep"——一个旨在促进检测规则自动化测试的开源项目。利用 Atomic Red Team 项目的能力,该项目允许按照 MITRE TTPs(战术、技术和程序)模拟攻击。PurpleKeep 增强了这些 TTP 的模拟,作为评估检测规则有效性的起点。

在测试环境中自动化模拟一个或多个 TTP 的过程伴随着某些挑战,其中之一是在多次模拟之后平台的污染。然而,PurpleKeep 旨在通过简化模拟过程并促进目标平台的创建和工具化来克服这一障碍。

PurpleKeep 主要作为概念验证而开发,是一个专为 Azure 环境设计的端到端检测规则验证平台。它已结合 Microsoft Defender for Endpoint 的自动部署作为首选 EDR 解决方案进行了测试。PurpleKeep 还支持安全与审核策略配置,允许用户模拟所需的端点环境。

为便于分析和监控,PurpleKeep 与 Azure Monitor 和 Log Analytics 服务集成,以存储模拟日志,并允许与同一平台中存储的任何事件和/或告警进行进一步关联。

TLDR:PurpleKeep 提供了一个攻击模拟平台,作为在 Azure 环境中进行端到端检测规则验证的起点。

要求

该项目基于 Azure Pipelines,运行需满足以下条件:

  • 与资源组的 Azure 服务连接,如 Microsoft Docs 所述
  • 为之前创建的企业应用程序分配"Key Vault 管理员"角色
  • MDE 入职脚本,作为安全文件放置在 Azure DevOps 的库中,并使管道可访问

可选

您可以提供一个安全和/或审核策略文件,该文件将被加载以模拟您的组策略配置。使用 Azure DevOps 库中的安全文件选项,使其可被您的管道访问。

请参考 variables 文件获取可配置项。

设计

PurpleKeep Design

基础设施

部署基础设施使用 Azure Pipeline 执行以下步骤:

  • 部署 Azure 服务:
    • Key Vault
    • Log Analytics 工作区
    • 数据连接端点
    • 数据连接规则
  • 生成 SSH 密钥对和 Windows 账户密码,并存储在 Key Vault 中
  • 创建 Windows 11 虚拟机
  • 安装 OpenSSH
  • 配置并部署 SSH 公钥
  • 安装 Invoke-AtomicRedTeam
  • 安装 Microsoft Defender for Endpoint 并配置排除项
  • (可选)应用安全和/或审核策略文件
  • 重启

模拟

目前仅支持来自公共仓库的 Atomics。管道接受一个 Technique ID 作为输入,或者一个以逗号分隔的技术列表,例如:

  • T1059.003
  • T1027,T1049,T1003

模拟的日志被采集到 Log Analytics 工作区的 AtomicLogs_CL 表中。

目前有两种运行模拟的方式:

轮换模拟

此管道将在每个 TTP 模拟后部署一个全新的平台。Log Analytic 工作区将保留每次运行的日志。

警告:这将使大量主机入职到您的 EDR

单次部署模拟

仅在管道开始时部署一次全新的基础设施。所有 TTP 将在此实例上进行模拟。这是最快的模拟方式,并且可以避免入职大量设备,但在同一环境中运行大量模拟存在环境污染的风险,使模拟变得不稳定和不可预测。

待办事项

必需

  • 在执行原子测试前检查是否满足先决条件
  • 提供导入自定义组策略的能力
  • 通过使用主模板清理 Bicep 文件和管道(完成构建)
  • 构建管道以顺序执行技术,并在之间重启
  • 将 Azure 服务连接添加到变量而非参数

锦上添花

  • MDE 退出(?)
  • 自动加入和离开 AD 域
  • 使 Atomics 仓库可配置
  • 将 VECTR 部署为基础设施的一部分,并在模拟期间采集结果。另请参见 VECTR API 问题
  • 优化针对 Microsoft Defender for Endpoint 的告警 API 调用(Microsoft.Security alertsSuppressionRules)
  • 为手动或基于 C2 的模拟添加 C2 基础设施

已知问题

  • Atomics 不返回模拟是否成功
  • OpenSSH 扩展安装器不可靠,导致基础设施部署失败
  • 在 EDR 中大量刷入已入职设备

参考

  • Splunk's Attack Range
  • Sp4rkCon 2023 - Continuous End-to-End Detection Validation and Reporting with Carrie Roberts
  • Red Canary's Coalmine
下载工具