Loading the catalog…
Loading the catalog…
📚 네트워크 · 패킷 분석 › 02. 포트 · 프로토콜 분석 — 56편 이전 글: 55. Dynamic Port · 다음 글: 57. Destination Port 1. 개념 Source Port(출발지 포트, sport) 는 TCP·UDP 헤더의 첫 16비트 필드로, 이 패킷을 보낸 프로세스 가 사용하는 포트 번호입니다. 받는 쪽의 Destination Port와 짝을 이루므로, 두 필드를 함께 놓고 설명합니다. 필드 위치 크기 의미 Source Port (sport) 헤더 0~1바이트 16비트 이 패킷을 보낸 프로세스의 포트 Destination Port (dport) 헤더 2~3바이트 16비트 이 패킷을 받을 프로세스의 포트 두 필드는 TCP·UDP에서 위치와 크기가 같아서, 도구들이 전송 계층 종류와 관계없이 같은 방식으로 포트를 읽을 수 있습니다. 헤더의 나머지 필드는 01. TCP/IP 구조 이해 영역 40. TCP와 UDP 헤더 비교 — 신뢰성과 속도의 차이 에서 다룹니다. 출발지 포트는 누가 정할까요? 클라이언트가 접속할 때는 보통 운영체제가 임시(Dynamic) 포트 범위에서 자동으로 골라 붙입니다( 55. Dynamic Port ). 서버가 응답할 때는 자신이 LISTEN하던 서비스 포트(예: 80)가 출발지 포트가 됩니다. 즉 같은 연결 안에서도 패킷 방향이 바뀌면 sport 값이 바뀝니다. 이 글은 출발지 포트의 이런 성질과 관제에서의 해석에 집중하고, 목적지 포트 쪽 해석은 다음 글 57. Destination Port 에서 다룹니다. 2. 동작 원리 클라이언트 192.168.10.30 서버 192.168.10.20 (nginx :80) 요청 1 sport 51200 ─────────────────────→ dport 80 응답 2 dport 51200 ←───────────────────── sport 80 요청 3 sport 51200 ─────────────────────→ dport 80 ↓ 패킷 단위: 13은 sport=51200/dport=80, 2는 sport=80/dport=51200 세션 단위: "192.168.10.30:51200 → 192.168.10.20:80" 하나의 연결 (Initiator = 클라이언트, 서비스 포트 = 80) 로그와 도구는 이 둘 중 하나의 관점으로 기록합니다. 기록 주체 기록 단위 sport·dport의 의미 tcpdump·Wireshark 패킷 각 패킷의 실제 헤더 값 (방향마다 바뀜) Stateful 방화벽 세션 로그 세션 보통 첫 패킷(연결 시작) 기준 — Initiator 쪽이 src IDS Alert 탐지된 패킷(또는 흐름) 룰이 걸린 패킷 기준이라 응답 패킷이면 서버가 src 로 찍힐 수 있음 NetFlow 등 흐름 기록 흐름 단방향 흐름이면 요청·응답이 별도 레코드 특히 IDS에서 "서버 응답 내용"을 보는 룰(예: 에러 메시지, 유출 의심 데이터)은 Alert의 src가 내부 서버, sport가 80 으로 나타납니다. 이것을 "내부 서버가 외부를 공격"으로 읽으면 방향을 거꾸로 해석한 것입니다(06. 방화벽 · IDS 기초 영역 295. IDS Alert의 Source/Destination 분석 에서 다룸). 3. 주요 특징 출발지 포트를 보고 "이 패킷이 요청인가 응답인가"를 가늠하는 기준입니다. 한 가지 기준만으로 확정하지 않고 여러 개를 함께 봅니다. 판단 기준 서비스 쪽일 가능성이 높은 포트 예외 번호 크기 낮은 번호 (Well-Known·Registered) 8080·50000 같은 고번호 서비스, 양쪽 모두 낮은 번호(NTP 123↔123) 번호의 변화 여러 연결에서 고정 한 클라이언트의 고정 출발지 포트 프로토콜 첫 패킷 SYN을 받은 쪽의 포트 캡처가 연결 도중부터 시작된 경우 LISTEN 여부 해당 호스트에서 LISTEN 중인 포트 호스트 확인이 불가능한 외부 IP 출발지 포트가 고정되는 정상 프로토콜도 알아 둡니다. 프로토콜 출발지 → 목적지 비고 DHCP 68 → 67 (응답 67 → 68) UDP, 브로드캐스트 ( 48. DHCP DORA 과정 — IP를 받는 4단계 ) NTP 123 → 123 (구현에 따라 임시 포트 사용) 78. NTP와 로그 시간 동기화 IKE (IPsec VPN) 500 → 500, NAT 통과 시 4500 → 4500 UDP NetBIOS Name Service 137 → 137 UDP 4. 예시 실습 예시 — tcpdump 필터로 포트 방향을 구분해 봅니다(Rocky/Ubuntu 공통, 인터페이스 ens33 은 예시). # 목적지 포트가 80인 패킷만 = 클라이언트 → 서버 방향 sudo tcpdump -nn -i ens33 'tcp dst port 80' # 출발지 포트가 80인 패킷만 = 서버 → 클라이언트 방향 sudo tcpdump -nn -i ens33 'tcp src port 80' # 방향 무관, 80이 어느 쪽이든 sudo tcpdump -nn -i ens33 'tcp port 80' 출력 형식 예시(값은 환경마다 다름): 192.168.10.30.51200 > 192.168.10.20.80: Flags [S], seq 1000, length 0 192.168.10.20.80 > 192.168.10.30.51200: Flags [S.], seq 5000, ack 1001, length 0 같은 연결이 방화벽 세션 로그에서는 한 줄로 요약되는 형식 예시입니다(필드명은 장비마다 다름). src=192.168.10.30 sport=51200 dst=192.168.10.20 dport=80 proto=tcp action=allow sent=812 rcvd=15320 sent · rcvd 처럼 방향별 바이트가 있으면 "Initiator가 보낸 양"과 "받은 양"을 구분할 수 있습니다. 5. 보안 관점 출발지 포트는 보내는 쪽이 마음대로 정합니다. 따라서 "출발지 포트가 53(또는 20, 80)이면 응답이니 허용" 같은 상태 비저장(Stateless) ACL은 출발지 포트를 조작한 패킷을 그대로 통과시킬 수 있습니다. Stateful 방화벽이 연결 상태로 응답 여부를 판단하는 이유입니다(06. 방화벽 · IDS 기초 영역 260. Source Port 정책 에서 다룸). 출발지 포트의 무작위성은 방어 요소 입니다. 예측 가능한 출발지 포트는 응답 위조를 쉽게 만듭니다( 55. Dynamic Port ). 출발지 포트 자체가 공격 지표가 되는 경우는 드뭅니다. 다만 1024 미만의 출발지 포트를 쓰는 비정상 연결, 여러 연결에서 같은 출발지 포트가 반복되는 경우(일부 스캔 도구의 기본 동작)는 참고 신호가 될 수 있습니다. 단정하지 않고 다른 로그와 함께 봅니다. 6. SOC 관점 흔적 위치 확인할 수 있는 것 방화벽 세션 로그 Initiator 기준 src·dst, 방향별 바이트 IDS Alert 룰에 걸린 패킷의 sport·dport (응답 패킷일 수 있음) 패킷 캡처 첫 SYN 방향으로 Initiator 확정 NAT 로그 변환 전·후 출발지 포트 관제자가 확인할 질문 이 로그는 패킷 단위인가, 세션 단위인가? src는 Initiator를 뜻하는가? 출발지 포트가 임시 포트 범위인가, 서비스 포트(응답 패킷)인가? 출발지 포트가 비정상적으로 고정되거나 1024 미만인데, 고정 포트 프로토콜이 아닌가? 오탐 주의 : IDS Alert의 src가 내부 서버라고 해서 내부에서 시작된 통신으로 단정하지 않습니다. 응답 패킷에 걸린 룰인지 룰 내용과 방화벽 세션 로그로 교차 확인합니다. IP와 포트를 묶어 보는 분석은 91. IP + Port 분석 에서 이어집니다. 7. 핵심 정리 Source Port는 TCP·UDP 헤더 맨 앞의 16비트 필드이며, 클라이언트 요청에서는 보통 OS가 고른 임시 포트, 서버 응답에서는 서비스 포트입니다. 패킷 단위 기록(캡처, IDS)과 세션 단위 기록(방화벽)은 src의 의미가 다를 수 있습니다. DHCP, NTP, IKE, NetBIOS처럼 출발지 포트가 고정되는 정상 프로토콜이 있습니다. 출발지 포트는 조작 가능하므로 이를 신뢰하는 Stateless 정책은 우회될 수 있습니다.
What RADAR observed and classified to build this opportunity. It is what the source published, not a verification that the offer is still active.
56. Source Port. 📚 네트워크 · 패킷 분석 › 02. 포트 · 프로토콜 분석 — 56편 이전 글: 55. Dynamic Port · 다음 글: 57. Destination Port 1. 개념 Source Port(출발지 포트, sport) 는 TCP·UDP 헤더의 첫 16비트 필드로, 이 패킷을 보낸 프로세스 가 사용하는 포트 번호입니다. 받는 쪽의 Destination Port와 짝을 이루므로, 두 필드를 함께 놓고 설명합니다. 필드 위치 크기 의미 Source Port (sport) 헤더 0~1바이트 16비트 이 패킷을 보낸 프로세스의 포트 Destination Port (dport) 헤더 2~3바이트 16비트 이 패킷을 받을 프로세스의 포트 두 필드는 TCP·UDP에서 위치와 크기가…
Open source