# SECCON 2022 電脳会議 参加記 ## はじめに 初めまして、セキュリティエンジニア[^secengineer]のSatoki Tsujiと申します。今回はSECCON Beginners Workshop🔰 (ctf4b)、SECCON CTF 2022 Finals🚩の運営兼雑用スタッフとしてSECCON 2022 電脳会議に参加させていただいたので参加記を残します。SECCONに関わって2年目ですが、ようやくオンサイト開催が実現できるようになり感動しています。順調にいけば来年度以降も開催されると思いますので、本参加記を読んで興味を持っていただけた方はぜひ参加を検討してみてください。 ## 現地 SECCON 2022 電脳会議は2023年02月11-12日の2日間で、浅草橋ヒューリックホール&カンファレンスにて開催されました。具体的なスケジュールは **[公式イベントページ](https://www.seccon.jp/2022/ep230211.html)** をご覧ください。メインイベントとしてSECCON CTFの本戦が開催され、各予選を突破した国際枠10チーム(1チーム不参加)と国内枠12チームのハッカーたちが鎬を削りました。その他にもctf4bやctf4gのworkshop、専門家の講演、企業展示などが行われていました。 ### 0日目 運営に関係する人間は設営のため、前日から会場入りをしていました[^syuron]。私(とctf4bチームのメンバ)は主に初日のctf4bのworkshopを担当するため、その問題サーバのデプロイやスコアサーバ[^wani]の確認を行っていました。また、CTF Adminのptr-🐱さんがリアル問題であるPhysical Device Challenge を作成したため、LANケーブルをかしめる修行と、その設営&実際の挙動テストをCTF会場で夜まで行っていました[^lanlan]。CTF Adminとインフラの皆さんなども本番に向けて最終チェックをしており、祭り前日の騒がしさを感じました。 パネルが設置されると一気に雰囲気が出ます。 ![secconp](https://i.imgur.com/XcwaiTY.jpg) かっこいい青色名札です(手書きなので字が下手で苦しみました)。 ![staff](https://i.imgur.com/Mciurkj.jpg) ctf4bの全作問チェックで狂いそうになる🐦(n01e0:顔w)さんと、大量のLANケーブル山を見て絶望する🐊(Hi120ki:右)さんと🐹(Tsubasa:左)さんです[^tori]。 ![crazytori](https://i.imgur.com/iI4A1Eg.jpg) ### 1日目 ついにSECCON 2022 電脳会議の日です。この日は朝一にctf4bのworkshopが開催されますが、担当の箇所までに時間的余裕があったため、本戦を見て回っていました。 可視化システムがカッコよく、各チームの熱気が伝わってきます(物理的に暖房効き過ぎ)。 ![secconctf](https://i.imgur.com/09yLaAg.jpg) 集中しているため、知人でも話しかけることができない雰囲気です(shioさん:国内3位チーム)。 ![shio](https://i.imgur.com/9dTVXzr.jpg) プラプラと一人で油を売っていると、そのうちにctf4bのworkshopの出番です。このworkshopではCTF入門者に各ジャンルの簡単な問題を解いてもらい、その後に解説を行うといった取り組みです。定員を大幅に超える申し込みがあり、全員に参加していただけなかったのが心残りですが、来年度も全国各地で開催する予定なので申し込んでいただけると嬉しいです。 ![ctf4bws](https://i.imgur.com/1AKlfI9.png) 難易度は以下のスライドのように優しいものが多いです。私はtask4233さんと一緒にweb分野を担当し、少ない時間ですが全ての問題の解説を行いました。体感としてはもう少し時間があってもいいかと思いました。 ![sqli4b](https://i.imgur.com/Fa5T6Ri.png) workshopも終わり本戦に戻ると、国内KoHのランキングが表示されていました。この問題は1日目のみ取り組めるので、持ち帰ることができず全チームが真剣です。 ![koh](https://i.imgur.com/cCNpzF2.jpg) そうこうしているうちに18時で1日目は終了となりました。明日も継続して出題される問題があるので、各チーム問題を持ち帰り夜通し解析などを行います。運営は全物品の消毒やごみの掃除をし、明日の準備をして解散です。 この日はctf4bメンバ全員で部屋を借り、チーズ牛丼を食べながら夜中までポーカーを行っていました。謎の手で二人のオールインを引き出し、飛ばしたのは最高でした(画像はushigaiさんのツイートより)。ホテルに帰ったころには日付が変わっていました。 ![satoki](https://i.imgur.com/LVDqJvd.jpg) ### 2日目 2日目は昨日で満足してしまったのか、人が少なかったイメージです。これだけ空いていれば、ツイッターで嘆いていた参加登録できなかった勢も入れるなと思っていました[^no]。 ![seccon2day](https://i.imgur.com/rdanMkl.jpg) 実はまだ学生であるという身分を生かして、朝一の「【学生限定】NECセキュリティスキルチャレンジ (CTF)」に申し込んでいたのですが、無事寝坊して数十分遅れての参加となりました[^hash]。でも1stでした。さすがにCTFプレイヤーが乗り込むものではなかったので、ctf4b運営であることを明かして他の参加者に賞品を繰り上げてもらいました。 ![1st](https://i.imgur.com/CEgxteB.jpg) そして名札に猫をimportしました。 ![cat](https://i.imgur.com/r8reouM.jpg) この日のメインは本戦の仕事(実は1日目にもあった)で、Physical Device Challengeの競技者案内、ルール説明、監視、環境構築です。このチャレンジは、平文と暗号化されたFlagが流れるLANケーブルをぶった切り、盗聴する問題です[^lanlanlan]。ケーブルの両端には、競技者は触ることの許されていないアリスとボブのラズパイがつながっています。 ![pdc](https://i.imgur.com/htdJclY.jpg) スイッチが不要であることや、LEDの点滅間隔をよく見ると作業量が約半分になることなどを悟られないようにポーカーフェイスで案内をしていました。ポーカーが役に立ちました。ctf4bメンバーで作成して、本番に使っていたマニュアルの一部を以下に貼っておきます(興味が無かったらごめんなさい)。多少修正していますが、競技者は内容がわかるかと思います。 --- <details> <summary>Physical Device Challenge マニュアル</summary> ``` ■ 連絡 基本はctf4b内のDiscordでヘルプを要請 競技部屋に入っていない人がptr先生案件かを判断し、必要であれば引き連れて現場へ ■ LED状態 赤点滅(高速)・・・片方でのみ発生するインタフェース関連エラー          (どちらがアリスでどちらがボブか非公開であるため注意) 赤点滅(低速)・・・通信などが失敗している 青点滅・・・通信などが上手くいっている 消灯・・・永遠にレスポンスを待っているらしいので競技者に言われたらラズパイを再起動      (再起動しても一度だけFlagが飛び再度消灯するらしい)      (Windowsを使っている場合に発生?) 当たり前だが競技者が切断時は赤点滅になる ソースを読めばだいたい上記がわかるので、他はソース対応  ex.競技者「LEDがXXXしてるんだけど!」 → 運営「ソースを読んでください」 ■ 環境初期化行動 (0.ラズパイの電源が入っていない場合は入れる) 1.ケーブルを新しいものに取り換える 2.少し待機し、LEDが青点滅にならなければケーブルを挿しなおす 3.少し待機し、さらにLEDが青点滅にならなければラズパイを再起動  → これ以上はケーブル取り換え or 部品破損っぽい場合ptr先生へ 4.競技者がスイッチを使った形跡がある場合は、裏の穴を爪楊枝で北斗神拳してリセット ■ 必須行動 ・終了5分前にアナウンスする ■ 可能行動 無限回(言われたら)  ・ケーブルをラズパイに挿しなおす  ・ラズパイを再起動する  ・スイッチをリセットする(爪楊枝の配布OK) 1回  ・ケーブルを新しいものと取り替える ■ 禁止行動 ・自身を除く4名を超える人数を入室させる(別チームが入ってきた場合筋肉で対処) ・競技者にスイッチ、ケーブルの途中以外を触らせる ・競技者にアリスとボブの特定に関連する情報を与える ・競技者にスイッチが不要であることを伝える ・競技者にLEDが示していることを伝える ■ Q&A Q.何時に終了ですか? A.現在XX:XXです。終了時刻はXX:XXです。 Q.トイレに行っていいですか? or PCを取りに戻っていいですか? A.可能です。いつでも、チーム内で4人まで入退室が可能です。 Q.部品は足りていますか?(ケーブルなどのロードバーはないのか?) A.部品はテーブルに置いてあるもので全てです。我々が置き忘れているものはありません。 Q.どちらがアリスでどちらがボブですか? A.どちらのラズベリーパイがアリスまたはボブであるかを伝えることはできません。 Q.スイッチは使う必要がありますか? A.このスイッチが問題を解くのに必要かどうかを伝えることはできません。 Q.このLEDはなんですか? A.LEDは運営が疎通確認のために使うもので、何を示しているかを伝えることはできません。 Q.LANの口をもっとくれ! A.8つが上限です。 ■ 最初に伝えるルール 競技者はケーブルの中央部分のみしか触れることを許可されていません。 つまり、ラズベリーパイなどの機器を触ってはいけません。 ですので、ラズベリーパイからのケーブルの抜き差しは禁止されています。 しかし接触不良を原因として、ケーブルをラズベリーパイに挿しなおすことをいつでも何度でも依頼することができます。 そして最後に、ケーブルを新しいものに取り替えることを1回のみ依頼することができます。 制限時間は50分です。 時間がまだ残っていても問題を解くのをやめることができます。 その場合、部屋を閉め切るため再度問題を解くことはできません。 それでは現在の時間を記録し、競技を開始します。 質問はありますか? では始めてください。 ``` </details> --- 自分の担当では、最初にLEDを確認したチームは0で、皆いきなり切っていました。ワイヤストリッパーに気づかないチーム、中の被覆をはぎとるチームがいましたが、概ね解けていた気がします。英語対応のメンバーは叫ぶチーム、作成したケーブルを「最高のケーブルができたぜぇ!!」と自慢してくる競技者がおり、大変だったようです。 とあるチームの痕跡です。 ![mi](https://i.imgur.com/cQJ3Y2V.jpg) こうして2日目も無事に終了しました。競技のあとは表彰式と懇親会でしたが、結果は各チームのWriteUpなどで公開されるので、そちらをご参照ください。英語がもっと喋れると楽しいと思いました。 この日はctf4bのメンバーと夕飯とシーシャに行き、業界の情報交換を行いました。会場では興奮で認識できていませんでしたが、すごく疲れていました。 ![ctf4bura](https://i.imgur.com/VKhdjmM.png) ## おわりに 今回は **[DEF CON 30](https://hackmd.io/@satoki/rkf9Qq8jc)** に続いて人生2回目のオンサイトイベント(コンテスト本戦)かつ運営側ということで、新しい経験ができる機会でした。競技者が皆楽しそうで羨ましかった[^dero]ですが運営側も楽しかったです。SECCONチームやスポンサー様の協力により運営上のトラブルなどもなく、パーフェクトなセキュリティ祭りであったと思います。次回はまた運営、競技者、一般参加者のどれか分かりませんが、SECCONに参加すると心に決めた3日間でした。 ## その他写真 0日目夜に食べた激うまラーメン(毎日食べるとすぐ死ぬ気がする) ![uma](https://i.imgur.com/FiqXuyh.jpg) CTF参加者配布ステッカー ![sticker](https://i.imgur.com/u3RrYcZ.jpg) CTF Adminのkurenaifさんステッカー ![kure](https://i.imgur.com/HzeOMcR.jpg) ※なお、本記事の個人が識別できる写真は本人に許可を取ったうえで掲載しています。 [^secengineer]:ホントか?(4月からセキュリティの会社に就職しますが、ヒモの求人は募集しています。) [^syuron]:名古屋大学大学院の修論審査会からそのまま直接東京へ移動する過酷な日程でした。遅刻してごめんよ。 [^wani]:スコアサーバは9.9割が🐊(Hi120ki)さんの手による実現です。そしてWaniHackaseのみんなサンキュー。 [^lanlan]:手が終わりました。 [^tori]:写真撮影用にマスクを外しており、SECCONでは全員にマスクの着用が求められています。 [^hash]:結局この寝坊遅れのせいでhashcatの一つ目が間に合わず全完できなかったです。悔しい。 [^no]:忘れた本人が悪いのでという説もあります。 [^lanlanlan]:手の破壊と引き換えに作成したケーブルが切断されていくのを泣きながら見ていました。 [^dero]:実は競技者のお誘いを受けていたのですが、運営ということで辞退していました。