自分の問題が解かれないと悲しいので国際化を決定
7月30日、話し合いの末、国内大会ではなく国際大会にすると決めた。理由は、より多くの人に問題を解いてもらいたいからと徳重氏は話す。
「実は暗号問題を作成していたら、想定以上に難しくなってしまって…(笑)。国内のCTFチームで暗号問題に強いチームはそれほど多くなく、たくさんの挑戦を受けたくて、それなら国際大会にしようと思った」(徳重氏)。
そもそも、自分の作った問題がまったく解かれないのは悲しいと薮氏は言う。「欲を言えば、すぐに解いてしまうのではなく、時間をかけて解いてもらえるとなおうれしい(笑)」(薮氏)。
8月2日、開催告知ページを公開し、同時に世界各国のCTF開催情報が掲載される「ctftime.org」に詳細を送り、13日頃に掲載を確認した。名称は「MMA CTF 1st 2015」。MMAとして世界各国のオンラインCTFに出場していることから、チーム名を冠したコンテストにした。
8月29日、スコアサーバーをMicrosoft Azureにデプロイし、参加登録ページを公開。
そして3人は驚いた。当初はctftime.orgに掲載されている他のCTFを見て、100チームくらいの登録だろうと想定していたという。それが蓋を開けてみたら、参加登録はなんと852チームもあった。
驚く一方で、3人は冷静だった。こんなに多いということはCTFが初めての人もいるのではないか。それで1問も解けなかったら、CTFを嫌いになってしまうかもしれず、それはとてもよろしくない。解ける楽しさを知ってほしい。
そう考え、急きょジャンルごとに簡単に解けるWarmup問題を追加することに決めた。9月1日のことである。
ノーヒント! ノーヒント!
開催日の前夜、まずは自宅が近い今田氏が帰宅。CTF開催中に寝ていない人がいるのはさすがに良くないという判断からだ。22時からは徳重氏と薮氏が部室に泊まり、システムの最終調整とデプロイ作業を続けた。デプロイは5日の午前5時に完了。だが、問題のデプロイは1つも終わっておらず、Warmup問題も完成していなかった。
実は開催当日の朝から夕方まで、大学で計画停電が予定されていた。そこで7時半、部室が停電したのに伴って2人は今田氏の自宅に移動、作業を続行した。
そして9時。作業は無事終わり、コンテストが開始した。
実際に参加した(参加意思の確認を兼ねたWarmup問題を解いた)のは、70か国・地域の673チームとなった。「100チーム程度を想定して設計されたスコアサーバーなのに、800チームまで耐えたのはすごい」(徳重氏)。
幸いなことに、システム側のバグを指摘されて修正した以外は特に目立ったトラブルもなく、最後までつつがなく進行した。
開催中、サポート用に英語と日本語でそれぞれチャットを開設したが、英語チャットには「ヒントくれ」の言葉が乱舞した。「質問は、参加チームが104ともっとも多かったアメリカが大半だと思う。質問は各国の昼間に伸びて明け方に減る傾向があって、質問くれの書き込みを見るとアメリカの昼間の時間帯がほとんどだったので」(徳重氏)。
ヒントくれ攻撃への対応は、「Warmup問題にはヒントを出して、その他については、明らかに解けている場合のみ対応するというポリシーを決めていた」と今田氏は説明する。結局ほとんど「ノーヒント! ノーヒント!」を連呼するはめになった。
その一方で、日本語チャットは動きが一切なかった。国民性を感じたと3人は笑う。
CTFを運営する楽しさは開催後にある
こうして48時間を無事乗り切った3人を待っていたのは、ctftime.orgに書き込まれた参加者による数々の好評価だった。その翌週に開催された台湾のCTF大会「HITCON」でも、「MMA CTFの問題が良かったと台湾チームから声をかけられ、うれしかった」と徳重氏は照れる。
一方で課題もいくつか浮上した。一番痛感したのは、人手の足りなさだ。
「スコアサーバー関係を薮くんにまかせっきりだったのは心苦しかった。また、CTF最終日には私も徳重くんにも予定があって、どうしてもほぼ同時に休息をとらなければならない時間帯があった。開催中はサーバー監視や参加者からの質問への対応で誰かが必ずいなければならないので、もう少し人数は欲しいところだ」(今田氏)。
また、英語力もアップしたいと今田氏は言う。「チャットはテキストベースだから、読んで意味を咀嚼する時間がある。それでも、すぐに反応するには語彙力や会話力が求められる」。ネットスラングや汚い表現も多く、耳慣れていないだけに戸惑うことも多かったという。
それでも、CTFを開催して良かったと3人は口をそろえる。
薮氏は「スコアサーバーを開発するなど、環境構築はとても楽しかった」と述べる。
また、今田氏は「特に自分の作った問題が想定解法とは異なるさまざまな方法で解かれているのがおもしろいし、勉強になる」と微笑む。CTFでは、解いた問題の解き方をブログなどで概説する「Writeup」という習慣があるが(CTFによってはWriteupを禁止している場合もあるので要確認)、「なるほど、こういう解き方もあるんだという発見がある。また、それが分かることで、今度は想定解法に近い方法で解いてもらうにはどうすればいいかも見えてくる」とのこと。
徳重氏も、暗号問題で開催中に誰も解かなかった問題があったが、「コンテスト後にMore Smoked Leet Chickenが解いてWriteupをあげてくれてうれしかった」と述べる。「その意味で、CTFに参加する楽しさは参加している最中にあり、CTFを運営する楽しさは参加後にあるのかもしれない」。
2016年も第2回の開催に期待!
できれば今年、第2回目を開催したいと述べる3人。今のところはCTFに参加する方で忙しく、問題のアイデアはあっても作成できていない状態なので明言できないとしながら、開催する場合はシステムを乗せるためのインフラを提供してくれるスポンサーを探したいと意欲的だ。
CTF開催に興味がある人たちに向けて、徳重氏は「思い切ってやってほしい」と呼びかける。最初は腰が上がらないかもしれないが、一歩を踏み出したその先には今まで見えなかった世界が広がる。
2013年に開催された第1回SECCON CTF全国大会で、実行委員会の上野宣氏はこんなことを述べている。「おじさんたちが作ったCTFなんかつまらないから、自分たちで新しいCTFを開催しよう。そんな産声をどんどん聞きたい」。
MMA CTFは、そんな産声の1つかもしれない。