2014年7月20日日曜日

SECCON 2014 オンライン予選(日本語)

チームnewbieとして参加しました。

今回は@ucqさんと二人だけの参加で圧倒的「人手不足」を痛感しました。
つらかったです。

以下、解いた問題のwriteupです。

練習問題

見るだけ。
FLAG{seccon2014}


このパケットを解析せよ

pcapngファイルを与えられました。とりあえず、
# strings seccon2014.pcapng | grep flag
とかしたらflag.txtとかあったので、wiresharkでpcapに変換し、 Network Minerで抽出しました。
base64データを入手できたので後はデコードするだけです。
FLAG{F7P 15 N07 53CUR3}


ソーシャルハック?

LINE風のWebチャットを与えられました。

いきなり「何してますか?忙しいですか?手伝って(ry」とかきたので、流行りの事案を踏襲してるんだなぁと考え、リクエストを垂れ流すサーバを立て、画像っぽいURLを送りつけたら案の定リクエストがありました。

User-AgentがVNCパスワードであることは自明なので、それを使って153:120.82.112::5901に接続したらデスクトップ上のメモ帳にでかでかとFLAGが書いてました。
FLAG{giveMeYourWebM0n3y}


捏造された契約書を暴け

ddイメージを与えられ、ファイルの作成日が改ざんされた云々の説明がなされました。
改ざん前の日付けがFLAGだそうです。とりあえず、
# strings Timestamp.dd | grep 2012
とかしたら
2012:05:23 13:29:00
とか出てきました。試しに形式整えてサブミットしたら通りました。


重ねてみよう

164×164のgifアニメーション画像を与えられました。
タイトルからしてフレーム分割→重ねればいいってことは自明です。

また、画像のアス比、白黒、SECCONの問題傾向を踏まえるとQRコードの可能性が高いと考え、
白黒反転で新規画像を作成しました。
http://pastebin.com/ccQ3t8QT
案の定、QRコードが出来たので読みこむだけです。

FLAG{Many dot makes a QR code}


箱庭SQLi

普通にsqliするだけでFLAGが出てきます。
a' union select 1,group_concat(sql),1,1,1,1 from sqlite_master--
a' union select 1,FLAG,1,1,1,1 from SECCON--
FLAG{EnjoySQLi}


(解けてないけど)あみだくじ

あみだくじで遊べるelf実行ファイルを与えられました。1000回解くとFLAGが出るそうです。
午後は殆どこれをやっていました。つらかったです。
何がつらいかというと競技終了10分後くらいにFLAGでました。

せっかくなのでスクリプト晒します。単純なブルートフォースです。PPCダメです。
http://pastebin.com/SQkW25Ui
※correctがcollectになってるのは普通に間違えました

amida実行ファイルにはsleep処理があったらしく、ucqさんに潰してもらいました。
あと、pexpectのsend処理も動作が重く、それを改善してようやくまともに動くレベルです。
VMにcpuコア4つくらい与えて並列化していれば…と思うと悔しくてたまりません(´;ω;`)


newbieハイライト

箱庭XSSの一コマです。プロ

その他

今回は残念ながら11位という結果でしたが楽しかったです。
オンライン予選(英語)頑張りたいと思います。