네트워크 포렌식
네트워크 포렌식 ⊃ 네트워크 패킷 포렌식
네트워크 포렌식 : 컴퓨터 네트워크 트래픽에서 목적 정보를 수집하고, 분석하는 일련의 과정 또는 기술
네트워크 패킷 포렌식 : 종단간 수집된 패킷에 대해 분석 하는 기술
활용 분야 : 네트워크 흐름 파악, 네트워크 공격/위협 감지, 기업 내부 감사, 악성코드의 분석
국내에서는 통신 비밀 보호법으로 인한 통신제한 조치 (도청..)
정보의 분류 : 보안장비 로그, 서버 로그, 네트워크 애플리케이션 로그, 하드 상의 네트워크 트래픽 아티팩트 (피씨 상태 점검), 라이브 트래픽, 네트워크 관련 장비
네트워크 패킷 포렌식 기초
Port Scan과 같은 공격 유형 판별 시 중요한 정보
*Port Scan
운영 중인 서버에서 열려 있는 TCP/UDP 포트를 검색하는 것

TCP 플래그
TCP 3-way Handshaking
가장 기초가 되는 네트워크 통신 연결 방식

HTTP
인터넷 프로토콜
광범위하게 사용. S/C 모델, Request와 Response,
HTTP 1.0/1.1 버전
메소드 : 요청에 대한 행위 표시
URI : 서버 자원에 접근
HTTP Method
현재는 보안상 이유로 GET, POST만 사용

네트워크 패킷 포렌식 분석
패킷 분석 시 나타나는 패킷 형태
평문 : FTP, Telnet, HTTP (아이디와 패스워드가 모두 평문)
base64 인코딩 후 전송 : SMTP, IPOP와 같은 메일 전송 프로토콜
-> PortScan과 같은 스캐닝 공격은 일정한 형태(구조체)를 갖고 있음
PortScan
1. TCP OPEN Scan
TCP 처음 연결 시 일어나는 3-way 핸드셰이킹을 탐지하는 기법
포트가 열렸을 때 : 3way 핸드 셰이킹 형태
포트가 닫혔을 때 : RSP/ACK 응답

2. TCP Half OPEN Scan (SYN Scan)
TCP 핸드쉐이킹을 완전히 수행하지 않고, 처음 SYN 패킷만을 받은 후 검사를 완료하는 방식
포트가 열렸을 때 : 3way 핸드 셰이킹 형태와 비슷하지만 마지막 패킷이 RST
포트가 닫혔을 때 : RST/ACK 응답

3. UDP Open Scan
많은 시스템에서는 보낸 패킷에 대한 응답이 없을 때 ICMP unreachable 메시지를 보냄
ICMP 메시지를 보내지 않는 경우, 닫혀 있는 포트를 열려 있다고 판단하는 경우 존재
포트가 열렸을 때 : 비연결지향이기 때문에 일방적으로 전송
포트가 닫혔을 때 : ICMP 패킷으로 연결할 수 없다고 응답

4. ACK Scan
포트가 열렸을 때 : ACK 전송
포트가 닫혔을 때 : 윈도우 사이즈(프레임 구조에서 확인 가능)가 0이 아닐 경우에 응답

5. Stealth Scan
공격시 가장 많이 사용

FIN : FIN Flag만 활성화
X-mas : 모든 Flag 활성화,조합
NULL : 모든 Flag 비활성화
->X-mas는 일정한 형태, 구조체를 나타낼 수는 없음
->플래그가 비정상적으로 조합되어 오면 X-mas인지 NULL인지 구분
네트워크 패킷 포렌식 도구
Wireshark
논리 연산자를 이용한 필터링
특정 호스트의 패킷, 특정 두 호스트의 통신 패킷, 특정 포트 패킷, 특정 호스트의 특정 포트 패킷 캡처 가능

[File]-[Export Objects]-[HTTP] : 패킷에 대해 컨텐츠 타입 별로 확인 가능 (ZIP,html)
[File]-[Export Specified Packets] : 화면에 디스플레이 되고 있는 패킷들을 저장하고 싶을 때
[Statistics]-[Conversations] : 프로토콜 별로 확인 가능 (IPv4, TCP, UDP..)
NetworkMiner
[Hosts] : 패킷을 열면 자동으로 호스트를 분석, 어떤게 통신이 됐는지 세션 정보를 알 수 있음
[Files] : 해당 패킷으로부터 카빙할 수 있는 파일들을 자동 복구
[Messages] : 메시지들 복호화
-> 주로 메시지, 파일 카빙 시 사용
* 파일 카빙( File Carving )
메타데이터가 아닌 파일 자체의 바이너리 데이터(content, signature, header, ... )를 이용해 디스크의 비활당 영역에서 파일을 복구하는 방식
CapTipper-master
Captipper.py
패킷에 대해 넘버링
패킷 헤더, 내용 분석
트래픽 내에서 파일 추출, 흐름 분석
log 명령으로 페이지 탐색 모니터링 가능
'Forensics' 카테고리의 다른 글
[포렌식] 안드로이드 루팅하는 법 (0) | 2021.07.30 |
---|---|
[포렌식] 침해사고 포렌식 (0) | 2021.02.01 |
[포렌식] 악성코드 분석 (0) | 2021.01.23 |
[포렌식] Volatility 사용법 (0) | 2021.01.20 |
[포렌식] 디지털 포렌식 (0) | 2021.01.18 |