본문으로 이동
메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.
(Xmas 스캔에서 넘어옴)

TCP XMAS 스캔(TCP XMAS Scan)은 TCP 패킷의 여러 플래그를 동시에 설정하여 대상 시스템의 포트 상태를 확인하는 포트 스캐닝 기법이다. 패킷의 플래그가 여러 개 켜진 모습이 크리스마스트리 조명처럼 보인다고 하여 XMAS 스캔이라는 이름이 붙었다.

TCP XMAS 스캔은 포트 스캐닝 기법 중 하나로, TCP 헤더의 FIN, PSH, URG 플래그를 동시에 설정한 패킷을 전송하여 응답을 분석한다.

일반적인 TCP 연결 과정에서는 사용되지 않는 비정상적인 플래그 조합을 이용하기 때문에 일부 환경에서는 탐지가 어려운 경우가 있다.

XMAS 스캔은 RFC 793 기반 TCP 동작 차이를 이용하여 열린 포트와 닫힌 포트를 구분한다.

XMAS 스캔에서 사용되는 패킷은 여러 TCP 플래그가 동시에 켜져 있다.

주로 다음 플래그가 사용된다.

  • FIN
  • PSH
  • URG

여러 플래그가 켜진 모습이 크리스마스트리의 전구처럼 보인다고 하여 "XMAS(Tree) Scan"이라는 이름이 붙었다.

RFC 793 기준에서는 비정상적인 TCP 패킷에 대해 다음과 같이 동작한다.

  • 닫힌 포트(Closed Port)
RST 패킷을 반환한다.
  • 열린 포트(Open Port)
패킷을 무시하고 응답하지 않는다.

이를 이용하여 응답 여부를 분석한다.

  1. 공격자는 FIN, PSH, URG 플래그가 설정된 TCP 패킷을 대상 포트에 전송한다.
  2. 대상 시스템의 응답을 분석한다.
  3. RST 응답이 오면 닫힌 포트로 판단한다.
  4. 응답이 없으면 열린 포트 또는 필터링된 포트로 판단한다.

사용되는 TCP 플래그

편집 원본 편집

TCP 연결 종료를 위한 플래그이다.

수신 측에 데이터를 즉시 처리하도록 요청하는 플래그이다.

긴급 데이터가 포함되어 있음을 나타내는 플래그이다.

  • 비정상적인 TCP 플래그 조합 사용
  • TCP 연결을 완전히 수립하지 않음
  • 일부 환경에서는 탐지 우회 가능
  • RFC 기반 TCP 동작 이용
  • 운영체제에 따라 결과 차이 존재
  • 완전한 TCP 연결을 수행하지 않음
  • 일부 단순 방화벽 우회 가능
  • 비교적 은밀한 스캔 가능
  • Windows 계열 시스템에서는 정확도가 낮음
  • 최신 IDS/IPS에서는 탐지 가능
  • 응답이 없는 경우 필터링 여부 판단이 어려움
  • 일부 네트워크 장비가 비정상 패킷으로 차단 가능

Windows 환경 문제

편집 원본 편집

RFC 793 기준에서는 열린 포트가 응답하지 않아야 하지만, 일부 Windows 계열 운영체제는 열린 포트와 닫힌 포트 모두에 대해 RST 응답을 반환한다.

따라서 XMAS 스캔은 Windows 시스템에 대해 정확한 포트 식별이 어려운 경우가 많다.

방화벽과의 관계

편집 원본 편집

과거 일부 방화벽은 SYN 패킷 중심으로 탐지 규칙을 구성하였기 때문에 XMAS 스캔이 탐지를 우회하는 경우가 있었다.

그러나 최신 IDS/IPS와 방화벽은 비정상 TCP 플래그 조합을 탐지할 수 있으므로 우회 효과는 제한적이다.

TCP 연결을 완전히 수립하지 않는 Half-open 방식 스캔이다.

FIN 플래그만 사용하여 응답 여부를 분석하는 방식이다.

TCP 플래그를 전혀 사용하지 않는 방식이다.

Nmap에서는 다음과 같은 옵션으로 XMAS 스캔을 수행할 수 있다.

nmap -sX 대상IP
  • XMAS 스캔은 FIN, PSH, URG 플래그를 동시에 사용한다.
  • 열린 포트는 일반적으로 응답하지 않는다.
  • 닫힌 포트는 일반적으로 RST 응답을 반환한다.
  • TCP 연결을 완전히 수립하지 않는다.
  • 비정상 TCP 플래그 조합을 사용하는 스캔 방식이다.
  • Windows 계열 운영체제에서는 정확도가 낮을 수 있다.
  • XMAS 스캔은 비교적 은밀한 포트 스캐닝 기법으로 분류된다.