読者です 読者をやめる 読者になる 読者になる

SECCON 2014 予選に参加した

先日 CTF for Beginners に参加したのですが、7/18(つまり前日)に主催者側からSECCON2014があるよとメールが来たので参加してみることにしました。 自分はCTFに関しては先のctf4b以前・以降何もしていません。つまり全くの初心者状態でこの予選に挑むことになりました。 とりあえず準備運動としてksnctf*1で簡単な問題を解いてみました(541pt)。まあこれくらいの問題を解ければいいかと思い本番に臨みました。

開始は9時でしたが起きたのは10時です。そこから2問ぐらい解いて二度寝しました。 二度寝から覚めた後(3時ぐらい?)問題が追加されていたので解きました。 それから後は、SCP-Wiki*2を読んだり、ご飯を食べに行ったり、家に湧いた蟻を対処するためにアリの巣コロリを買ってきたりして、実質取り組んでいたのは1〜2時間ぐらいです。

結果は425チーム*3中117位で獲得ポイントは600ptでした。初心者としてはまあ良い方なんじゃないかなと思います。

分からない問題はまあ考えても分からないだろと思って真面目に考えていません。 ただし、「ソーシャルハック?」(ネットワーク 300pt)は割と時間を割きましたが、結局何も得られませんでした。終わった後Twitter見てみると画像踏ませてVNCがなんちゃらと言われていたので、「は〜〜〜」と感嘆しました。

以下は通した問題とその解放的なものです。それぞれの問題に5〜30分ぐらいかけた感じです。

  • このパケットを解析せよ (ネットワーク 100pt)

    • pcapファイルが与えられて解析する問題。
    • FTP通信っぽかったので普通に内容を見てFLAG出てきて終わり。
  • decode me (暗号 100pt)

    • 暗号のファイルを解析する問題。
    • rot13っぽいなと思ってGoogleでrot13の方法をググるnkfを使えと言われたのでやったらFLAG出てきた。
  • 879, 394 byte (フォレンジック 100pt)

    • ファイルシステム的なのを見て879, 394 byteのファイル名を答えろという問題。
    • バイナリエディタで開いて 0d 6b 22 の列 (逆を含む) を探した。発見。ただしどのファイル化はまだ不明。
    • ファイルシステム全く知らないので取り敢えず周りの文字列を打ち込む。
    • Desert.jpg -> 不正解
    • chrysant何とか -> Google検索で chrysanthemum という文字列を得る -> Chrysanthemum.jpg -> 正解
  • 重ねてみよう (プログラミング 100pt)

    • パラパラと点が表示されるアニメGIFが与えられる。
    • GIMP使って点を重ねあわせて出てきたQRiPhoneで撮影。FLAGが書かれたテキストを得る。プログラミングとは何だったのか。
  • 箱庭SQLi (Web 100pt)

    • SQL injectionをするためのsandboxが与えられる。
    • Windows実行ファイルなのでwindowsを引っ張りだす。UNION SELECTで sqlite_master を見たら TABLE SECCON( FLAG TEXT NOT NULL ) があったので抜き取って終わり。

CTF4Bのお陰で2問ぐらい解けた感じです。感謝🙏

-

今後の予定は未定ですが、12月にまたあるということで、そこでも出たいと思います。それまでにCTFの勉強をするかは気分次第です。 ただ、なかなか面白さがわかってきたので気が向いた時に適当な問題を解いて見たいと思います。