📚 네트워크 · 패킷 분석 › 05. 네트워크 스캔 징후 분석 — 214편
이전 글: 213. Version Detection · 다음 글: 215. 전체 Port Scan

1. 개념

특정 Port Scan 은 넓은 범위가 아니라 한 개~수십 개의 정해진 포트만 확인하는 스캔입니다. 범위가 좁다는 것은 상대가 이미 찾는 서비스를 정해 두었다는 뜻이므로, 관제자는 "어떤 포트 조합인가"에서 의도를 읽어낼 수 있습니다.

범위 복원 방법은 210. Port Range Scan에서 다뤘고, 이 글은 좁은 범위가 갖는 의미와 판단 기준만 다룹니다. 위험도가 높은 포트 목록은 88. 위험 Port에서 정리했습니다.

형태모양흔한 의도
단일 포트 × 다수 IP수평, 한 포트만특정 서비스·취약점 대상 수집
포트 묶음 × 다수 IP수평, 3~10개 포트원격관리·DB 같은 서비스군 탐색
포트 묶음 × 단일 IP수직, 소수 포트특정 서버의 관리 경로 확인

2. 동작 원리

특정 포트만 확인하면 대상당 요청이 적어 짧은 시간에 매우 많은 IP를 훑을 수 있습니다. 그래서 인터넷 규모의 대상 수집이나 웜의 확산 전 탐색에 자주 쓰입니다.

관심 서비스 결정 (예: 새 취약점이 공개된 제품의 포트)
      ↓
대역 전체에 해당 포트만 SYN 또는 연결 시도
      ↓
응답한 IP만 목록화 → 서비스·버전 확인(211·213편) → 공격 시도
      ↓
방어 측 흔적: 같은 목적지 포트로 다수 목적지 IP / 한 대상에는 1~2건뿐
             → 대상별 로그로는 안 보이고, 포트별 집계에서 보임

포트 조합으로 관심 서비스를 추정할 수 있습니다.

포트 조합 예관심 서비스군확인 포인트
22, 23, 2323원격 접속(IoT 포함)이후 로그인 시도 여부
3389, 5900, 5985원격 데스크톱·원격관리외부 노출 여부
445, 139, 135Windows 파일 공유·RPC경계에서 차단되는지
1433, 3306, 5432, 6379, 27017DB·캐시인증 없는 노출 여부
2375, 9200, 8080, 8443관리 API·웹 콘솔인증 설정 여부

3. 주요 특징

  • 대상별로는 잡음 수준: 한 서버 입장에서는 1~2건의 연결 시도라서 대상 단위 임계치 탐지에 걸리지 않습니다. 목적지 포트 단위·출발지 단위의 수평 집계로 봐야 드러납니다.
  • 시기성: 특정 제품의 취약점이 공개되면 해당 포트로의 외부 시도가 며칠 사이 급증하는 경우가 있습니다. 포트별 일간 추이가 조기 경보가 됩니다.
  • 자동화 봇의 반복: 같은 포트 조합이 여러 출발지에서 일정하게 반복되면 봇넷·자동 수집기일 가능성이 높습니다.
기준넓은 범위 스캔특정 Port Scan
목적지 포트 수수백~수만1~수십
목적지 IP 수소수인 경우가 많음대역 전체인 경우가 많음
대상 단위 탐지쉬움어려움
의도 추정전반적 조사특정 서비스·취약점

4. 예시

실습 예시 — 본인 소유 실습망의 방화벽(iptables LOG) 로그에서 특정 포트의 수평 시도를 집계하는 방어 측 명령입니다. Rocky는 /var/log/messages, Ubuntu는 /var/log/kern.log이며, 값은 환경마다 다릅니다.

# 목적지 포트별: 시도한 출발지 수, 대상이 된 목적지 IP 수
sudo grep -o 'SRC=[0-9.]* DST=[0-9.]* .*DPT=[0-9]*' /var/log/kern.log \
  | awk '{split($NF,p,"="); src[p[2]" "$1]=1; dst[p[2]" "$2]=1}
         END {for (k in src) {split(k,a," "); s[a[1]]++}
              for (k in dst) {split(k,a," "); d[a[1]]++}
              for (p in s) print p, "srcs="s[p], "dsts="d[p]}' | sort -t= -k3 -rn | head

집계 결과 형식 예시(값은 환경마다 다름):

6379 srcs=2  dsts=254
22   srcs=31 dsts=40
445  srcs=12 dsts=18
관찰해석
6379: 출발지 2개가 목적지 254개소수 출발지가 대역 전체의 캐시 서비스 포트를 탐색
22: 출발지 다수, 목적지 일부인터넷 배경 소음 형태, 노출 서버 위주
이전 주 대비 특정 포트 급증관련 취약점 공개·봇넷 활동 여부 확인

5. 보안 관점

  • 좁은 범위 스캔은 공격 준비가 구체화된 단계일 수 있습니다. 응답한 IP에 곧바로 공격 요청이 이어지는 경우가 많으므로 스캔과 후속 요청의 간격을 확인합니다.
  • 해당 포트의 서비스가 외부에 노출되어 있다면 스캔보다 노출 자체가 문제입니다. 인증 없이 열리는 DB·관리 API는 즉시 차단 대상입니다.
  • 내부 출발지의 445·3389 수평 탐색은 웜이나 측면 이동 준비 신호일 수 있습니다(228. 내부망 정찰).

6. SOC 관점

흔적 위치확인 내용
방화벽포트별 출발지·목적지 수, 일간 추이
IDS특정 서비스 탐색 시그니처, 수평 스캔 임계치 Alert
서비스 로그열린 대상에 이어진 인증 시도·공격 요청
위협 인텔리전스출발지 평판, 관련 취약점 공개 정보

관제자가 확인할 질문

  • 어떤 포트 조합이며, 그 조합이 가리키는 서비스군은 무엇인가?
  • 우리 자산 중 그 포트로 응답한 대상이 있는가? 의도된 노출인가?
  • 최근 해당 제품의 취약점이 공개되었는가? 같은 포트로의 시도가 평소보다 늘었는가?

오탐 주의: 모니터링 시스템의 포트 점검(예: 22·443만 주기적 확인)도 특정 포트 수평 패턴을 만듭니다. 주기·출발지가 고정되어 있다는 점으로 구분합니다. 서비스 디스커버리 기능(예: 로컬 네트워크 장치 검색)도 특정 포트 다중 목적지 패턴을 만들 수 있습니다.


7. 핵심 정리

  • 특정 Port Scan은 소수의 정해진 포트만 확인하며, 상대가 찾는 서비스를 이미 정했다는 신호입니다.
  • 대상당 요청이 적어 대상 단위 임계치로는 놓치기 쉽고, 포트 단위 수평 집계로 드러납니다.
  • 포트 조합(원격관리, DB, 파일 공유 등)으로 관심 서비스군을 추정합니다.
  • 취약점 공개 직후 특정 포트 시도가 급증할 수 있어 포트별 일간 추이가 조기 경보가 됩니다.
  • 응답한 자산의 노출 의도와 후속 공격 요청 여부가 대응 우선순위를 정합니다.
profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글