네트워크 포렌식을 위한 기본 지식으로 OSI 7계층과 TCP/IP 패킷구조 대해 알고 있어야 한다.
구분 | TCP | UDP |
---|---|---|
데이터 순서 | 순서를 유지함 | 순서를 유지하지 않음 |
데이터 손실 | 손실 없음 | 손실 있음 |
에러 제어 | 에러검사 후 에러 시 재전송함 | 에러검사 후 에러 시 재전송하지 않음 |
흐름 제어 | 슬라이딩 윈도우를 사용하여 제어함 | 제어하지 않음 |
Version : IP header 형식 (IPv4, IPv6)
header length : IP 헤더 길이
type of service : 우선권, 지연 시간, 처리 능력, 신뢰성 등 Qos
total length : IP header와 데이터 길이
identification : datagram 번호
flag : IP datagram 단편화 유무
fragment offset : 단편화되기 전 datagram 처음에서부터의 상대적 위치 기록
time to live : 네트워크에서 IP datagram이 활동할 수 있는 최대 시간
protocol : IP 데이터를 수신할 상위 계층 프로토콜
header checksum : 오류 탐지 bit
source IP address : 송신지 주소
destination IP address : 목적지 주소
options : 옵션 사항
ping : 상대방 컴퓨터, 네트워크 장비, 서버 장비까지 통신이 잘 되는지 확인하는 명령어
- 대상 컴퓨터에 ICMP 에코 패킷을 보낸 후 에코 응답 패킷을 수신하여 대상 컴퓨터와의 연결 확인이 가능하며 송신한 패킷의 수를 되돌려줌
- 라우터를 지날 때마다 1씩 감소하는 TTI(Time To Live)값을 확인하여 어떤 OS를 사용하는지도 유추가 가능함
traceroute : 목적지까지의 데이터 도달 여부를 확인하는 도구
- 네트워크와 라우팅의 문제점을 찾아낼 목적으로 많이 사용함
- UDP 패킷을 이용해 진행 경로를 추적하고 패킷이 지나가는 router의 IP주소나 이름을 출력하는 방식으로 확인함
netstat : 컴퓨터의 네트워크 상태를 다양하게 보여주는 명령어
- 연결 상태, 라우팅 테이블, 패킷 통계, 프로토콜별 통계 등의 정보를 활용할 수 있음
구분 | 표시하는 정보 |
---|---|
-a | 현재의 모든 네트워크 연결 정보와 listening port 정보 |
-e | ethernet 패킷의 통계 |
-n | 10진 표기한 IP 주소와 포트 정보 |
-p proto | 지정된 포트와 관련된 네트워크 연결 정보 |
-r | 라우팅 테이블 |
-s | 프로토콜별 통계 정보 |