본문 바로가기
Forensic

[HackCTF] Magic PNG

by L3m0n S0ju 2021. 9. 15.

 

 

 

 

 

문제에서 주어진 png 파일을 열면 이 파일은 형식이 지원되지 않는다는 문구가 출력된다. 010 Editor로 열고 헤더 시그니처 부분을 보면 png 시그니처 중간에 다른 부분이 있으므로 수정하면 위 그림처럼 짤린 이미지가 출력된다. PNG 파일 구조는 아래와 같다.

 

 

 

 

 

 

PNG 파일은 크게 3가지 청크로 구성된다고 합니다. IHDR, IDAT, IEND 세 가지 청크가 가장 중요한 청크입니다.

 

 

 

 

 

 


IHDR 청크의 구조는 아래와 같습니다. PNG의 여러 메타 데이터가 저장됩니다.

 

{

    Length : 00 00 00 0D (13 byte),

    Chunk Type : IHDR, (49 48 44 52)

    Chunk Data ( 13 byte ),

    {

        Width (4 byte),

        Height (4 byte),

        Bit depth (1 byte),

        Color Type (1 byte),

        Compression method (1 byte),

        Filter method (1 byte),

        Interlace method (1 byte),

    }

    CRC

}

 

 


IDAT 청크는 이미지에 대한 데이터가 저장되는 청크입니다.

 

IDAT (49 44 41 54)

 

 

 

 

 

 

 

 


IEND 청크의 구조는 아래와 같습니다. 파일의 끝을 알려줍니다.

 

 

{

    Length : 00 00 00 00 (0 byte),

    Chunk Type : IEND (49 45 4E 44)

    Chunk Data (0 byte),

    CRC

}

 

 

 

 


010 Editor로 파일을 열면 IDAT 청크 중간에 혼자 소문자로 idat 청크가 존재하는데 해당 부분을 대문자로 수정한다. 다시 파일을 열면 플래그가 출력된다.

 

 

 

 

 


플래그

'Forensic' 카테고리의 다른 글

HackCTF [Terrorist]  (0) 2021.09.16
[HackCTF] 나는 해귀다  (0) 2021.09.15
[HackCTF] 세상에서 잊혀진 날 찾아줘!  (0) 2021.09.15
[HackCTF] Secret Document  (0) 2021.09.12
[HackCTF] So easy?  (0) 2021.09.12

댓글