문제에서 주어진 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 |
댓글