본문 바로가기
CTF/Dreamhack

[Dreamhack] broken-png

by 8희 2023. 5. 9.

https://dreamhack.io/wargame/challenges/104

 

broken-png

Description 드림컴퍼니에서 디자이너로 일하는 드림이는 직장 동료에게 내일 사용해야 하는 드림뱅크의 홍보 이미지를 메일을 통해 전달 받았습니다. 하지만 이메일 전송 과정에서 문제가 발생해

dreamhack.io

 

이메일 전송 과정에서 문제가 발생해 이미지가 정상적으로 전달되지 않았다고 한다.

정사각형 이미지가 반만 절달됐다고 한다.

 

 

이미지 속성을 확인해 보니 정말 사진 크기가 512 X 512가 아닌 512 X 256이다.

256을 512로 바꾸면 해결될 것으로 추측된다.

 

 

문제 파일로 주어진 png 파일을 HxD로 열어봤다.

 

 

처음 8바이트 89 50 4E 47 0D 0A 1A 0A는 PNG를 의미하는 시그니처이다.

IHDR 청크는 PNG 시그니처 바로 뒤에 위치하며  0x10부터 0x1C까지 13바이트를 차지한다

여기서 첫 8바이트는 이미지 폭과 높이 정보를 저장한다.

즉 00 00 02 00 (0x00000200)은 이미지 폭, 00 00 01 00 (0x00000100)은 이미지 높이를 의미한다.

현재 높이를 512로 바꿔줘야 하므로 00 00 02 00으로 변경하고 저장했다.

 

 

이미지를 다시 확인해 보니 FLAG 값을 볼 수 있었다.

 

 

참고

https://lemon-soju.tistory.com/17

 

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

[Dreamhack] xss-2  (0) 2023.05.23
[Dreamhack] dreamhack-tools-cyberchef  (0) 2023.05.16
[Dreamhack] path traversal  (0) 2023.05.09
[Dreamhack] xss-1  (0) 2023.05.03
[Dreamhack] command-injection-1  (0) 2023.05.02