
Azure 파이프라인을 제공하여 인프라를 구축하고 Atomic 테스트를 실행합니다.
공격 기술의 다양성이 급격히 증가하고 EDR(Endpoint Detection and Response)에서 제공하는 탐지 규칙과 사용자 정의 규칙이 동시에 증가함에 따라 탐지 규칙의 지속적인 기능 테스트 필요성이 명확해졌습니다. 그러나 이러한 공격을 수동으로 재실행하고 탐지 규칙과 대조하는 것은 노동 집약적인 작업이므로 자동화할 가치가 있습니다.
이 문제를 해결하기 위해 저는 "PurpleKeep"을 개발했습니다. 이는 탐지 규칙의 자동화된 테스트를 용이하게 하기 위해 설계된 오픈 소스 이니셔티브입니다. Atomic Red Team 프로젝트의 기능을 활용하여 MITRE TTPs(전술, 기법, 절차)에 따른 공격을 시뮬레이션할 수 있습니다. PurpleKeep은 이러한 TTP의 시뮬레이션을 강화하여 탐지 규칙의 효과성을 평가하기 위한 시작점으로 사용됩니다.
테스트 환경에서 하나 이상의 TTP를 시뮬레이션하는 프로세스를 자동화하려면 여러 시뮬레이션 후 플랫폼이 오염되는 등의 문제가 따릅니다. 그러나 PurpleKeep은 시뮬레이션 프로세스를 간소화하고 대상 플랫폼의 생성 및 계측을 용이하게 하여 이 장애물을 극복하는 것을 목표로 합니다.
주로 개념 증명으로 개발된 PurpleKeep은 Azure 기반 환경에 맞춘 종단 간 탐지 규칙 검증 플랫폼 역할을 합니다. 기본 EDR 솔루션으로 Microsoft Defender for Endpoint의 자동 배포와 함께 테스트되었습니다. 또한 PurpleKeep은 보안 및 감사 정책 구성을 지원하여 사용자가 원하는 엔드포인트 환경을 모방할 수 있도록 합니다.
분석 및 모니터링을 용이하게 하기 위해 PurpleKeep은 Azure Monitor 및 Log Analytics 서비스와 통합되어 시뮬레이션 로그를 저장하고 동일한 플랫폼에 저장된 이벤트 및/또는 경고와의 추가 상관 관계를 허용합니다.
요약: PurpleKeep은 Azure 기반 환경에서 종단 간 탐지 규칙 검증을 위한 시작점 역할을 하는 공격 시뮬레이션 플랫폼을 제공합니다.
이 프로젝트는 Azure Pipelines를 기반으로 하며 실행을 위해 다음이 필요합니다:
그룹 정책 구성을 모방하기 위해 로드될 보안 및/또는 감사 정책 파일을 제공할 수 있습니다. Azure DevOps 라이브러리의 Secure File 옵션을 사용하여 파이프라인에서 액세스 가능하도록 설정하세요.
구성 가능한 항목은 variables 파일을 참조하세요.

인프라 배포는 Azure Pipeline을 사용하여 다음 단계를 수행합니다:
현재 공개 리포지토리의 Atomics만 지원됩니다. 파이프라인은 기술 ID 하나 또는 쉼표로 구분된 기술 목록을 입력으로 받습니다. 예:
시뮬레이션 로그는 Log Analytics Workspace의 AtomicLogs_CL 테이블에 수집됩니다.
현재 시뮬레이션을 실행하는 두 가지 방법이 있습니다:
이 파이프라인은 각 TTP를 시뮬레이션한 후 새 플랫폼을 배포합니다. Log Analytic workspace는 각 실행의 로그를 유지합니다.
경고: 이 방법은 EDR에 많은 수의 호스트를 온보딩합니다.
새 인프라는 파이프라인 시작 시에만 배포됩니다. 모든 TTP가 이 인스턴스에서 시뮬레이션됩니다. 이것은 가장 빠른 시뮬레이션 방법이며 많은 수의 디바이스를 온보딩하는 것을 방지하지만, 동일한 환경에서 많은 시뮬레이션을 실행하면 환경이 오염되어 시뮬레이션이 덜 안정적이고 예측 불가능해질 위험이 있습니다.