📚 네트워크 · 패킷 분석 › 06. 방화벽 · IDS 기초 — 295편
이전 글: 294. 비정상 Network Traffic 탐지 · 다음 글: 296. Alert와 Firewall Log 연계
IDS Alert의 Source(출발지) 와 Destination(목적지) 은 Alert를 만든 패킷의 보낸 쪽과 받는 쪽입니다. 여기서 흔한 오해가 생깁니다. Alert의 출발지가 항상 공격자이고, 목적지가 항상 피해자인 것은 아닙니다. 스캔 맥락의 출발지·목적지 IP 분석은 05 영역 240. Source IP 분석, 241. Destination IP 분석에서 다뤘으므로, 이 글은 Alert 필드의 주소를 해석할 때의 함정에 집중합니다.
| 규칙이 보는 패킷 | Alert의 src | Alert의 dest | 공격자·대상 |
|---|---|---|---|
요청(to_server) — 공격 요청 탐지 | 클라이언트 | 서버 | src = 공격 시도자, dest = 대상 |
응답(to_client) — 서버 응답 탐지 | 서버 | 클라이언트 | src = 대상 서버, dest = 시도자 |
| 내부 → 외부 — 악성 통신 탐지 | 내부 호스트 | 외부 서버 | src = 감염 의심 호스트, dest = 악성 인프라 |
Alert의 주소가 실제 사람·장비를 가리키기까지는 여러 층이 끼어 있습니다.
실제 공격자
↓ (VPN·프록시·감염 PC 경유 가능)
공인 IP 203.0.113.95 ← Alert의 src로 보이는 주소 (실제 공격자의 위치와 다를 수 있음)
↓
[CDN / 로드 밸런서 / 리버스 프록시] ← 이 뒤에 센서가 있으면 src가 프록시 IP로 바뀜
↓
[방화벽 NAT] 공인 198.51.100.10 → 사설 192.168.20.10
↓
센서 위치에 따라 dest가 공인 주소 또는 사설 주소로 기록
↓
웹 서버 192.168.20.10
| 상황 | Alert에 보이는 값 | 실제 값을 찾는 곳 |
|---|---|---|
| 프록시·로드 밸런서 뒤의 센서 | src = 프록시 IP | HTTP X-Forwarded-For 헤더, 프록시 로그 |
| 방화벽 NAT 전/후 센서 | 공인 또는 사설 dest | 방화벽 NAT 로그·세션 로그 |
| 내부 사용자의 외부 통신(출발지 NAT 후 센서) | src = 방화벽 공인 IP | 방화벽 세션 로그의 변환 전 주소 |
| 응답 방향 규칙 | src = 서버 | 규칙의 flow·target 확인 |
Suricata는 규칙에 target:dest_ip 또는 target:src_ip가 있으면 EVE Alert에 source·target 정보를 추가해 공격 대상 쪽을 명시합니다. 또한 설정에 따라 Alert에 X-Forwarded-For 값을 함께 기록할 수 있습니다(xff 옵션, 기록 위치와 방식은 버전·설정별로 확인).
flow:established 조건이 있는 규칙의 Alert는 양방향 통신이 있었으므로 출발지 위조 가능성이 낮습니다.응답 방향 규칙의 Alert에서 주소를 해석하는 형식 예시입니다(값은 환경마다 다름, Suricata EVE 일부 필드).
# 형식 예시 — 서버 응답에서 일치한 Alert (target 표시 포함)
{"timestamp":"2026-09-30T15:40:02.114200+0900","event_type":"alert",
"src_ip":"192.168.20.10","src_port":80,"dest_ip":"203.0.113.95","dest_port":50712,
"alert":{"signature_id":1001901,"signature":"LOCAL server returned directory listing to external client",
"source":{"ip":"203.0.113.95","port":50712},"target":{"ip":"192.168.20.10","port":80}},
"http":{"xff":"198.51.100.7"}}
분석 방법
src_ip가 내부 서버이지만, 포트 80이 출발지이므로 서버의 응답입니다. alert.target도 서버를 대상으로 표시합니다.dest_ip 203.0.113.95입니다. 다만 xff 값이 있으므로 이 주소는 중간 프록시일 수 있고, 원 요청자는 198.51.100.7일 가능성이 있습니다. X-Forwarded-For는 클라이언트가 임의로 넣을 수도 있으므로 신뢰하는 프록시가 추가한 값인지 확인합니다.관제자가 Alert의 주소를 해석할 때 질문
Alert의 src / dest
↓ 규칙 flow·target → 공격 방향 확정
↓ 센서 위치·NAT·프록시 → 실제 주소 복원
↓ 내부: 자산·DHCP 기록 → 호스트·담당자
↓ 외부: 평판·소유 조직·공유 여부
결과: 공격 시도자 / 대상 자산 / 신뢰도 기록
오탐 주의: 외부 IP의 나쁜 평판은 과거 기록일 뿐입니다. 공유 IP라면 평판만으로 공격자로 판단하지 않습니다. 주소 복원에 필요한 방화벽 로그 연계는 296. Alert와 Firewall Log 연계에서 이어집니다.
target 표시로 공격 방향을 먼저 확정합니다.