📚 네트워크 · 패킷 분석 › 06. 방화벽 · IDS 기초 — 283편
이전 글: 282. Signature Rule · 다음 글: 284. IPS Alert
IDS Alert는 IDS 규칙이 트래픽과 일치했을 때 생성되는 기록입니다. 275. IDS란 무엇인가에서 Alert의 형식과 "Alert는 의심이지 사건이 아니다"라는 원칙을 봤다면, 이 글은 Alert 한 건을 받아 판단을 내리기까지의 분석 절차를 다룹니다. Alert가 장비에서 SIEM까지 전달되는 경로는 04 영역 196. 보안장비 Alert에서 다뤘습니다.
Alert의 필드는 성격에 따라 두 묶음으로 나누어 읽습니다.
| 묶음 | 필드(Suricata EVE 예) | 답하는 질문 |
|---|---|---|
| 규칙 정보 | alert.signature_id, alert.rev, alert.signature, alert.category, alert.severity | 무엇이 의심되는가 |
| 트래픽 정보 | timestamp, src_ip, src_port, dest_ip, dest_port, proto, app_proto | 누가, 누구에게, 언제 |
| 연결 정보 | flow_id, community_id(설정 시), in_iface | 다른 로그와 어떻게 연결하는가 |
| 증거 정보 | payload, packet, http·tls 메타데이터(설정 시) | 실제로 무엇이 오갔는가 |
| 판정 정보 | alert.action | 통과했는가, 차단됐는가 |
Alert 한 건의 분석 절차(트리아지, Triage)입니다.
[1] 규칙 확인 sid:rev → 규칙 원문, 탐지 의도, classtype
↓
[2] 방향·자산 확인 외부→내부 / 내부→외부 / 내부→내부, 대상 자산 역할·중요도
↓
[3] 반복·범위 확인 같은 sid·출발지의 건수, 대상 수, 첫 발생·마지막 발생
↓
[4] 증거 확인 페이로드, 같은 flow의 응답(HTTP 상태·바이트), 방화벽 허용 여부
↓
[5] 영향 판단 대상이 취약한 환경인가, 호스트에 흔적이 있는가
↓
[6] 판정·기록 오탐 / 정탐(시도·실패) / 정탐(성공 의심) → 종결 또는 에스컬레이션
1~3단계는 수 분 안에 끝나는 1차 분류이고, 4~5단계는 필요한 Alert에만 적용하는 심층 확인입니다. 모든 Alert에 5단계까지 적용하면 처리량을 감당할 수 없으므로, 1차 분류에서 우선순위를 정합니다.
Alert의 우선순위는 규칙의 심각도만으로 정하지 않습니다. 장비가 주는 severity는 규칙 분류의 값이고, 실제 위험은 환경에 따라 다릅니다.
| 판단 요소 | 우선순위를 높이는 경우 | 우선순위를 낮추는 경우 |
|---|---|---|
| 방향 | 내부→외부, 내부→내부 | 외부→내부 중 방화벽 외부 센서 |
| 대상 자산 | 인증 서버, DB, 외부 공개 서버 | 테스트 서버, 폐기 예정 장비 |
| 대상 환경 | 규칙이 노리는 OS·서비스와 일치 | 해당 서비스 없음 (예: Windows 공격이 Linux 대상) |
| 응답 | 200 응답, 큰 응답 크기, 연결 지속 | 연결 거부, 404, 즉시 종료 |
| 출발지 | 내부 호스트, 과거 사건 관련 IP | 등록된 취약점 스캐너 |
같은 출발지에서 발생한 Alert를 묶어 요약하는 실습 예시입니다(Suricata 센서, Rocky/Ubuntu 공통, 값은 환경마다 다름).
# sid·출발지별 건수와 첫/마지막 시각 요약
sudo jq -r 'select(.event_type=="alert") | [.alert.signature_id, .src_ip, .timestamp] | @tsv' \
/var/log/suricata/eve.json \
| sort -k1,1 -k2,2 -k3,3 \
| awk -F'\t' '{k=$1" "$2; c[k]++; if(!(k in f)) f[k]=$3; l[k]=$3}
END {for (k in c) print c[k], k, f[k], l[k]}' | sort -rn | head
# 형식 예시 — 요약 결과 (건수 sid 출발지 첫발생 마지막발생)
412 1000601 203.0.113.51 2026-09-30T02:10:04 2026-09-30T02:14:40
3 1000602 203.0.113.51 2026-09-30T02:15:12 2026-09-30T02:15:30
1 1000701 192.168.10.61 2026-09-30T02:20:01 2026-09-30T02:20:01
분석 방법 — 첫 줄은 짧은 시간 대량 발생으로 자동화된 시도 패턴입니다. 둘째 줄은 같은 출발지가 다른 규칙을 3건 일으켰으므로 첫 줄 이후 단계가 바뀌었는지 확인합니다. 셋째 줄은 건수는 1건이지만 내부 출발지라 우선순위가 높을 수 있습니다. 건수가 많다고 중요한 것이 아닙니다.
관제자가 Alert 판단 결과를 기록할 때 포함할 항목
Alert 큐
↓ 1차 분류(규칙·방향·자산·반복)
낮음 → 묶음 처리·기록 후 종결
높음 → 심층 확인(증거·응답·호스트)
↓
성공 의심 → 에스컬레이션 (사건 분석 전환)
시도·실패 → 차단 검토·감시 강화
오탐 → 튜닝 요청 (오탐 처리 절차)
오탐 주의: 정상 업무(취약점 점검, 모니터링)로 발생한 Alert는 "규칙은 정확히 일치했지만 위협은 아닌" 경우입니다. 오탐과 구분해 기록하면 튜닝 방향이 달라집니다. 이 구분은 285. False Positive, 출발지·목적지 분석은 295. IDS Alert의 Source/Destination 분석에서 이어집니다.