SECCON 2015 Online CTF writeup

2015/12/05~06にかけて、SECCON 2015 Online CTFに

チーム名NilPtrでYuikiとして参加しました。

まだCTF初めて3ヶ月にしては解けたっぽい?という印象でした。

ちなみに順位は871人中223位。

二人でゆる~くやったので私が解いた問題をwrite upします。

 

Writeup

Start SECCON CTF (50 points)

いくつか暗号化例が出されるので目で解読しました。

やるだけ。

 

SECCON WARS 2015(100 points)

Youtubeの動画をよく見るとQRコードが一部見えたり見えなかったりします。

ffmpegで幾つかのフレームに分解して、それをstegosolveで合成します。

6枚くらい合成すればQRコードになるのでスマホで読み取って終了。

 

Unzip the file(100 points)

zipファイルが渡されているのですが暗号化されています。

backnumber08.txtとbacknumber09.txtとflag.txtがあったので

backnumber08.txtで検索してみると、SECCONのメルマガのバックナンバーを発見。

これは既知平文攻撃かなと思ったので、

それぞれダウンロードしたものと、2つをZIP圧縮したものを追加で用意して、pkcrackでハック。

 

Reverse-Enginering Android APK 1 (100 points)

Androidのapkが渡されます。

起動するとじゃんけんのゲームになっていて1000回連続で勝たなければなりません。

とてもじゃないけどゴリ押しできないため、

APK Multi Toolを使用して、APKを展開。

javaファイルがsmali形式になっているのでMainActivity.smaliをテキストエディタで開いて、じゃんけんに絶対勝てるようにする。

コンパイルして実行。

おしまい。

 

Steganography 1 (100 points)

Mr.Fusion.gpjbというファイルが渡される。

Mr.Fusionでググるバック・トゥ・ザ・フューチャーの何かがヒットする。

gpjbでググると何もヒットしない。

ただ、ファイルがSECCON{と書いてあるだけなのにやけにでかすぎる。

バイナリエディタで開くと中に、gifやjpegpngbmpが入っている様。

各々の仕様を確認しながら一つずつ取り出して、合成するとフラグが…。

フュージョンされたg(if)p(ng)j(peg)b(mp)という意味だったか。

 

ちなみに相方は、

Connect the server(100 points)

telnetにつなぐ奴。

QR puzzle (Windows)(200 points)

Windowsの実行ファイルが渡されてひたすら3x3のQRコードパズルをする奴。

Last Challenge (Thank you for playing)(50 points)

最初の問題と同様。

を解いたよう。

 

まとめ

今回は決勝まで行くような感じで挑戦したわけじゃないので勉強がてら解いた。

100 points問題しか解けなかったが個人的にはよかった。

 

来年は大学受験で挑戦できないはずなので、さっさと合格して圧倒的成長CTFライフを送りたいゆいきでした。

 

追記

write upまとめできてました。

 

他の人のwrite upをみるってのも勉強になりますね。

強力なQRデコーダーForemostの存在を知りました。