[日本語] [English]

magic_number

ファイル群と以下の文字列が与えられ、これらの文字列が示すファイルを探すことを要求された。

[89 50 4e 47]
[52 61 72 21]
[ff d8 ff e0]

文字列を16進数として解釈すると、89 50 4e 47には「PNG」を表すASCII文字コードが含まれ、 52 61 72 21には「Rar!」を表すASCII文字コードである。
また、ff d8 ff e0については、ffが含まれていることからJPEGっぽい印象を受けた。

そこで、以下のように、odコマンドとheadコマンドを用い、ファイルの先頭部分を確かめた。
結果、これらのファイルの先頭部分は指定された文字列になっていた。

YUKI.N>od -Ax -t x1 post.png | head -n 1
000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52

YUKI.N>od -Ax -t x1 rar.rar | head -n 1
000000 52 61 72 21 1a 07 01 00 33 92 b5 e5 0a 01 05 06

YUKI.N>od -Ax -t x1 light.jpg | head -n 1
000000 ff d8 ff e0 00 10 4a 46 49 46 00 01 01 01 00 60
od: 書き込みエラー
od: 書き込みエラー: Invalid argument

これらのファイルのファイル名を指定のフォーマットに当てはめることで、flagが得られた。

flag{post_rar_light}

writeup by MikeCAT

setodaNote CTF