Google CTF : Beginners Quest : FLOPPY
間違っているところや改善点があったらコメントして欲しい。
解説
今回は"Google CTF : Beginners Quest : FLOPPY"を解いていく。問題のダウンロード方法は前回と変わらないので、前回のリンクを貼っておく。
そして、問題文はこれ。.iconファイルからフラッグを見つければよいのだろう。
問題はzipファイル。"unzip"で展開したところから解説を始める。これも前回や前々回と、同じ手順を踏めば良いので、上に貼った私の記事を参考にしてほしい。
問題に戻る。展開すると、foo.icoとなる。.iocなので画像ファイル"eog"でどんな画像か確認する。とても小さい画像ファイルだ。"虫のイラスト"と"BORLAND"という文字列が確認できる。あとは良く分からない。
$ eog foo.ico
このファイルから“文字列”として読める箇所を表示するために"strings"を使う。
更に、Exif情報にヒントがあるかもしれないので、"exiftool"も使った。中身に別ファイルが埋め込まれてる可能性もあるので"binwalk"も実行しておく。
$ strings foo.ico
$ exiftool foo.ico
$ binwalk -e foo.ico
すると、"strings"からは"driver.txtUT"や"www.comUT"といった感じで少し読める文字列があることが分かった。"exiftool"の方では有用な情報は無かった。"binwalk"からは _foo.ico.extracted というファイルが得られた。このように、CTFではこういった問題ファイルが渡されたとき、下調べとして"strings"や"exiftool","binwalk"などを使う。上手くまとめてある記事を見つけたので下にリンクを貼っておく。
"cd"で_foo.ico.extractedに移動し、"ls"で中身を確認する。"2FD.zip","driver.txt","www.com"の3つがあることが分かる。"unzip"で"2FD.zip"を解凍しようとしたが既にあるようで、replaceと出てきた。よってオプションはすべてNoを選択した。
$ ls 2FD.zip driver.txt www.com
$ unzip 2FD.zip
Archive: 2FD.zip
replace driver.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: n
replace www.com? [y]es, [n]o, [A]ll, [N]one, [r]ename: n
"cat"で"driver.txt"の文字列を表示する。
$ cat driver.txt
すると、CTF{・・・・}形式の文字列がある。これが今回のフラッグだ。
終わりに
今回は、今まで私が解いてきた中では短かった方だった。画像などのファイルが問題の時に行われる下調べをしっかり会得したいなと思った。
参考にした動画(Google CTF: Beginner Quest: FLOPPY (File Carving with Binwalk) - YouTube)
個人的に気になったら調べておくといいかもなワード
- BORLAND(会社名のようだ初めて知った)