mizuiro_rivi’s diary

日々の生活を連ねるブログ

CpawCTF-Q20.[Crypto]Block Cipher

問題

ctf.cpaw.site

やったこと

与えられたファイルがc言語のファイルだった。

とりあえず中身を見てみると

f:id:mizuiro_rivi:20190920121856p:plain

実行時の引数で処理しているのが分かる。i<=strlen(flag)とあるのでflagは長い文字列なんだろうなと思ったので与えられた暗号文だと推測する。

あとはkeyの部分だけど、これが分からなかった。atoiしてるから数字に戻してるのは分かっていたけど、なんの文字を当てはめればいいのか...

適当にaとかAとかその他色々したが上手くいかなかった。

ここで他の人のwriteupを見た。

どうやらここに当てはまる文字は'1','2'などの数字らしい。(しっかりfor文のソースコードを読み込んでいなかった)

i+=keyをしているのでkeyの分だけ読み込んでいて、その中で読み込んだ文字を逆に出力している。
適当に数字を当てはめていくとそれっぽいflagを見つけた

f:id:mizuiro_rivi:20190920122816p:plain