네트워크 패킷 분석과 관련된 포렌식 문제이다.
이전에도 블로그에서 비슷한 유형의 문제들을 다룬적이 있었다.
찾아보니 작년 Space Heroes CTF 에서도 비슷한 문제가 나왔었다.
(https://hackingstudypad.tistory.com/88)
문제에서 주어지는 것은 chall.jpg.pacp 파일이다.
Wireshark로 pcap 파일을 열어볼 수 있다.
Wireshark 로 해당 파일을 열어보면
이렇게 수많은 ICMP Echo request 패킷이 보인다.
갯수를 새어보니 239,351개였다.
첫 4 패킷의 데이터만 보고 어떻게 풀어야 하는지 알 수 있었다.
첫번재 패킷의 경우 패킷의 맨 끝 data.data 부분이 ff 인것을 볼 수 있다.
두번째 패킷은 d8 이고,
세번째 패킷은 ff,
네번째 패킷은 e0 이다.
합치면 ff d8 ff e0 가 되는데
FF D8 FF E0 로 시작하는것은 JPG 파일의 특징이다.
이런걸 파일 시그니처 라고 한다.
모든 ICMP Echo request 패킷의 data.data 부분만 모아서 합치면
JPG 파일이 생성될 것이다.
일단 데이터를 추출하기 위해서 tshark를 이용한다.
tshark는 Wireshark의 커맨드라인 버전이라고 생각하면 된다.
tshark는 칼리 리눅스를 설치하면 안에 내장되어 있다.(https://hackingstudypad.tistory.com/58)
tshark 명령어로 실행 가능하며
-r 옵션으로 불러올 패킷 파일을 지정해준다.
-T 옵션은 텍스트 출력형식을 지정하는데 fields 형식으로 지정해준다.
-e 옵션은 표시하고자 하는 필드를 지정할 수 있다. -T 옵션과 같이 쓰이는데 data.data 필드를 지정했다.
그리고 추출한 데이터를 data 라는 파일명으로 저장해주었다.
실행시키면 이렇게 data 파일이 생성된다.
CyberChef(https://gchq.github.io/CyberChef)에서
data 파일을 From Hex 로 확인해주면
jpg 파일로 만들 수 있다.
저장 버튼을 눌러 파일로 저장해준다.
저장된 파일을 열어보면
플래그를 찾을 수 있다.
'CTF > 포렌식' 카테고리의 다른 글
[Space Heroes CTF] space_stream - 포렌식 / Autopsy / binwalk (44) | 2023.05.07 |
---|---|
[Space Heroes CTF] Time Leap - 포렌식 / FTK Imager (66) | 2023.05.06 |
[Space Heroes CTF] A New Hope - 포렌식 / PPT / HxD (52) | 2023.04.29 |
[Tenable CTF] Funny Sound - 포렌식 / Oscilloscope (54) | 2023.04.14 |
[Tenable CTF] Look at all the pixels, where do they all come from - 포렌식 / PIL (66) | 2023.04.10 |