위협 인텔리전스 피드 수집
개요
KYRA MDR은 주요 위협 인텔리전스 피드와 통합하여 침해지표(IOC) — 악성 IP, 도메인, 파일 해시, URL, 이메일 주소를 자동으로 수집합니다. 이러한 지표는 환경의 보안 이벤트와 실시간으로 상관분석되어 알려진 위협을 탐지합니다.
TI 수집 시스템은 스케줄러 기반 모델로 운영됩니다: 각 피드는 독립적인 동기화 간격, API 자격증명 및 상태 추적이 구성됩니다. 플랫폼은 5분마다 동기화가 필요한 피드를 확인하고 자동으로 새 지표를 가져옵니다.
지원 피드 유형
| 피드 유형 | 설명 | 데이터 소스 |
|---|---|---|
| AlienVault OTX | Open Threat Exchange — 커뮤니티 기반 IOC 공유 | 구독 펄스, IP/도메인/해시 평판 |
| AbuseIPDB | IP 악용 신고 및 블랙리스트 | 신뢰도 점수가 포함된 블랙리스트 IP |
| VirusTotal | 악성코드 분석 및 URL 스캐닝 | 파일 해시, URL, 도메인 평판 |
| MISP | Malware Information Sharing Platform | STIX 2.1 형식의 위협 이벤트 |
| Custom STIX | STIX 2.1 JSON 피드 URL | STIX 번들의 지표 |
| Custom CSV | CSV 형식 지표 피드 | 심각도 및 태그가 포함된 파싱된 지표 |
작동 방식
flowchart LR
FEEDS[외부 피드] -->|API 호출| SCHEDULER[피드 스케줄러]
SCHEDULER -->|5분마다 확인| SYNC[동기화 엔진]
SYNC -->|파싱 & 검증| UPSERT[IOC 데이터베이스]
UPSERT -->|상관분석| ALERTS[알림 엔진]
ALERTS -->|보강된 알림| CONSOLE[관리 콘솔]
수집 흐름
-
구성 — 분석가가 관리 콘솔(위협 인텔리전스 → 피드 탭)에서 피드 유형, API 키, 동기화 간격을 설정합니다.
-
스케줄링 — 피드 스케줄러가 5분마다 실행되어 각 활성 피드의
마지막 동기화 시간 + 간격을 확인합니다. 동기화가 필요한 피드만 실행됩니다. -
수집 — 동기화가 필요한 각 피드에 대해:
- 구성된 자격증명으로 피드 API를 호출합니다
- 응답을 파싱합니다 (JSON, STIX 2.1, 또는 CSV 형식)
- 각 지표를 검증합니다 (IPv4 형식, 도메인 형식, 해시 길이 등)
- 테넌트 범위의 IOC 데이터베이스에 업서트합니다
-
보강 — 수집된 IOC는 자동으로:
- 알림에 위협 컨텍스트(심각도, 신뢰도, 태그) 보강
- 수신 로그 이벤트와 IOC 기반 탐지를 위한 상관분석
- 관리 콘솔에서 온디맨드 조회 결과 제공
-
라이프사이클 — 각 지표는 유효 기간(
validFrom/validUntil)이 있습니다. 만료된 지표는 매일 새벽 3시에 자동으로 정리됩니다.
피드 관리
피드 추가
위협 인텔리전스 → 피드 탭으로 이동하여 피드 추가를 클릭합니다:
| 필드 | 설명 |
|---|---|
| 피드 이름 | 피드의 표시 이름 (예: “AlienVault OTX”) |
| 피드 유형 | 지원 유형 중 선택 (OTX, AbuseIPDB, VirusTotal, MISP, Custom STIX, Custom CSV) |
| 피드 URL | 커스텀 피드에 필요; 기본 제공 유형은 자동 설정 |
| API 키 | 피드 제공자의 인증 키 |
| 동기화 간격 | 데이터 수집 빈도 (15분, 30분, 1시간, 6시간, 12시간, 24시간) |
| 활성화 | 피드 활성화/비활성화 토글 |
피드 상태
각 피드는 실시간 상태를 표시합니다:
| 상태 | 의미 |
|---|---|
| 활성 (녹색) | 피드가 활성화되고 마지막 동기화 성공 |
| 동기화 중 (노란색) | 동기화가 진행 중 |
| 오류 (빨간색) | 마지막 동기화 실패 — 피드 카드에서 오류 세부 정보 확인 |
| 비활성 (회색) | 피드가 비활성화 |
API 키 보안
- API 키는 API 응답이나 UI에 절대 노출되지 않습니다
- 콘솔에는 마스킹된 힌트만 표시됩니다 (예:
****abcd) - 키는 서버 측에 저장되며 피드 동기화 호출 시에만 전송됩니다
- 각 피드의 자격증명은 테넌트 범위로 격리됩니다
지표 유형
플랫폼은 다음 지표 유형을 처리하고 저장합니다:
| 유형 | 예시 | 검증 |
|---|---|---|
| IPv4 | 185.220.101.34 | 표준 점 표기법 |
| 도메인 | login-microsoftonline.tk | RFC 호환 도메인 이름 |
| 해시 (MD5) | d41d8cd98f00b204e9800998ecf8427e | 32자 16진수 |
| 해시 (SHA-256) | a1b2c3d4e5f6... (64자) | 64자 16진수 |
| URL | https://malware.example.com/payload | 스키마 포함 전체 URL |
| 이메일 | phishing@evil.example.com | 이메일 주소 형식 |
| CVE | CVE-2024-3400 | CVE-YYYY-NNNN+ 형식 |
동기화 간격 및 권장 설정
| 피드 유형 | 권장 간격 | 근거 |
|---|---|---|
| OTX | 1시간 | 구독 펄스가 빈번하게 업데이트 |
| AbuseIPDB | 6시간 | 블랙리스트 보통 속도로 업데이트 |
| VirusTotal | 6시간 | 무료 티어 속도 제한 |
| MISP | 1시간 | 이벤트 피드가 대량일 수 있음 |
| Custom STIX/CSV | 소스에 따라 | 소스의 업데이트 빈도에 맞춤 |
참고: 스케줄러가 5분마다 확인하므로, 실제 동기화 시간은 간격 만료 후 최대 5분까지 지연될 수 있습니다.
IOC 통계
위협 인텔리전스 페이지는 실시간 통계를 제공합니다:
- 전체 IOC — 활성(만료되지 않은) 지표 수
- 심각 지표 — 심각(Critical) 수준의 IOC 수
- 활성 피드 — 활성화되고 정상인 피드 수
- 평균 신뢰도 — 모든 지표의 평균 신뢰도 점수
피드별 통계는 각 피드 카드에 표시됩니다:
- IOC 수 — 이 피드에서 수집된 전체 지표 수
- 마지막 동기화 — 피드가 마지막으로 동기화된 시간
- 간격 — 설정된 동기화 빈도
캐싱 및 성능
- 설정 가능한 TTL의 인메모리 조회 캐시 (기본: 60분)
- 캐시는 최대 50,000개 항목을 보유하며 자동 축출
- 모든 피드 동기화 후 캐시가 지워져 최신성 보장
- 만료된 캐시 항목은 15분마다 축출
권한
| 작업 | 필요 권한 |
|---|---|
| 피드 및 IOC 조회 | threat_intel:read |
| 피드 추가/편집/삭제 | threat_intel:write |
| 수동 동기화 실행 | threat_intel:write |
| 수동 IOC 추가 | threat_intel:write |
모든 데이터는 테넌트 격리됩니다 — 각 테넌트의 피드와 IOC는 완전히 분리됩니다.
시작하기
- 사이드바에서 위협 인텔리전스를 선택합니다
- 피드 탭을 클릭합니다
- 피드(예: AlienVault OTX)를 선택하고 편집을 클릭합니다
- API 키를 입력하고 원하는 동기화 간격을 설정합니다
- 활성화를 토글하고 저장합니다
- 지금 동기화를 클릭하여 첫 수집을 실행합니다
- 지표 탭으로 전환하여 수집된 IOC를 확인합니다