HackCTF Forensics Writeup (나는 해귀다)

 

문제

 

image

 

문제파일을 다운받자.

 


풀이

 

image

 

압축파일을 다운받아 압축을 풀면 다음과 같은 사진을 준다.

 

자막을 보면 오 헥스값을 완전 뒤집어 놓으셨댄다. 헥스 에디터로 열어보자.

 

image

 

헥스 에디터로 열고나서 파일을 찬찬히 보면 89 50 4E 47 부터 png파일의 헤더 시그니처가 존재하고 그 후에 49 45 4E 44 AE 42 60 82 까지 푸터 시그니처까지 제대로 존재하는 것을 확인할 수 있다.

 

이제 문제는 그 다음인데 png 파일의 푸터 시그니처인 49 45 4E 44 AE 42 60 82 가 거꾸로 들어가 있는 모습을 볼 수 있다.

 

image

 

그리고 맨 밑을 보자 png 파일의 헤더 시그니처인 89 50 4E 47 0D 1A 0A 00 이 거꾸로 들어가 있는 것을 확인할 수 있다.

 

부가적으로 png 파일의 chunk들인 IHDR, sRGB, gAMA, pHYs 등 모두 거꾸로 데이터가 입력되어 있는것을 보아 이를 바로 잡아주면 새로운 png 사진 파일 하나를 획득할 수 있다는 것을 알 수 있다.

소스 코드

필자의 경우 파이썬으로 코딩하였으며 소스 코드는 다음과 같다.

data = "거꾸로 뒤집을 헥스값"

data1 = data.split(' ')

print(''.join(data[::-1]))

이렇게 하여 나온 헥스값을 다시 파일로 만들어주면 png파일이 나온다.

image

플래그 마저 뒤집어 놓으셨다.