2014年1月28日火曜日

SECCON2013 online writeup - Find the key! ネットワーク・Web 200

SECCON2013 online の writeup です。
ネットワーク・Webの200点問題、Find the key! です。
問題は seccon_q1_pcap.pcap というキャプチャファイルを渡されてフラッグをゲットせよというもの。

pcap ファイルなのでまずは wireshark で開いてみる。すると ICMP のパケットのみが表示されている。上から順番に眺めているとパケットサイズが異なるパケットがあり、特に No.41 のパケットにはデータ部分に HTTP 、kagi.png の文字がある。



この時点で、ping tunnel を使って icmp パケットのデータ部分に http 通信を埋め込んでいることがわかる。また kagi.png という名前が示す通り、この画像ファイルに答えが記載されている可能性が高いので、画像ファイルを復元する。

該当するパケットのデータ部分から Export Selected Packert Bytes を実施する。



実際に詳しく見ると、No.41 は相手からの通信で、No.42 と No.43 はその応答で、実際の HTTP 通信は No.44 からになる。HTTP 1.1 200 OK とあるので実際の画像データはそのあとになる。
png ファイルのマジックナンバーは 89 50 4E 47 0D 0A 1A 0A なので、No44 で検索してみる。



また、同様にして png ファイルの終端は IEND という文字列になるので検索すると No.48 のパケットにその文字が現れる。

No.44 の HTTP ヘッダーを取り除いたものに、No.48 までのパケットを追加していき png ファイルを作成する。
なお、抜き出したデータの先頭部分は関係のない(たぶんトンネルに使用するデータ)が入っているので、そこは各データから削除して連結する必要がある(全部同じヘッダ情報が含まれている)。



完成した kagi.png を開くと答えが書いてある。














0 件のコメント:

コメントを投稿