로그가 보이지 않는다고 해서 반드시 공격자가 흔적을 지운 것은 아닙니다. 확인하려는 이벤트가 기본적으로 기록되는 ‘관리 이벤트’인지, 아니면 별도 설정과 비용이 드는 ‘데이터 이벤트’인지 먼저 가려야 합니다.
CloudTrail 로그 분석 함정: 이벤트 유형 구분
AWS 환경에서 침해사고 조사를 할 때 분석가가 가장 많이 빠지는 함정은 CloudTrail의 모든 활동이 자동으로 기록된다고 믿는 것입니다. CloudTrail은 이벤트 성격에 따라 컨트롤 플레인(관리 이벤트)과 데이터 플레인(데이터 이벤트)으로 명확히 나뉩니다.
1. 컨트롤 플레인: 관리 이벤트 (Management Events)
컨트롤 플레인 활동은 AWS 리소스 생성, 수정, 삭제 같은 관리 작업입니다. 이 관리 이벤트는 트레일(Event Data Store)에 기본 기록되므로, 별도 설정 없이도 계정 내 주요 인프라 변경 사항을 추적할 수 있습니다.
2. 데이터 플레인: 데이터 이벤트 (Data Events)
데이터 플레인은 S3 객체 수준 작업(Get, Put, Delete)이나 Lambda 함수 실행처럼 리소스 내 데이터를 조작하는 활동입니다. 분석가가 주의해야 할 핵심은 다음과 같습니다.
- 기본 비활성화: 데이터 이벤트는 기본적으로 꺼져 있습니다.
- 비용 발생: 수백만 개의 로그가 쏟아질 수 있어 활성화하면 비용이 듭니다.
S3 버킷에서 데이터 유출이 의심되는데 관련 로그가 아예 안 보인다면, 공격자가 로그를 지운 게 아닙니다. 애초에 데이터 이벤트 기록 설정이 안 돼 있었을 가능성이 큽니다.
분석가가 알아야 할 기술적 제약
로그 유무뿐 아니라 기록 시점과 보존 기간에 대한 오해는 타임라인 분석을 그르칠 수 있습니다.
로그 기록 지연 및 보존 기간
분석가는 다음 시간적 제약을 감안해 타임라인을 짭니다.
- 기록 지연: 이벤트는 보통 5분 내에 기록되지만 환경에 따라 15분까지 걸리기도 합니다. 실시간 모니터링 중 로그가 바로 안 뜬다고 기록 안 된 걸로 단정하면 안 됩니다.
- 콘솔 확인 기간: CloudTrail의 ‘이벤트 기록(Event History)’ 메뉴로 콘솔에서 바로 볼 수 있는 관리 이벤트는 최근 90일까지만 조회 가능합니다.
- 장기 보존 전략: 90일이 넘는 장기 분석이나 규제 준수가 필요하면 CloudTrail Lake를 쓰세요. SQL 쿼리로 최대 7~10년까지 로그를 보존하고 분석할 수 있습니다.
최신 분석 기능 활용
2024년 추가된 ‘네트워크 활동 이벤트(Network Activity Events)’ 기능으로 VPC 엔드포인트에 닿는 컨트롤 플레인 호출을 기록합니다. 네트워크 수준 API 호출 추적이 가능해져 분석 가시성이 높아졌습니다.
IAM 행위 추적 및 자격 증명 분석 가이드
침해사고 분석 핵심은 ‘누가(Who)’ 행위했는지 식별하는 것입니다. 특히 임시 자격 증명을 쓴 공격자라면 액세스 키 접두사로 정체를 빨리 파악해야 합니다.
자격 증명 유형별 접두사 구분
로그 내 액세스 키 ID 접두사로 자격 증명 성격을 다음처럼 구분할 수 있습니다.
| 접두사 | 의미 | 특징 및 분석 시 시사점 |
|---|---|---|
| AKIA | 장주기 IAM 사용자 키 | 고정된 자격 증명으로, 유출 시 지속적인 접근 허용 |
| ASIA | 임시 STS 키 | 도난된 인스턴스 자격 증명 등 임시 세션 기반 키 |
| AROA | 역할 고유 ID | 특정 IAM 역할(Role)에 부여된 고유 식별자 |
임시 자격 증명의 유효 기간
임시 역할 자격 증명을 추적할 때는 해당 키 유효 기간을 고려해야 합니다. 일반적 임시 역할 자격 증명은 최대 12시간 유효하며, 역할 체이닝(Role Chaining)이 발생하면 유효 기간이 1시간으로 줄어듭니다. 이 시간을 벗어난 활동은 새 세션 생성이나 다른 자격 증명 사용을 의미하니 타임라인 분리 시 중요한 기준이 됩니다.
보안 분석가를 위한 최종 체크리스트
분석 중 ‘로그 부재’ 상황이라면 다음 순서로 검증해 보세요.
- 이벤트 유형 확인: 찾는 로그가 데이터 이벤트(S3 객체 접근 등)인가요? 그렇다면 데이터 이벤트 설정이 활성화되어 있었는지 확인하세요.
- 시간 범위 확인: 이벤트 발생 시점으로부터 15분이 지났나요?
- 보존 기간 확인: 발생 시점이 90일 전인가요? 콘솔의 이벤트 기록이 아닌 CloudTrail Lake나 S3 백업 로그를 확인하세요.
- 식별자 분석: 사용된 키가 ASIA(임시 키)라면 유효 기간(1~12시간) 내 발생 활동인지 분석하세요.