CTFと共に一年を振り返って
はじめに
この記事は Contrail Advent Calendar 1日目の記事です.
今年もAdventCalendarの季節になりました.これまでは読むだけでしたが,せっかくなので書いてみようと挑戦してみました.が,技術?系以外の記事を書くのは初めてなので上手く書けてるかわかりません.また,タイトルでは1年となっていますが,4年ぐらい振り返っています.
CTFとMaru
CTFとの出会い (2015)
僕がCTFと出会ったのは大学へ入学したのと同じ年の2015年のことでした.学部では競技プログラミングこそ講義中にアナウンスされたりしていましたが,セキュリティ関係でそのような話はありませんでした.そのため,自分で似たようなことがないのか調べている最中にCTFを見つけました.そしてすぐに「CTF for ビギナーズ in 長野」(現SECCON Beginners)へ参加しました.1 この勉強会の最後にはミニCTFがあるのですが結果は散々でした.はっきり申し上げると下から2番目でした.この年の春に大学へ入学し,プログラミングをはじめてターミナルなんかの操作も cd
,ls
がやっとだったので当然といえば当然だったのかもしれません.当時の自分にとってはかなりショックでしたが,今思えばこの経験がすべての始まりだったのかもしれません.
CTFとのお付き合い
はじめて参加した勉強会のあともCTFに対しての熱は冷めませんでした.その年(2015年)の夏休みの終わりで人間関係とかから部活を辞めていて,また何かをやめることが怖かったしなによりフラグを通すのが楽しかったのだと思います.それからというもの自分のペースで常設CTFに挑戦していきました.その中で自分は主にPwnに取り組みました.その理由として,Pwn問の中にはCのソースコードが配布される問題があります.大学でも授業ではC言語を取り扱っていたので少しは解くためのきっかけがつかめるのではないかと考えたからです.しかし,Pwnでは普段のCプログラミングではあまり注目することのない低レイヤーな部分の知識が必要となってきます.
Contrailの誕生 (2016)
CTFtimeなどからCTFに参加するには形だけでもチームが必要な場合が多いので1人でContrailを立ち上げました.CTFTimeに残っている最古の記録はSharifCTF 7への参加なのでおそらくその頃に作成したのだと思います.ちなみにチーム名の由来はそのころ使っていたのPCの壁紙が飛行機と飛行機雲だったからです.自分のアイコンが飛べない鳥ペンギンであること,飛行機雲が空を飛ぶことへの憧れだったとか深い意味はありません.マジです.
チームを作ったはいいものの普段は常設CTFを自分のペースで解いていました.毎週末開催される様なCTFはレベルが高すぎる+時間が圧倒的に足りないので気が向いたときに自分が納得するまで試すことができる常設CTFはとてもありがたいものでした.その中でも LSECTF とCpawCTF2には特にお世話になりました.記録 からわかるようにかなり長期間に渡って挑戦しています.Pwn(Exploit)ではソースコードが配布されるものもあるのでとっつきやすいのではないかと思います.
再挑戦 (2017)
2017年に「SECCON Beginners 名古屋」に参加しました.2 一応,長野のリベンジのつもりとして参加しました.3 紆余曲折ありながらも継続してきたことが良かったのかある程度の問題は解けるようになっていました.その中で解けなかった問題を勉強会の終了直後から復習しました.大学の講義中もカタカタしながら最後まで残ったRev問 のフラグは You are not beginners
でした.全くの初心者からはじめてコツコツと継続したものが少し報われたような気がして嬉しかったことをいまでも覚えています.
crackme_revengeようやく解けた・・・
— Maru (@GmS944y) 2017年7月20日
1ヶ月近くかかったけど #ctf4b
この経験からPwnを中心に取り組んで行こうと決めて(なんで!?),前述したLSECTFなどで練習をしました.ハリネズミ本の物理本を章ごとで割いてPwnの章をいつも持ち歩いて読んでいました(作者様すみません).
新たな環境へ (2019)
2019年の3月に大学を卒業するにあたり,様々な理由からプログラマ・ITエンジニアの様な仕事には就けなかったのでそれを期にCTFは辞めようと考えていました.でも,そのまま辞めてしまうのはもったいないと感じたので大学に全部置いて行こうと決めました.そのアウトプットとして学内でLT,勉強会を開催させていただきました.4
ContrailとMaru
今年の春,やっぱりCTFを続けたい・気軽にCTFに関する話題で会話できればという思いからチームメンバーを募集しました.自分の想像を超えて多くの方から連絡をいただき本当に嬉しく思います.
CTFチームの募集をしたいと思います.
— Maru (@GmS944y) 2019年4月20日
興味・質問のある方はDMかなにかでご連絡ください.
チーム勉強会とMaru
8月にチームの参加可能なメンバー+交流のある方をお誘いしてCTF勉強会を開催しました.その間はすべてのリソースをCTFへ割ける素晴らしさを感じました(またしたい).皆さんの豊富な知識や技術に圧倒されながらも,CTFに対する思いは強くなりました.偶然時期が重なって開催されたCTFでは普段では諦めてしまいそうな問題も取り組むことができました.
勉強会の雰囲気はハッシュタグ #Contrail勉強会
で検索していただくとなんとなく感じていただけるのではないかと思います.
これから
変わらない足取りを
おわりに
短いですが最後まで読んでいただきありがとうございます.
チームのメンバー,TwitterなどSNSで良くして頂いている方,勉強会に協力・参加してくださった学内の関係者各位,本当にありがとうございます.この場を借りてお礼を伝えたいと思います.また,ブログ上であることお許しください.
TwitterのDMは開放しておりますので,ご意見,ご感想,ご質問等々あれば連絡していただけると幸いです.
次の記事は@y05h1k1ngさんの「Contrail修行日記を書きます」です.よろしくお願いします.
-
ブログ書きながら気づいたんですが大体2年の記念日だったんですね.(長野:2015/7/5,名古屋:2017/7/1)↩
-
その際の資料はSpeakerDeckに置いてあります.↩