仙豆のレシピ

ちょっとしたことでも書いていく姿勢で

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)を取り出して表示してみると、
f:id:senz:20140126142741p:plain
という画像だったので答え。

flag:deadbeeffeedbad

この問題解くのより作るほうが大変そう

まとめ

自分程度が解けるなら大半の人が解けているはず…。ならばwrite up書く必要があるのかと思うがまぁチームのボスにも書けいわれたんでw

次はもっとたくさん解きたいです

(2014/1/24/0:30)追記
書き忘れたけどチームsstwは600点で98位だった模様。ぎりぎり2ケタ!