X-MASCTF2019 Forensic Writeup(解けたやつ)
年越して、今頃感のX-MAS。
2019/12/13 ~ 12/20開催してやつの記録を残しておく。遅れても、アウトプット大事だと思っているのです。
Santa's Forensic
Santa needs the help of an experienced forensics analyst. But first, he has to make sure that you are worthy.
与えられたzipファイルを解凍する。出てきたpng画像にzipファイルが含まれている。そのzipファイルを解凍して出てきたpngファイルのバイナリのケツにflag.
X-MAS{W3lc0m3_t0_th3_N0rth_Pol3}
Santa's letter
It seems that Santa may have used some Invisible Ink to write this letter... he is surely playing Hide&Seek.
与えれるファイルはpngファイルのみ。Steganoなのは分かったけれど、うさみみとかsteghideとかで見ても手がかりが得られない。
たまたま「invisible ink hideseek」で調べたらこんなの発見。
Digital Invisible Ink Toolkit - Background
javaで動く。起動してみる。
Get imageに与えられたpngをセット。algorithmにHideSeekといういかにもっぽいものをセット。messeageの出力ファイルを設定する。GoしてSuccess出たら、出力ファイルをチェック。
X-MAS{NOBODY:_SANTA:Hyvää joulua!}
珍しくflagがユニコ。
A trip to grandma's house
This Christmas I went to grandma's house and booted up my old computer from when I was a kid! Sadly, I don't remember my password, but I'm really curious to see what I had in there :(
ディスクイメージがvdiで与えられて、とりあえずrawイメージに変換(qemu使用)してAutopsyで見てみたら何かWindows98だし、デスクトップに沢山謎のtxtファイルある。
これって実際起動してみないと分からんやつでは。ということで、virtualboxへ。
起動までに何度かミスったので、windows98で知らなかったこと一覧。
- メモリ1GB以上はデフォルトだと動作しない
→何も考えずに適当にメモリ4GB振ったら動かなかったので、virtualboxおススメらしい64MBで動かした。
- ログイン画面でescキーを押すとパスワード無くてもログインできる?
→Windows98にはパソコンのロックに十分な機能がないのでescキーで認証回避できる。しかし、localhostにログインするようになってしまった場合vmのネットワーク設定でネットワークアダプタのチェックを外す必要がある。
これらを利用して起動してみる。
なんとなく先ほどの沢山のtxtファイルの意味が分かった。何かのpasswordを示しているのだね。
デスクトップのファイルを色々弄ってみた結果気になったのは、
- 実行できない「m2.exe」
→調べてもよく分からない
- passwordとあるので関係ありそうな「TrueCrypt」
→暗号化された仮想ディスク作ったり、マウントしたりする。マウントにpassword使いそう。
- これまたpasswordと関係ありそうな「secret.txt」
→txtファイルとして開けない。
真ん中あたりにある「yeah thats the password」というファイルは特に重要ではなさそうだった。secret.txtは容量が大きく、txtファイルとして開けないし、24MBもあるのでとても怪しい。これTrueCryptでマウントするんじゃないか。ということで試す。passwordはlowercaseで「mysekritd4tum」
何かマウントされた。やはり「secret.txt」が暗号化されたドライブであったようだ。中を見てみる。
これはなんだろか。そんなこんなでregionフォルダに見覚えのない.mcaという拡張子を見つけた。
どうやらmcaファイルはマインクラフトのマップデータ?らしい。このマシンにはこのファイルから上手く情報を取り出せそうなものは無さそうなので、ここからファイルを取り出してビューワーを探す。
(autopsy経由で取り出してもう一度「secret.txt」をマウントした)
色々探した結果「Chunky」というのが良さそうだと思ったので使ってみる。
先ほどマウントした中身を別フォルダにコピーして、「Chunky」のChange Worldから、Change world directoryを選択。ここで、先ほど作成したフォルダを選択する。マップが正しく読み込まれれば、DimentionをOverWorld、Map viewの欄をLayer、scaleを13,Layerを0とかにすると何か出てきた。
X-MAS{Druaga1_W0uld've_ruN__th1s_0n_4n_SSD}
Windows98を扱ったのは面白かったけど、Minecraftの下りいらなかった。
最後に
まさにCTFって感じで、技術を楽しむものだった。