jtwp470’s blog

日記とかプヨグヤミングとか

サイバーコロッセオに参加してきました

サイバーコロッセオにチームHarekazeからHarekazeのメンバーとして参加してきました.

2016.seccon.jp

メンバーは僕を含めて,st98 プロ,hiww 艦長,megumish さんで最終成績は13位でした. f:id:jtwp470:20170306192652p:plain

初めてKing of the Hillという形式のCTFでオンサイトというものだったので楽しみにしていました. きちんとルールを理解するのに1時間程度かかってしまい(あたまがよわい)ましたが個人的な認識ではAttackポイントは普通のジョパディ形式のようなCTFで特定の点数を得ることができ,Defenceポイントは1度に入る点数はそんなに大きくないけど1チームで1つの旗を長時間専有しつづければポイントがどんどん加算されていくというような仕組みです.

問題

1

Attack Pointはなし.素数p, qをアップロードできる.ただし次アップロードするには30分待たないといけない.きちんとルールを理解していなかったせいで最初に2048ビットのpqをアップロードしてしまった.ツライ.途中からトップページにあるpqを取得してきて素因数分解してその回答をアップロードするスクリプトと自分でよしななサイズの素数p, qを生成して提出するようにして地味にDefenceポイントを稼いでいた.なかなかちょうどよい大きさの合成数を作り出すよう努力していて,株価っぽいなあと思いながら見ていた.

f:id:jtwp470:20170311174100p:plain

2

11111につなげると/bin/ashにつながるけどfork禁止.気付いたら @st98 プロが解いていた.強い. 解説聞いていた感じそんなに難しそうだと思えなかったのに当日は何も考えられなかった.

3

Webカメラの問題.IoT.個人的にありそうだなぁと思った.途中でフラグの先頭が出てくるんので最初curlで適当に値を変えてbase64化された画像を得ていたが面倒だったのでChromeのDeveloper Toolsで値をよしなに改変してフラグを得た.これは先にチームメンバが提出していた.

フラグを見るとポートスキャンしろとのことだったので全ポート対象にポートスキャンをしたが特にめぼしいポートは見つからず諦めていたが1時間後くらいにもう一度やってみると57017とかが空いていた.ncでときたま繋がったり繋がらなかったり.この不安定な感じもA & DというかKing of the hillならではなのかなと感じていた.色々コマンドがあってよくわからなかったが @st98 プロと相談していたらフラグを1つ見つけて,かつflag.txtへの書き込みもできるようになった.5分毎に変わるDefenceキーワードを手動で取ってきて残りはPythonのtelnetlibで書くようにしていた.(なので5分毎に1度これをやっていたw)

4

サーバーにsshするやつだった気がする.いろんなコマンドが制限されている.1問目は解けたけど2問目がつまった.解説ではbashの内蔵コマンドで読んでいたけど

grep -e "" /stage2.txt

でも読めた.@st98 プロが strace -iができるということを見つけてくれていて /var/tmp/seccon/flag.txt があるということを教えてくれていたのだが中身を読んでも次に進めず.

解説ではそれを削除して実行すれば次に進めると言っていたがどうしてそれを削除するという発想に至るのかがわからなかった.

5

放置してた.

6

780 MBくらいのpcapファイル.でかすぎる.ほとんどSSL通信だったのでこれらは関係ないだろうと思っていたがWiresharkちゃんがおもすぎて落ちるので諦めた.

感想

  • st98さん以外は先週のkatagaitaiで一度お会いしていたのでやりやすかったし st98さんとも知り合えたのでよかった.
  • 6は解説を聞いていたときにそういうものもあるのかーすげーと言うような印象をうけたが少しGuessingな気がする.
    • ちょうどクソGuessing CTF最優秀賞を受賞するであろうCTF*1の後だったので色々精神が荒れていた
  • dodododo強すぎワロタ
  • SECCON予選みたいにpwnの比重がヤバイとかじゃなくてよかった
  • SAOとのコラボとか言ってたのに結局参加者には何ももらえんのかよ.なんかくれよーという気持ちになったよね.
  • オリンピックのバッジもらっても困るんですがw
  • インターネットに繋げられないのがほんまに辛かった.通常のオンラインCTFだとその名の通りオンラインなのでネットで検索しながら攻撃するというようなことが容易.それに対し今回はそういうことができず,またネットワークを切り替えるにも煩わしさがあった.確かに攻撃やヤバイスクリプトを外に垂れ流すのはアカンというのはわかるんですがそういうのも含めて主催者側は仕事してほしかった.
    • せっかく当日は各状況をSlackで共有しようという話だったのにできなかったorz
  • とはいえこのような環境,場を提供してくださった主催者側には大変感謝しております.ありがとうございました.
  • 終了後にはHarekazeのメンバーは帰るとのことだったので他のチームで参加していたセキュリティ・キャンプ2016勢と飲みに行きました.うさぎさん焼酎薄めずそのまま飲んでて酒豪を感じていたし,あのクソCTF*2でニシローランドゴリラの知識がCTFでは必要であるという知見を得ることができ*3大変素晴らしい会であった.またみなさん飲む機会があったらよろしくね.

次もしでるなら必要なもの

  • HTMLのスクレイピングの知識.特定の表や構造をスクレイピングできるようにしておくとディフェンスキーワードの取得などに役立つかも.
    • でもWebSocketやそれに相当するもので送信されてくるのでその辺を受信する必要がある?
  • もう1台端末

他のチームメンバのWriteup