no strings

ELFファイル nostrings が与えられた。

この nostrings をバイナリエディタで観察すると、flagのようなデータが1バイトおきに入っている以下の部分があった。

A ELF file nostrings was given.

Viewing this file nostrings with a binary editor, I found this part in which every other byte contains data like the flag:

00002000 01 00 02 00 00 00 00 00 44 00 55 00 43 00 54 00 |........D.U.C.T.| 00002010 46 00 7b 00 73 00 74 00 72 00 69 00 6e 00 67 00 |F.{.s.t.r.i.n.g.| 00002020 65 00 6e 00 74 00 5f 00 73 00 74 00 72 00 69 00 |e.n.t._.s.t.r.i.| 00002030 6e 00 67 00 73 00 5f 00 73 00 74 00 72 00 69 00 |n.g.s._.s.t.r.i.| 00002040 6e 00 67 00 7d 00 66 6c 61 67 3f 20 00 77 72 6f |n.g.}.flag? .wro| 00002050 6e 67 21 00 63 6f 72 72 65 63 74 21 00 00 00 00 |ng!.correct!....|

以下のようにデータのサイズを指定して strings コマンドを実行することで、flagが得られた。

I obtained th flag using the strings command with specifying the data size like this:

strings --encoding=l nostrings > strings_out.txt
DUCTF{stringent_strings_string}

DownUnderCTF 2021