📚 네트워크 · 패킷 분석 › 06. 방화벽 · IDS 기초 — 259편
이전 글: 258. Source IP 정책 · 다음 글: 260. Source Port 정책

1. 개념

Destination IP 정책은 패킷의 목적지 IP 주소를 조건으로 삼는 규칙입니다. "어디로 가는 트래픽인가"를 기준으로, 어떤 자산을 누구에게 열어 줄지를 정합니다. 출발지 정책(258. Source IP 정책)이 "누가"를 통제한다면, 목적지 정책은 보호 대상 자산을 중심으로 통제합니다.

방향목적지 정책의 역할예
Inbound외부에 공개할 서버만 지정인터넷 → DMZ 웹 서버 10.30.0.10만 허용
내부 간중요 자산 접근 범위 제한사용자망 → DB 서버 대역 차단
Outbound내부에서 나갈 수 있는 목적지 제한서버 대역 → 업데이트 서버만 허용

목적지를 특정하지 않은 규칙(목적지 any)은 "해당 포트를 쓰는 모든 서버"를 허용하므로, 새 서버가 추가될 때마다 의도하지 않게 노출 범위가 넓어집니다.


2. 동작 원리

목적지 IP를 판단할 때 가장 헷갈리는 부분은 NAT가 있을 때 어떤 주소를 기준으로 정책을 쓰는가입니다.

인터넷 클라이언트 → 공인 IP 203.0.113.10:443 (방화벽 외부 주소)
   ↓
[DNAT] 목적지 203.0.113.10 → 10.30.0.10 으로 변환
   ↓
[정책 평가] 목적지 조건을 203.0.113.10(변환 전)으로 쓰는가,
            10.30.0.10(변환 후)으로 쓰는가? → 제품마다 다름
   ↓
DMZ 웹 서버 10.30.0.10 전달
  • Linux netfilter는 DNAT가 PREROUTING 단계에서 먼저 일어나므로, FORWARD 체인의 필터 규칙은 변환 후 목적지(내부 IP) 를 기준으로 씁니다.
  • 상용 방화벽은 제품·버전에 따라 변환 전 주소를 쓰기도, 변환 후 주소를 쓰기도 합니다. 로그에도 두 주소가 모두 기록되는 경우가 많으므로 필드 이름을 확인해야 합니다. NAT 처리 순서는 04 영역 186. Firewall NAT 정책, 로그 해석은 268. Firewall NAT에서 다룹니다.

3. 주요 특징

목적지를 표현하는 방법에 따라 정책의 정확도와 관리 부담이 달라집니다.

표현 방식장점한계
단일 IP / 대역명확, 로그와 직접 대조 가능서버 IP 변경 시 규칙 수정 필요
주소 객체·그룹여러 규칙에서 재사용그룹 구성원 변경이 규칙 변경 기록에 안 보일 수 있음
FQDN 객체도메인 기준 허용방화벽의 DNS 해석 결과와 실제 접속 IP가 다를 수 있음
동적 객체(클라우드 태그 등)자동 반영특정 시점에 어떤 IP였는지 사후 확인이 어려움
  • Outbound 목적지 제한은 서버 대역에서 특히 효과적입니다. 서버는 업데이트·연동 대상이 정해져 있으므로, 그 외 인터넷 목적지로의 연결은 이상 징후가 됩니다.
  • CDN·클라우드 IP는 수많은 서비스가 공유하므로 목적지 IP만으로 허용·차단하면 범위가 지나치게 넓거나 좁아집니다. 이 경우 응용 계층(도메인·SNI) 기반 통제를 함께 씁니다(255. Application Firewall).

4. 예시

서버 대역의 Outbound를 특정 목적지로 제한하는 실습 예시입니다(nftables, Rocky/Ubuntu 공통, 값은 환경마다 다름).

# 실습 예시 (inet fw 테이블 forward 체인 일부)
set srv_net       { type ipv4_addr; flags interval; elements = { 10.20.0.0/24 } }
set update_mirror { type ipv4_addr; elements = { 192.0.2.50, 192.0.2.51 } }

ip saddr @srv_net ip daddr @update_mirror tcp dport 443 accept
ip saddr @srv_net ip daddr 10.20.0.53 udp dport 53 accept
ip saddr @srv_net counter log prefix "FW-SRV-EGRESS-DENY " drop

분석 방법 — 이 정책에서 FW-SRV-EGRESS-DENY 로그가 발생했다면 다음 순서로 봅니다.

  1. 목적지 IP가 새로 필요한 업데이트 서버인지(정책 누락), 알 수 없는 외부 IP인지 구분합니다.
  2. 같은 서버에서 반복 주기로 발생하는지 확인합니다. 일정 간격의 반복은 예약 작업이나 비콘(beacon) 통신의 특징일 수 있습니다.
  3. 목적지 IP의 평판·도메인 정보를 조회하고 해당 서버의 프로세스 정보(엔드포인트 로그)와 대조합니다.

5. 보안 관점

  • 목적지 any 허용 규칙은 자산 목록과 정책의 연결을 끊습니다. 공개 대상 서버를 명시적으로 지정해야 새 서버가 실수로 노출되지 않습니다.
  • 중요 자산(DB, 인증 서버, 백업 서버)은 목적지 기준으로 접근 가능한 출발지를 최소화합니다.
  • 서버 대역의 Outbound 목적지 제한은 침해 후 C2 통신·데이터 유출을 어렵게 만드는 효과가 큽니다.
  • 주소 그룹 변경은 규칙 변경처럼 감사 대상에 포함해야 합니다.

6. SOC 관점

관제자가 확인할 질문

  • 목적지 IP는 NAT 변환 전 주소인가, 변환 후 주소인가? 로그 필드를 확인했는가?
  • 이 목적지는 자산 목록에 있는 서버인가? 공개 대상이 아닌 서버에 외부 허용 로그가 있다면 정책 오류입니다.
  • 하나의 출발지가 짧은 시간에 여러 목적지 IP에 접근했는가? 수평 스캔 가능성을 봅니다(227. 다수 IP에 대한 Port 접근).
목적지 패턴의심 방향
서버 대역 → 처음 보는 외부 IP 허용C2, 유출, 정책 누락
사용자 PC → 다른 사용자 PC 대역 다수내부 전파, 정찰
외부 → 비공개 서버 IP 허용과도한 허용 규칙, 잘못된 NAT

오탐 주의: 목적지가 클라우드·CDN IP라면 동일 IP에 수많은 정상 서비스가 있습니다. 목적지 IP 단독으로 판단하지 말고 도메인·SNI·통신량을 함께 봅니다. 목적지 분석 절차는 241. Destination IP 분석을 참고합니다.


7. 핵심 정리

  • Destination IP 정책은 보호 대상 자산을 중심으로 누구에게 어떤 서버를 열지 정합니다.
  • NAT가 있으면 정책과 로그가 변환 전·후 중 어느 주소를 쓰는지 제품별로 확인해야 합니다.
  • 주소 객체·FQDN·동적 객체는 편리하지만 사후 분석 시 당시의 실제 IP를 확인하기 어렵게 만듭니다.
  • 서버 대역의 Outbound 목적지 제한은 침해 후 외부 통신을 드러내는 강력한 통제입니다.
  • 목적지 IP는 자산 목록·도메인 정보와 함께 해석해야 정확합니다.
profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글