Forensics - Magic PNG

HelloMG
|2020. 3. 30. 22:46

Magic PNG 파일

파일을 켜보니 그림이 보이지 않습니다..!

 

파일에 문제가 있나봅니다 :D

HxD

HxD를 이용해서 PNG 파일을 오픈 시켜보았습니다 :D

일단 파일 시그니처 먼저 확인을 해봤었습니다 !

PNG 파일 헤더

정상적인 헤더 시그니처와 문제 파일의 헤더 시그니처가 살짝 다른 것을 찾을 수 있었습니다 :D

헤더 변경

살짝 다른 부분을 변경해주었습니다!

살짝 보임..

변경해줬더니 살짝 그림이 보이기 시작합니다 :D

그런데.. 밑의 부분이 깨진건지.. 안보이네요 ㅠ_ㅠ

 

그래서 다른 부분도 고쳐야겠구나 싶었습니다 ㅎㅎㅎㅎ

PNG 파일 구조

PNG 파일은 N개의 청크로 구성이 되어 있습니다 :D

밑의 사이트에서 저도 확인하면서 공부했어용 ~_~

 

PNG 파일 구조에 대한 간단히 잘 설명해 놓은 곳입니당 :D ↓

https://ryanking13.github.io/2018/03/24/png-structure.html

 

PNG 파일 구조

최근 GoN 2018 신입생 리쿠르팅 문제나, pragyan CTF등의 대회에서 PNG 파일 구조를 조작해둔 포렌식 문제를 종종 봤는데, 그러한 문제들을 푸는 과정에서 공부한 PNG 파일 구조를 정리해보았다.

ryanking13.github.io

위의 사이트에서 보셨다시피

PNG 파일에서 필수 청크가 IHDR, IDAT, IEND라고 합니다 :D

 

그래서 문자열 검색기능을 이용해서 찾아보기 시작했습니다!

idat

IDAT을 검색했을 때 10008번째 오프셋의 idat가 소문자로 되어 있는 것을 발견할 수 있었습니다 :D

대문자로 이루어져야하니 변경해 주도록 합시다 ㅎㅎㅎㅎ

IDAT

변경해주고! 저장합니다 ㅎㅎㅎ

 

그리고 확인해보면....

성공!

귀여운 그림이 완성되면서 밑부분에 flag를 확인할 수 있었습니다 :D

 

사진 속 주인공은 롤 게임 캐릭터인 룰루 같네용 >_<

 

그럼 이만 문제풀이를 마치도록 하겠습니다 :D

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

Forensics - 잔상  (0) 2020.04.02
Forensics - Terrorist  (0) 2020.03.31
Misc - QRCODE  (0) 2020.03.28
Misc - Who am I ?  (0) 2020.03.26
Misc - BF  (0) 2020.03.20