chipkkang9's story

[Suninatas] 21번 문제풀이 본문

CTF/Forensic

[Suninatas] 21번 문제풀이

chipkkang 2021. 7. 14. 17:54

준비물: monitor.jpg, HxD, WinHex

 

Suninatas 21번 문제 그림

 Suninatas의 21번 문제이다. 별다른 설명은 없고, 위와 같은 화면만이 문제에서 주어졌다. 처음 문제를 보고 든 생각은, '어떤 툴을 사용해서 자를 치우면 되는 것이구나.'였다. 그래서 일단 그림을 저장해보았더니 monitor.jpg로 저장되는 것을 알 수 있엇다. 어떻게 풀면 좋을까 고민하면서 바탕화면에 있는 monitor.jpg에 마우스 커서를 올려 놓으니, 이상한 점이 있었다. 하나는 해당 파일이 2012년산이라는 것이고, 다른 하나는 용량이 무려 1.40MB라는 것이다. 그래서 우선 HxD 프로그램에 이 사진을 넣고 분석해보기 시작했다.

 

 가장 먼저 체크해 본 것은 header, footer signature이다. 

 

왼쪽에 있는 그림은 monitor.jpg의 header signature, 오른쪽은 footer signature부분이다.

 

 .jpg 확장자의 file signature는 header signature는 FF D8 FF E?의 형태이고, footer signature는 FF D9이기 때문에 겉보기에는 파일에 이상은 없어 보인다. 하지만, HxD 프로그램에 있는 툴 바에 [찾기>찾기>16진수 값] 검색에서 'FF D9'를 입력하고 돌려보면 해당 푸터 시그니쳐가 쓰인 것이 한 두 군데가 아니라는 것을 알 수 있을 것이다.

 

monitor.jpg에서 'FF D9'를 모두 검색한 결과

 

 이제 monitor.jpg 파일을 header, footer signature에 맞게 여러 개로 쪼개면 되겠다는 생각을 했다. 여러 방법을 사용할 수 있었겠지만, 나는 구글링을 통해 파일 쪼개기 기능이 있다는 'WinHex' 프로그램을 이용해보기로 했다. 

 

WinHex 프로그램에 monitor.jpg를 넣은 화면이다.

 

 위 그림과 같이 WinHex를 실행시켜준 후에,

 

툴 바에 있는 Tools > Disk Tools > File Recovery by Type...를 클릭

 

 File Recovery by Type을 눌러 아래와 같은 창을 띄워주고, 파일들이 저장될 경로를 선택해준 후 OK를 눌러주면 된다!

 

File Header Search on monitor.jpg 창
경로를 지정해준 폴더에 쪼개진 파일들이 들어가있는 모습

 

 이렇게 쪼개진 파일들에서 flag를 찾아주면 문제 해결이다.

Comments