📚 네트워크 · 패킷 분석 › 05. 네트워크 스캔 징후 분석 — 243편
이전 글: 242. Destination Port 분석 · 다음 글: 244. 정상 Traffic과 Scan Traffic 비교

1. 개념

시간대와 이벤트 빈도 분석은 스캔 이벤트를 시간 축에 올려 언제, 얼마나 빠르게, 얼마나 규칙적으로 발생했는지 보는 방법입니다. 같은 1,000건이라도 1초에 몰렸는지 하루에 흩어졌는지에 따라 도구의 성격, 탐지 누락 가능성, 대응 방식이 달라집니다.

시간 지표계산알 수 있는 것
초당·분당 이벤트 수시간 구간별 건수스캔 속도, 도구 설정
지속 시간첫 이벤트 ~ 마지막 이벤트한 번의 스캔 규모
요청 간격 분포연속 이벤트 간 시간 차자동화 여부(일정한 간격)
발생 시각시·요일별 분포업무 외 시간, 주기적 반복
재발 주기같은 출발지의 반복 간격예약 작업·봇넷 주기

2. 동작 원리

시간 분석은 구간(bucket)을 정하고 세는 것에서 시작합니다. 구간 크기가 결과를 바꿉니다.

이벤트 목록 (출발지 X)
   ↓
[구간 선택] 1초 / 1분 / 1시간 / 1일
   ↓
[집계] 구간별 이벤트 수, 고유 포트 수
   ↓
[모양 판단]
   ├─ 짧은 구간에 급격한 봉우리   → 빠른 스캔 (수초~수분)
   ├─ 낮고 평평하게 오래 지속     → 느린 스캔 (수시간~수일)
   ├─ 일정 주기로 반복되는 봉우리 → 예약 작업·주기적 스캔
   └─ 업무 시간과 같은 모양       → 사람의 업무 활동일 가능성
   ↓
[탐지 기준과 대조] 임계치 시간 창보다 느린가? → 누락 가능성 점검

느린 스캔은 짧은 시간 창으로 보면 평범한 트래픽처럼 보입니다. 예를 들어 1분에 2건씩 24시간 동안 이어진 스캔은 "60초 안에 30건" 기준에는 걸리지 않지만, 하루 단위로 보면 고유 포트 수천 개가 드러납니다(225. Slow Scan).


3. 주요 특징

  • 간격의 규칙성: 사람의 접속은 간격이 불규칙하고, 자동화 도구는 설정된 지연에 따라 간격이 일정한 경우가 많습니다. 간격 분포가 한 값 근처에 몰려 있으면 자동화 가능성이 높습니다(도구가 무작위 지연을 넣으면 예외).
  • 시간대 표기 통일: 방화벽은 UTC, 서버는 KST, IDS는 오프셋 포함 등 장비마다 시간 표기가 다를 수 있습니다. 비교 전에 한 기준으로 통일하지 않으면 순서가 뒤집힙니다.
  • 업무 시간 대조: 새벽·주말의 내부 출발 스캔은 업무 활동으로 설명하기 어렵습니다. 반대로 평일 업무 시간의 내부 스캔은 승인 점검인지 먼저 확인합니다.
시간 패턴흔한 원인확인
수초 동안 수천 건빠른 자동화 스캔임계치 Alert 발생 여부
수시간 동안 분당 몇 건느린 스캔, 탐지 회피장기 집계로 고유 포트 수
매일 같은 시각예약 점검·모니터링작업 일정, 출발지 자산
업무 외 시간 내부 출발감염 단말·무단 도구단말 조사 요청

4. 예시

실습 예시 — 본인 소유 실습 서버의 방화벽 차단 로그에서 분 단위·시간 단위 빈도를 집계하는 방어 측 명령입니다(Ubuntu UFW 로그 기준, 값은 환경마다 다름).

# 출발지 203.0.113.64의 분 단위 이벤트 수 (syslog 시각 "Sep 30 02:05:07"에서 분까지 자름)
sudo grep "SRC=203.0.113.64" /var/log/ufw.log | awk '{print $1, $2, substr($3,1,5)}' | uniq -c

# 시간 단위 고유 목적지 포트 수
sudo grep "SRC=203.0.113.64" /var/log/ufw.log \
  | awk '{h=$1" "$2" "substr($3,1,2); match($0,/DPT=[0-9]+/); print h, substr($0,RSTART+4,RLENGTH-4)}' \
  | sort -u | awk '{print $1, $2, $3}' | uniq -c

시스템에 따라 syslog 시각 형식이 ISO 8601(2026-09-30T02:05:07+09:00)일 수 있으므로, 첫 줄을 확인하고 필드 위치를 맞춥니다.

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

# 분 단위            # 시간 단위 고유 포트
  2 Sep 30 02:05       118 Sep 30 02
  2 Sep 30 02:06       121 Sep 30 03
  2 Sep 30 02:07       117 Sep 30 04
  ...                  ...

분석 방법 — 분 단위로는 2건씩이라 임계치 Alert가 없었겠지만, 시간 단위로 보면 매시간 120개 안팎의 새 포트를 두드리고 있습니다. 간격이 일정하고 새벽에 지속되므로 느린 자동화 스캔으로 판단하고, 전체 기간의 고유 포트 수와 응답 포트를 확인합니다.


5. 보안 관점

  • 탐지 규칙의 시간 창은 곧 탐지 가능한 최저 속도입니다. 이보다 느린 정찰은 장기 집계(시간·일 단위 고유 포트 수)로만 보입니다.
  • 스캔 시각은 사건 타임라인의 최초 접촉 시점이 됩니다. 로그 보관 기간이 짧으면 느린 스캔의 시작점이 사라집니다.
  • 공격자가 업무 시간에 맞춰 활동하면 시간대 분석의 효과가 줄어듭니다. 시간은 단독 판단 근거가 아니라 다른 지표와 결합하는 보조 근거입니다.

6. SOC 관점

관제자가 확인할 질문

  • 이벤트는 몇 초·몇 시간 동안 이어졌는가? 탐지 규칙의 시간 창보다 느린가?
  • 요청 간격이 일정한가, 불규칙한가?
  • 발생 시각이 업무 시간·점검 일정과 맞는가?
  • 같은 출발지가 주기적으로 재발하는가?
이벤트 추출 → 시간대 통일 → 여러 구간(초·분·시·일)으로 집계
   ↓
속도·지속·간격·시각 판단
   ↓
탐지 시간 창과 비교 → 누락 가능성 있으면 장기 집계 규칙 검토

오탐 주의: 백업·동기화·모니터링 작업은 일정한 간격과 고정된 시각을 가져 자동화 스캔과 비슷한 시간 패턴을 만듭니다. 시간 패턴만으로 판단하지 말고 대상 포트·연결 결과를 함께 봅니다. SIEM 기반 장기 집계는 294. 비정상 Network Traffic 탐지를 참고합니다.


7. 핵심 정리

  • 시간 분석은 구간을 정해 이벤트 수·고유 포트 수를 세고 봉우리 모양으로 속도와 성격을 판단합니다.
  • 구간 크기가 결과를 바꾸므로 초·분·시·일 여러 단위로 봐야 느린 스캔이 드러납니다.
  • 일정한 요청 간격은 자동화의 신호이며, 업무 시간 대조는 내부 스캔 판단에 유용합니다.
  • 장비별 시간 표기를 하나로 통일한 뒤 비교합니다.
  • 탐지 규칙의 시간 창보다 느린 정찰은 장기 집계로 보완합니다.
profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글