레드팀과 블루팀은 공격자와 방어자 역할로 조직의 보안 수준을 시험하고 향상시키는 연습 방식이다. 두 팀의 협업으로 퍼플팀(Purple Team)이 구성되기도 한다.
팀 역할 비교
| 구분 | 레드팀 | 블루팀 | 퍼플팀 |
|---|
| 역할 | 공격자 시뮬레이션 | 방어 및 탐지 | 레드+블루 협업 |
| 목적 | 취약점 발견 | 위협 탐지/대응 | 탐지 능력 향상 |
| 관점 | 공격자 (offensive) | 방어자 (defensive) | 협력 (collaborative) |
| 결과물 | 공격 보고서 | 탐지 규칙, 개선 | 통합 개선 |
레드팀 작전 단계
1. 정찰 → 2. 초기 침투 → 3. 지속성 확보 →
4. 권한 상승 → 5. 횡적 이동 → 6. 목표 달성
레드팀 도구:
- C2 프레임워크: Cobalt Strike, Metasploit, Sliver
- 정찰: Shodan, Maltego, theHarvester
- 익스플로잇: Exploit-DB, 커스텀 페이로드
블루팀 방어 체계
python
# SIEM 탐지 규칙 예시 (Sigma 형식)
sigma_rule = """
title: Suspicious PowerShell Encoded Command
status: production
logsource:
category: process_creation
product: windows
detection:
selection:
CommandLine|contains:
- '-EncodedCommand'
- '-enc '
- '-ec '
Image|endswith: 'powershell.exe'
condition: selection
falsepositives:
- 일부 관리 스크립트
level: high
"""
퍼플팀 운영 방식
MITRE ATT&CK 기반 테스트:
1. 레드팀: ATT&CK 기법 실행 (예: T1055 Process Injection)
2. 블루팀: 탐지 여부 확인
3. 갭 분석: 탐지 못한 기법 파악
4. 탐지 규칙 작성 및 검증
5. 재테스트 → 반복
Atomic Red Team 자동화:
./Invoke-AtomicTest T1055 -TestNumbers 1,2
관련 도구
| 도구 | 팀 | 용도 |
|---|
| Cobalt Strike | 레드 | C2 프레임워크 |
| BloodHound | 레드 | AD 공격 경로 시각화 |
| Splunk / ELK | 블루 | SIEM |
| Velociraptor | 블루 | EDR, 포렌식 |
| Atomic Red Team | 퍼플 | ATT&CK 자동 테스트 |
관련 문서