Wargame/CTF

Codegate 2020

마띠(쥔장) 2020. 4. 2. 19:04
LOL

LOL.zip 파일을 다운받아 열면 아래 Legend.gif 파일이 있다

징크스다

일단 HxD로 해당 파일을 열어보자

파일 확장자는 .GIF지만, 헥사 에디터로 열어보면 헤더가 FF D8 FF E0 - - 4A 46, 즉 JFIF 파일이다

GIF 파일의 헤더 시그니처는  47 49 46 38 37 61.

검색해봤는데 찾을 수 없어서 GIF는 훼이크고 JFIF라고 확신했다

일단 헤더는 확인했으니 푸터를 확인해보자. JFIF 파일의 푸터는 FF D9이다.

"FF D9"를 찾았다. 그런데 그 뒤 다시 FF D8 ~ (JFIF 헤더)가 시작되는 것을 발견했다.

그래서 맨 앞 ~ FF D9, FF D8 ~ 맨 끝 두 부분으로 헥사 코드를 나눠 저장해보니

앞 부분은 원래 받았던 징크스 사진, 뒷 부분은 아래 사진이 나왔다.

마피아 징크스가 새로 나왔다

 

지금까지 한 것을 정리하면, '일단 .GIF 확장자는 무시하고, 파일 시그니처인 .JFIF 파일이라는 가정 하에

헤더와 푸터를 찾아 두 파일로 나눠보니 새로운 이미지를 얻었다'고 할 수 있다.

 

하지만 아직 플래그를 얻지 못했으니 새로 얻은 마피아 징크스를 가지고 또 파일 카빙을 해보자.

방법은 위와 같다. 푸터를 찾고 푸터 기준 FF D9, 새로 시작하는 FF D8을 나누면 된다.

이런 식으로 플래그가 나올 때까지 반복하면 된다

그렇게 총 9개의 징크스를 얻을 수 있었고.. 

8번째 파일에서 플래그도 찾았다

728x90

'Wargame > CTF' 카테고리의 다른 글

RACTF 2020: Dimensionless Loading, Disk Forensics Fun  (0) 2020.06.13
IOLI crackme 0x00 ~ 0x05  (0) 2020.04.19
2020 AUCTF  (2) 2020.04.11
UTCTF 2020 Chatt with Bratt: Write-Up  (0) 2020.03.11
UTCTF 2020 Zero: Write Up  (0) 2020.03.10