CTF紹介の連載が途絶えてしばらく経ちますが、CTFの紹介の話ではありません。

とりあえず今月は世界中の若者を地域ごとに選抜してCTFで競わせるICCという大会のアジア予選、ACSCが開催されます。 前回の傾向からすると日本は激戦区なのは変わらず、参加国数が増えたことから枠がより厳しくなっていると思います。 実は作問に誘われて軽い気持ちでOKしたんですが、いざ開催日が決まるとSECCONと近すぎて結局何もやっていません(申し訳ねえ)。

SECCON運営記を書く上でプロットを書いてみたところ箇条書きで100行近くになりました。 個人的に今まで開催した中で一番大きいイベントだったので、こういうのは気持ちが新鮮で書けるうちに書いておこうと思います。

思考ログみたいなところがあるので内部のことが結構出てきますが、誰かを悪く言う意図はありません。 実行委員会の皆さんはベストを尽くしてくれていますし、今回の開催はかなり気に入っています。 基本的には自分が考えていたけど様々な理由1により実現できなかった反省の話です。

SECCONの意義

実は2020年度開催の初期にSECCON自体をどうするか?みたいな話が相当大きく出たそうです。 私はその頃運営に入っておらず、2020年度は作問として呼ばれて1年目くらいだったので詳しくは知りませんが、続けるかどうかのレベルまで話が行ったと聞いています。

しかし私の考えではSECCONの知名度は余りにも大きく、下手すれば国内ではCTFという単語より認知されている可能性まであるので、看板は維持したいという気持ちがありました。 同じ作問メンバーを揃えて他でCTFやればいいという意見も当然出ました。 ただそれは恐らくそういうCTFになるだけで、すぐSECCONの代替になり得るかというとかなり難しいと思います。

高校生の頃に少しだけ競技クイズをかじっていましたが、ちょうどそのタイミングでテレビの高校生クイズが知識重視からひらめき重視に切り替わって高校生の目指す先が消えてしまったことがあります。 もちろん有志のクイズ大会はあって、テレビの企画よりそちらのほうが競技として優れているのは間違いないのですが、やはり目指す先として知名度のある大会は重要だと実感しました。

以上の理由から、SECCONは維持しつつちゃんと企画を充実させようという方針を考えて行動しています。

SECCONの他の取り組み

SECCONの2022年度が始まった頃はCTFは特にやることがなかったので年間計画に少し口出しをしていました。 現地開催を目指すというのは当然その頃から決まっていたわけで、そこに出す企画をどう揃えるかが問題です。

今までも今回もCTFの決勝戦が自ずと一番大きな企画になっていますが、来場者を呼ぶイベントの企画としては長時間見てても面白いことはないのであまり適していません。 そもそもCTFなんて見てても面白いわけがなく2、CTF始めたてのプレイヤーが会場に来て「いつかここに来たい」と思ってもらえれば十分です。

実は2021年度くらいからずっと言っていたのですが、発表者を公募するCFP形式のトーク枠がやっと登場しました。 2019年度までの開催でもトーク枠はありましたが、公募ではなかったと記憶しています。 言い出しっぺがやらないと誰もやらず、一方言い出しっぺはCTFで忙しいみたいな状態だったので第1回を開催してもらえて非常に嬉しいです。

トーク枠以外にもSECCONにあってほしいものはまだあって、その中の1つがオープン形式のCTFです。 CTFをやっている人を見たり解説を聞いたりしたところでほとんど理解できないので、期間中CTFを開きっぱなしにしておきたいです。 現状でもスポンサー企画としてCTFをいくつか提供いただいていますが、当日やりたくなっても締め切っていたり時間が過ぎていたりすると参加できなくなってしまいます。 「オープンCTF」とか名前を付けた統一フォーマットを作ってまとめられるようにしたいですね。

会場選定

今回は2018, 2019年度のAKIBA SQUAREから会場が変わり、浅草橋ヒューリックホールでの開催となりました。

CTFの開催についてはホールがあまりにもピッタリサイズで感動しました。 一応国内と国際で合計24チームまで入るという計画をして、プラスで後ろにミニLT会場みたいなのができるかなという図面を夏前には考えていた気がします。 実際にはちょっとLT会場が近すぎて周辺チームに悪いなと思ったのと、国際が12チームいたら動線が腐ってたかもという反省があります。 CTF会場がうるさくて集中できないのはよくある話なので許して3

CTF的には満足だった一方で、CTFでホールを使い切ってしまったために、他のイベントで使う部屋が限られるという課題もありました。 せっかくの3年ぶりの現地開催だったのに、登録が締め切られてしまって参加できなかった方も多いと思います。 イベント会場の選定は好みの配置・広さの会場がないとか、感じよさそうだけど価格的にはキツいとか色々考えることがあって大変です。

世界観

世界観というかなんて言えばいいのか。 SECCONってこうだよね、みたいなイメージの話です。 ラスベガスの空港に着くとスロットが置いてあって来た感がめちゃめちゃ高まるとか、異国の町並みにテンションが上がるとか、些細なことですが個人的にこういうジワーッっとくる感覚が好きなのでそういう環境を作れる要素はできるだけ用意したいです。

CTFに関して言えば、NIRVANA4による可視化が強く認知されていると思います。 継続的に使われているのはこれくらいなので、SECCONを復活させる上では避けては通れません。 実際、過去のSECCONを知っている人は「やっと現地開催が帰ってきた」、初めての人は「こんな可視化があるんだ」と思ってもらえたのではないでしょうか。

ただ、過去のSECCONを参考にして許されるのは今回だけだと思っています。 次からどういう世界観を構築していくかは全く思いついていません。 そんなものなくてもいいと言ってしまえば楽ではありますが、こういう部分からグッズ製作が捗るのでなんとか考えたい。 どなたか面白い案があればお待ちしています。

デザイン

机の横についてたチームフラッグと卓上のチームパネル、賞金のパネルの3つを主にデザインしました。 電脳会議ってやつでは全体テーマが全然なかったので意外と素材に苦労しています。

チームフラッグの着想はDEF CON CTFからです。 早めにptr-yudai氏から欲しいという意見を貰っていましたが、実は設置方法で悩んでいて私的にはGOサインを出しづらい状態でした。 最終的には設置できなかった場合は、DEF CON同様机の上に置くということにして制作を始めます5

制作のための情報(プレイヤー名、国籍地域等)はチームから収集していたので万全の体制でしたが、結局はチーム名とチームロゴだけを使いました。 デザイン力が足りずにそれらを上手く配置できなかったこと、配置してもオブジェクトが多くて雑多な印象になりそうなことが敗因です。

一部のチームのロゴは黒背景に適していなかったので、こちらでベクター化して反転させたり縁を足したりしました。 更にはチーム _(-.- _) )_ については特殊なルートでフラッグ用のロゴの希望が出てきたので困惑しながら修正しました。

_(-.- _) )_のチームフラッグ

_(-.- _) )_のチームフラッグ

現物は会場で初めて確認しましたが、かなりいい出来だったと思います。 机への取り付けも養生テープが許可されたので問題なく、加えて少し気にしていたテープによる剥げも特になさそうでよかったです6。 ちなみに当たり前のように置いてあったせいかあまり感想が投稿されていません。 参加記とかで写真と共に言及してもらえると嬉しいです。

チームパネルの背景にはSECCONサイトでおなじみのPCが重くなるアレを使いました。 サイトからコードをいい感じに持ってきて、ランダムな任意解像度のSECCON背景を作れるジェネレーターを作り、いい感じにガチャれるようにしています。 世界観ってやつがここで効くのに公式サイトの謎のやつがテーマなの若干嫌。

賞金パネルは自分が過去に持ち帰るのが面倒で破壊した経験を思い出しながら発注しました。 チームフラッグみたいな素材(ターポリン)がいいなと思ってたんですが、やっぱり表彰式で見栄えするのはスチレン素材のパネルでした。 諸々のサイズ感がわからなくて困ったので後の人々のためにメモ。 1位が900x450、それ以外が594x300でした。594なのはA2サイズに入れると安かったからです。

あと、国際チーム向けにビザ用とは別の招待状を作成しました。 何書いたらいいか全然わからなかったので、Satoki氏のDEF CON 30参加記にあった招待状とかググって出てきたやつとかを参考にして適当に書きました。 渡した人から文句が出なかったのでこんなのでも大丈夫らしいです。

招待状

招待状

あ、あと名札。名札もやりたかったけど全体統一したほうがいいのでチーム名だけ投げて終わりました。 やればよかったかもしれないし仕事を増やしに行かない方がいいかもしれない。

CTF

作問はしていないので特に言うことはありません。 KoHのテストプレイに参加しておもしれ~って言ってたくらいです。

それ以外の面で言うと、SECCON CTFでお金を出すようになって2年目、決勝付きだと初めての開催です。 通らないと思って最初に言った総額100万がそのまま通ってしまったので2年これでやりましたが、各順位で分配することを考えると少ないような気もしています。 CTFの開催費・賞品爆上げレースに果たしてSECCONはついて行けるのか。

ちなみに国内5位まで賞金が出るのは、7割が100万の数合わせ、3割がCTFでお金を貰う経験をしてほしいという気持ちからです。

会場準備~当日

会場選定とは別で前日準備や当日に思ったちゃんとしたイベント会場の感想を書きます。

まず、ちゃんとしたイベントホールなので7事前に図面を渡すと当日にはその配置に机や椅子を並べてもらえました。 片付けもそのままの配置でよく、SECCON Beginnersの会場等では机配置から検討することがよくあったのでそれがないのは助かります。

照明や音声についても専属の人がついてくれるため、インカムでお願いするだけで調整してくれます8。 照明は事前にCTFによさそうな明るさ等を調節してそれをプリセットにしてもらいました。 CTF会場が暗い方がいいか明るい方がいいかは諸説あるような気がしますが、ICCに行ったときに同様の質問があり、多数決であっさり明るい側に倒れたので今回もそうしました。 とはいえ眩しくないようにMAXよりは暗くしています。

BGMは私が自ら音楽を聴きに行くことがなく、疎い自信があるので前日に丸投げしました。 最終的にはNo Copyright Song系の適当なリストが選ばれて流されていましたが、普通によかった気がします。

開会式・表彰式

式みたいなのは苦手とする部分なので他の人にやってほしいところですが、少なくとも進行に関しては投げられないことが必至なので結局大体のことをやる羽目になります。

まず、開会式は大体22チーム分のチーム紹介を1チーム1分として30分程度を見込んでいましたが、様々な最適化により15分で終了し謎に30分の空きができます。 30分くらい掛かるから後ろに15分位あれば大丈夫だろう、じゃないんだよな。 開会式が伸びて後ろのCTF開始に刺さるのを恐れた結果です。

表彰式は一番大事なので割と優先してスライドノートに進行コメントを書き込んでいましたが、配役がムズいことに気づきます。 CTFリーダーなので賞金パネルとか色々渡す役をやるのがいいかな?と思っていたところ、一方で進行を自分が作った上に調整する時間がなかったので司会役が自分しかいなくなります。 人にお願いしたいときはリハーサルというやつをやったほうがいいと思います。

ステージの狭さも失敗したポイントです。 事前準備では台が1個分(本番の半分サイズ)のステージが仮で置いてあったのですが、これでは狭いと2個に増量したところで広くなった気がして安心していました。 使える台はあと2個あったので奥行き方向に置けばよかったと思っています。 これもリハーサルなり、本番と同じ人数で簡易的にやってみるとかをするべきでした。

良かった点としてはスピーチ原稿が数日前に完成していたことです。 これで話す内容をアドリブから切り離せるので疲れていてもなんとかなります。 一方で疲れすぎていて英単語が読めなくなり、読めた部分と記憶から元の文章を思い出すことになりました。

ホテル

過去のSECCONは予選1位のチームにだけ渡航費を出していたそうです。 これを聞いて「実質予選1位に日本旅行の賞品が出るCTFじゃん」と思ってしまったので平等かつ大体同程度の支出で済むホテル提供に変更しました。 国内決勝チームは従来通り学生のみに補助という形になりましたが、ビッグになって全員にホテルが提供できるようになりたいですね。

昼食

ptr-yudai氏発案で、元ネタは韓国のCODEGATEで食べきれないほどの食料が降ってきたことからだそうです。 実はSECCONでは今まで昼食を提供したことがなく9、初の試みになりました。 食の提供は個々人によって食べられないものがあるので配慮が難しいところでしたが、今回に限っては特に何もなくてよかったです。

ちなみにICCではCTF中常にビュッフェ形式でご飯が提供されていました。 提供形態ではこれが最強だと思います。 ただ、取りに行って複数種類から選ぶのが面倒なのであんまり食べなかった記憶があります。 そもそも短期CTFではあんまり食べません。

アフターパーティ

ケータリングは設営に地味に時間が掛かるので、通常は別室で用意してもらい準備が終わったらそこに行くのが普通です。 しかし今回の会場ではそのようなスペースはありません。 そこで、それを可能にするために実はCTFを1時間くらい早く切り上げ、準備用の時間を捻出する案などを検討しました。

しかし色々考えているうちに12月になり、コロナ感染者数が増え始めます。 そのため開催は見送られ、代わりに飲み物だけの意見交換会を実施するということになりました。 結論から言えば、ほとんどの案が無理ゲーだったのでやらなくて正解だったと思います。

「えっ?寿司が出た?」

2月の直近の状況では大丈夫そうなので何か買ってこようということで沸いてきました。 買ってきてくれたSECCONスタッフの各位に感謝10

おわりに

開催間近での判断ミスがめちゃくちゃ多くて悲しいですね。 反省点として何かを改善できる感じでもなく、自分があと何人かいればなんとかなってたろうなという感想にしかなりません。 結局のところ、開催のイメージを一人で固める力が足りず、本番が近づくとイメージが固まる一方で、今度は締め切りが一斉に襲ってきて個々の判断が疎かになる感じがします。 話し相手がいればもう少しマシだったかもしれません。

来年度開催は……あるんですかね? 来年も期待してますというありがたい感想をたくさん見かけましたが、今は何もしたくないので困っています。 次の仕込みってそろそろやらないとまずいわけですが……。


  1. キャパが小さいので何もできない。キャパの大きい人に役割変わってほしい ↩︎

  2. 面白く見せようとしているGoogleのHackceler8は頑張っている。見せようとしているだけで見せていない(誰も見てない)のが問題だが…… ↩︎

  3. 妨害コンテンツとかいう概念はもう消えてしまったらしい ↩︎

  4. NIRVANA改SECCONカスタム。NICTの協力により運用されているCTF可視化システム ↩︎

  5. この辺りでDEF CONでは机が丸テーブルだったので取り付けられずに机の上に置いた説を確信します ↩︎

  6. 机の横に紐でくくりつけるのも想定して紐を買ってありましたが、せっかく買ったからと試すも早々に失敗して諦めました ↩︎

  7. 他を知らないので一般的かよくわかりません ↩︎

  8. お願いするだけで調整してもらえるのは非常にありがたいものの、インカムを使うのが自分しかおらず以下略 ↩︎

  9. 会場が飲食に厳しかったり ↩︎

  10. 食べるという気分になれなかったので実は何も食べてません。多分食べてないせいで片付け時に怪我をします ↩︎