」ということで、ファイルが1個提供される。得るようだということがわかる。調査まずは、与えられたファイルの中身を調べてみる。PNGファイルが入っていることがわかる。e35860e49ca3fa367e456207ebc9ff2f_containers(略)先ほどと同様な表示がされるが、先ほどとの違いは「_e35860e49ca3fa367e456207ebc9ff2f_containers.extracted」というフォルダに切り出したあとのファイルがすべて格納されている。gnomeのファイラー(nautilus)などで確認すると、アルファベットの画像が入っていることがわかる。導き出し抽出したファイル名は、ファイルの中のオフセットの位置が16進数になっている。踏んで、並び替えてみる。手法は悩んだけど、40個ぐらいなので手動でスプレッドシートにアドレスと文字を転記してソートをかける。ソートしたら、「特殊貼付け」の「転地して貼り付け」で横に並べる。最後に転地した文字をコピー&ペーストして、邪魔なタブを除去して得られたflag「」提出して終わりです。並び替えだと何故か上手くソートができず、上記手法にしました。ImageMagick等で画像結合していくのも考えたけど悲鳴を上げる量ではなかったし、どのみち画像の文字を人が目で見て手で入力する必要がでてくるので、上記手法にしました。いうファイルが出てくる。fileコマンドで確認する。stripped出力結果から、ELF形式の実行ファイルであることがわかる。使ってファイルを読み込ませる。main処理の流れを確認する。usage表示をする処理。合否の判断をしている模様。ブレークポイントを置く。アドレス指定なので、アドレスの前にアスタリスクをつける。表示されないようにダミーの引数(“hoge”)を与えておく。()(gdb)ブレークポイントで無事停止。矢印マークがついて、ブレークポイントで止まっている場所を確認できる。%eax,%eaxstrcmpに渡そうとしている第1引数と第2引数を確認する。「ctf4b{5tr1ngs_1s_n0t_en0ugh}」を得ることができた。関数(ここれはstrcmp)に渡す引数の対応付はは下記の通り。最後に実際に動作を確認してみる。表示されたので、flagの提出をしておしまい。