SECCON オンライン予選 write up(フォレンジックス100ネットワーク200)
2014/1/25/12:00~26/12:00に行われたSECCON オンライン予選にチームsstwとして参加しました。前回のCTF北海道大会でCTF初参加(1問も解けず)だった自分としては、「1問は解きたいな」という心持で挑んだCTFでした。
結果はフォレンジックス100とネットワーク200が解けました。目標達成のはずなのですが、今は悔しさしかないです。人間というのは満足しない生き物だなと実感。
というわけではじめてのwrite upをカンタンに書いてみたいと思います。
フォレンジックス100「ここはどこ?」
問題のForensicist.datをvimで開くと、
Received: (qmail 32744 invoked from network); 02 Feb 2012 02:02:02 -0000 From: hogehoge@example.com Content-Type: multipart/mixed; boundary="0123456789_=_0123456789" Date: Fri, 02 Feb 2012 02:02:02 +0000 Subject: =?ISO-2022-JP?Q?=1B=24B=243=243=24O=24I=243=1B(B?= To: fugafuga@example.com --0123456789_=_0123456789 Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: 7bit $BEz(J: $B!{!{!{!{!{!{(J $B!{!{!{(J --0123456789_=_0123456789 Content-Type: application/octet-stream; name="panda" Content-Transfer-Encoding: base64 Content-ID: <panda.tif@0123456789.ABCDEFG> SUkqAHbBAQCAFYnlF/gYEAgAAEBAEAQ2Gv2IAB8RMAPuLAACxkAASOAAFAqERkCgADgcCAADAYDg B/S2HQ0CQwABAHA0APl8PYAAN/v6SAcDAABAKGgGjTsBgOhUMAPd7vmJPmoRB+yiDQkBUqJvisUS 以下略
みたいな感じだったので、あーbase64をデコードすればいいのかと思ってこちらに書いてあるように
perl -MMIME::Base64 -ne 'print decode_base64($_)' < Forensicist.dat > panda.jpg
を実行。するとpanda.jpgに座標の情報が入っていたのでそれをgoogle mapで検索して終わり。
flag:Taipei Zoo
ネットワーク200「Find the Key!」
問題のseccon_q1_pcap.pcapを開くとひたすらICMP echo requestとreplyを繰り返している。んー?と思いながら見ているうちにecho replyのデータ部分にhttpの文字を発見。画像を得るhttp通信だったのでその部分だけを抜き出し、バイナリエディタで「89 50 4E 47」から始まる部分(.png)を取り出して表示してみると、
という画像だったので答え。
flag:deadbeeffeedbad
この問題解くのより作るほうが大変そう
まとめ
自分程度が解けるなら大半の人が解けているはず…。ならばwrite up書く必要があるのかと思うがまぁチームのボスにも書けいわれたんでw
次はもっとたくさん解きたいです
(2014/1/24/0:30)追記
書き忘れたけどチームsstwは600点で98位だった模様。ぎりぎり2ケタ!