2. 위협 프로파일 작성¶
왜 필요한가¶
레드팀은 "APT 그룹 X"를 완벽히 흉내 낼 수 없다 — 실제 공격자는 맞춤 도구·공격 코드를 만들 시간·돈·자원이 있다. 대신 공격자를 핵심 요소로 분해한 뒤 재조합해서, 예산·시간 안에서 위협의 본질만 모방한다.
위협 프로파일 = 레드팀이 어떻게 행동할지 정하는 규칙서이자 지도. 공격 측과 방어 측 모두가 '같은 위협'을 상정하게 만든다.
작성 절차¶
- 실존 위협 조사
- 핵심 요소로 분해 (특성, 목표·의도, 주요 흔적, C2 개요, 공격 방식, 지속성)
- 부족한 부분은 대체 기법으로 채워 프로파일로 재조합 — MITRE ATT&CK가 좋은 소스
프로파일 구성 항목 (템플릿)¶
| 항목 | 내용 |
|---|---|
| 특성 (Description) | 위협의 전반적 성격 (예: 중급 공격자, 널리 알려진 도구 사용) |
| 목표와 의도 | 무엇을 위해 움직이는가 |
| 주요 흔적 (Key IOCs) | 남기는 침해 지표 |
| C2 개요 | 통신 설계 (프로토콜, 재접속 주기 등) |
| TTP | 조사·침투·측면 이동·권한 상승 방식 |
| 공격 방식 (Exploitation) | 취약점 공격 방식 (또는 '침해 가정'으로 생략) |
| 지속성 (Persistence) | 접근을 유지하는 방법 |
C2 채널 하나당 프로파일 하나
위협 프로파일은 작전의 이야기를 뒷받침하며, 개별 C2 채널의 기술적 행동을 기술한다.
MITRE ATT&CK — 공격 기법 메뉴판¶
ATT&CK는 실제 공격 행동을 정리한 지식베이스. 전술(공격자의 목표) → 기법(목표 달성 행동) → 절차(구체적 수행 방법)로 구성된다.
| 전술 (Tactic) | 의미 |
|---|---|
| 초기 접근 | 네트워크에 첫 발판을 마련하는 수단 |
| 실행 | 공격자 코드를 로컬/원격에서 실행 |
| 지속성 | 재부팅·비밀번호 변경 후에도 살아남기 |
| 권한 상승 | 더 높은 권한 획득 |
| 방어 회피 | 탐지·방어 우회 (다른 모든 단계에 걸쳐 적용) |
| 자격 증명 탈취 | 정상 계정 정보 획득 — 정상 사용자처럼 보이게 함 |
| 정보 수집 (Discovery) | 침해한 시스템과 내부 네트워크 파악 |
| 측면 이동 | 다른 시스템으로 이동·제어 |
| 수집 (Collection) | 유출 전 정보 모으기 |
| 유출 | 데이터 반출 |
| 명령·제어 (C2) | 침해 시스템과의 통신 |
- 레드팀: 프로파일이 실제 위협다운지 검증하는 데 활용
- 블루팀: 각 기법별 방어 점수표(어떤 기법을 탐지·차단할 수 있는가)로 활용
공격자의 관점 (시작점)¶
| 관점 | 접근 수준 | 예시 |
|---|---|---|
| 외부자 (Outsider) | 정당한 접근 없음 | 경쟁사 직원 |
| 인접자 (Nearsider) | 건물·장비에 물리적 접근만 가능 | 청소·경비 직원 |
| 내부자 (Insider) | 정당한 접근 권한 보유 | 악의적 관리자, 또는 이용당하는 일반 직원 |
시작점은 목표로부터 거꾸로 정하라. 내부 네트워크 이동 탐지 능력을 재는 게 목표라면, 굳이 외부 침입부터 하느라 시간을 쓸 필요 없다 — 내부에서 시작한다.
작전 시나리오 모델¶
| 모델 | 시작점 | 특성 |
|---|---|---|
| 전 과정 수행 (Full Engagement) | 1일차, 조직 외부 | 모든 단계 수행. 가장 현실적이지만 오래 걸리고 기한 내 목표 미달 위험. 백업으로 화이트카드(성공 가정) 계획 필요 |
| 침해 가정 (Assumed Breach) | 이미 뚫린 상태 | 상주·행동 단계에 집중. 자원 효율이 가장 좋아 권장. 단, 미성숙한 조직은 "접근을 받아서 한 거지"라며 결과를 폄하할 수 있음 |
| 맞춤형 (Custom) | 공격 주기의 임의 지점 | 특정 영역만 시험. 거의 항상 사전 공개·실시간 조율 |
흔적(IOC) 관리¶
레드팀이 남기는 흔적과 블루팀이 그 흔적을 찾아내는 상호작용이 레드티밍의 심장이다. 작전 요원은 자기가 쓰는 도구·행동이 어떤 흔적을 만드는지 알고 통제해야 한다:
- 도구의 동작 방식과 남기는 흔적 파악
- 도구 재컴파일 (함수명 변경, 주석·도움말·안 쓰는 코드 제거로 탐지 회피)
- User-Agent 문자열 통제 (예: sqlmap은 기본값에 'sqlmap'이 그대로 들어감)
- 의도한 타이밍 전까지 정상 트래픽에 섞여 위장