30 SIEM
AWS VS 외부 SIEM 비교
❓ SIEM
SIEM은 '보안 정보 및 이벤트 관리(Security Information and Event Management)'의 약자로, 시스템에서 발생하는 로그와 이벤트 데이터를 수집하고 분석하여 잠재적인 보안 위협을 실시간으로 탐지하고 대응하는 통합 보안 솔루션입니다.- 이를 통해 비정상적인 활동을 조기에 파악하고, 사고 조사 시간을 단축하며, 규정 준수 요구사항을 충족할 수 있습니다.
SIEM의 주요 기능
- 로그 수집 및 관리: 시스템, 서버, 앱 등 다양한 소스에서 발생하는 방대한 로그 데이터를 한곳에 모아 중앙 집중식으로 관리
- 이벤트 상관 관계 분석: 1. 수집된 데이터 분석 2. 여러 이벤트 간의 연관성을 파악 3. 잠재적인 위협을 신속하게 탐지 (
TI) - 실시간 모니터링 및 경보: 의심스러운 활동이 감지되면 즉시 보안팀에 경보를 보내어 신속하게 대응할 수 있도록 지원 (알람 시스템)
- 컴플라이언스 및 보고: 규정 준수를 위해 필요한 보안 감사 및 보고서 생성
- AWS 서비스를 통해서
SIEM구성 가능 - 클라우드 내부 서비스가 아닌 외부
SIEM으로 아래 두 서비스가 있습니다.- Splunk
- Datadog
AWS SIEM
AWS SIEM의 주요 기능은 다음과 같습니다:
- CloudTrail
- API 호출 로그 수집
- VPC Flow Logs
- 네트워크 흐름 로그 수집
- Config
- 리소스 구성 변경 추적
- Security Hub
- GuardDuty
- Inspector
-
보안 데이터 통합 관리
- Athena + S3
- 로그 저장 후 SQL 분석
-
SPLUNK
- CISCO에서 약 280억 달러 주고 인수한 제품이라고 합니다.
- 시스템, 네트워크, 애플리케이션 등에서 발생하는 머신 데이터(machine data)를 수집·저장·검색·시각화하여 운영 상태를 분석하고 보안 위협을 탐지할 수 있는 로그 분석 플랫폼
Splunk는 3계층 구조으로 구성됩니다
[데이터 소스]
↓
[Forwarder] → [Indexer] → [Search Head]
└── splunk에서 index는 사실상 db/table과 같은 기능을 합니다.
Splunk / AWS SIEM 비교
| 항목 | Splunk | AWS SIEM (ex: Security Lake / GuardDuty / CloudWatch 등 조합) |
|---|---|---|
| 정식 이름 / 형태 | Splunk Enterprise / Splunk Cloud (독립형 SIEM 솔루션) | AWS 보안 서비스 조합으로 구축하는 클라우드 네이티브 SIEM |
| 제공 주체 | Splunk Inc. (타사 보안 분석 플랫폼) | Amazon Web Services (자사 클라우드 서비스 기반) |
| 기반 인프라 | 온프레미스 / 클라우드 모두 가능 | AWS 클라우드 전용 (S3, Athena, GuardDuty 등 통합) |
| 유형 | 범용 로그 분석& SIEM 솔루션 | 클라우드 네이티브 SIEM 프레임워크 |
| 중심 목표 | 모든 IT 환경(서버, 네트워크, 앱 등)의 로그 를 수집-분석 | AWS 자원 및 서비스의 보안 이벤트를 통합 관 리 |
Splunk가 필요한 상황은 클라우드 사용이 어려울 때라고 합니다.정부 규제 등으로 인해 클라우드를 사용할 수 없는 기관에서보안 뿐만 아니라 일반적인 운영/로그 툴로 사용한다고 합니다.
Splunk와 같은 외부 SIEM 필요한 경우는 다음과 같습니다:
- 클라우드 사용이 어려운 곳 예시: 금융사 & 증권사 & 병원
- AWS 계정 1-3개가 아니라 수십-수백개 필요
- 온프레미스 방화벽/로그 포함
ISMS-P/PCI-DSS/ISO 27001인증
이후로는 Splunk 계정 생성 및 체험 기간 등록과 간략한 실습이 이어졌습니다.
Splunk 실습 메모
실습 중에 유용한 정보를 메모했습니다. 실제로 사용하면서 참고하며 익히면 좋을 것 같습니다. 로그 검색에 쿼리를 적용한 것과 유사해보입니다.
- earliest 설정
- 검색(Search) 쿼리의 시간 범위를 지정할 때 사용하는 매우 중요한 파라미터
index
- Index = 데이터가 저장되는 물리적·논리적 저장소
- 들어오는 모든 로그나 이벤트 데이터를 "어떤 인덱스(index)에 저장할지"를 기준으로 구분하고, 검색 시에도 "어떤 인덱스에서 검색할지"를 지정
- 로그나 이벤트 데이터를 저장하고 관리하기 위한 데이터베이스와 유사한 구조
- Index 종류:
| 구분 | 설명 | 예시 |
|---|---|---|
| Main Index | Splunk 기본 인덱스 (default) | index=main |
| Custom Index | 사용자가 직접 만든 인덱스 | index=security, index=firewall, index=web_logs |
| Internal Index | Splunk 자체 동작 관련 로그 저장 | _internal, _audit, _introspection 등 |
| Summary Index | 요약 데이터 저장용 (성능 최적화 용) | index=summary |
- 인덱스 수명 관리
- 각 인덱스는 저장 기간을 따로 설정 할 수 있음 예를 들어 보안 로그는 오래 보관하고, 웹 로그는 짧게 유지
- frozenTimePeriodInSecs 옵션으로 관리 만료된 데이터는 자동으로 삭제되거나 보관(frozen)
- 인덱스 검색 예시
- index=firewall action=blocked
- index=security OR index=firewall
- index=web_logs earliest=-1h error
| 인덱스 | 보관 기간 | 설명 |
|---|---|---|
| security | 180일 | 중요 보안 로그 |
| web_logs | 30일 | 웹서버 트래픽 로그 |
| app_debug | 7일 | 개발 테스트용 로그 |
- 접근 제어 [Role-Based Access Control] / RBAC
- 인덱스 단위로 접근 권한을 설정 가능
- security 인덱스 -> 보안팀만 접근 가능
- web_logs 인덱스 -> 개발팀도 접근 가능