セキュリティとビジネススキルを競う実践型イベント”Hardening 2025 Invisible Divide”参加体験記
2025年12月22日 月曜日
CONTENTS
【IIJ 2025 TECHアドベントカレンダー 12/22の記事です】
初めまして、t-matsubara と申します。10月に沖縄で開催されたハードニング競技会に参加して参りました。チームメンバーの皆様のおかげで 12チーム中 3位になることができましたので、その体験記をお送り致します。競技会当日におけるシステムやアプリケーションの詳細、およびシナリオなどについては共有が禁止されているため、主として準備期間についてと、私個人の感想や反省のご紹介とはなりますが、雰囲気をお伝えできればと思います。
ハードニング競技会とはなんぞや?
「衛る技術」の価値を最大化するためのセキュリティ・プロジェクトである、Hardening Project が企画しているイベントの一つです。公式サイトの言葉を借りると、「8時間にわたる熾烈なサイバー攻撃に対応し、ビジネスを死守する」体験と共有によって構成されているとのことです。1年を通していくつか開かれるイベントの中で、この競技会が最大の規模のものとなります。競技自体は 1日(8時間)だけですが、8月下旬から始まる準備期間や振り返りまで含めて 1ヶ月半にも及びます。2012年に開催された第一回を皮切りに、毎年開催されているようです。今回初めて知ったのですが、最初の数回は弊社の会議室で開催されていたそうです。
この競技会は、セキュリティ技術だけでなく、ビジネススキルやチームビルディング能力なども総合的に問う実践型イベントで、ECサイトの売り上げとインシデント対応能力が問われます。ですので、エンジニア職だけでなくビジネス職も参加対象となっているのが特徴の一つです。結果は、技術点や経営点といった多角的な評価軸における膨大な項目をもとに評価されます。
応募フォームが手厳しい
応募は 6月頭に開始されたように思います。応募内容の精査により参加者の当落が決定されます。このプロジェクトが「サイバーセキュリティに関する総務大臣奨励賞」を受賞したこともあって、近年は特に倍率が高いらしく、最終的に今回は 101名参加で、自分も含め、そのうちの 90名が初参加だったそうです。応募フォームには参加の理由や意気込み、スキルセットなどの記載が求められるのですが、それ以上に「あなたがこの競技会に貢献できることはなんですか」や、さらに手厳しい「あなたをこのイベントにお招きするメリットはなんですか」なんて設問もあり、正直面食らってしまって、応募開始から実際に応募するまで3週間ぐらいかかってしまいました。私はサーバの運用や構築の経験などに乏しかったので、自分に何が貢献できるんだろうと悩みましたが、今年の競技会のテーマが「Invisible Divide」、すなわち「見えざる分断」ということで、別に今経験が乏しかったり、できなかったりしても、できるようになるために一歩踏みだして分断をなくしていくことが大切だと思って、そういう思いを綴ったように記憶しています。このブログを書いているのも分断をなくしていく一環だったりします。
長いようで全然足りない 1ヶ月半の準備期間
チームビルディングって難しい
この競技会はチーム対抗戦となっており、まったく面識のない方々とチームを組むことになります。以前は知り合い同士で同じチームを希望することができたそうですが、今はその制度はなくなったようです。私のチームは 9名で、学生さんが 4名(そのうちの一人は日本に留学中のドイツ人)いて、住んでいるところも、北は北海道から南は沖縄まで散らばっており、社会人と学生との分断、言語の分断、地理的な分断など、最初からいろいろな分断の試練が課されているように感じました。
私は入社以来ずっと開発の部署におり、それほど大人数での仕事には携わってこなかったため、リーダーシップを発揮するのは苦手だったのですが、苦手だからと言ってやらないといつまで経ってもできないままだと思うので、立候補してリーダーをやらせていただきました。チーム名についても、あまりこだわりがない人が多いとは思うのですが、個人的には自分で考えた名前のほうが愛着が湧くし、モチベーションが高まるので、チーム名も提案しました。
チームリーダーとして心がけたことの筆頭としては、何か案を提示するときにはどういう背景や考えがあってその案に至ったのかをちゃんと伝えるようにすることでした。これはチーム戦であるため、例えば誰か一人が顕著な活躍をして優勝できたとしても、他の人が何もわからないままだったら、それはチームとしての価値はないと個人的には考えるので、「順位よりもメンバーみんなの学びを最大化する」というのを最優先にしたい、と真っ先に伝えました。他に心がけたこととしては、感謝をちゃんと伝えるということ、誰も置いてけぼりにしない(例えばミーティングに遅れてきた人がいたら、そこまでに何を話して今何を話しているかをその場で共有するようにする、言語の壁については日本語と英語とを併記したり、重要なことはその場で英語で話したり)、何か問題があったときは人を責めるのではなく、何が課題となっていてどうすれば解決できるのかに目を向ける、などです。
学んだこととしては、あんまり厳しいルールなどは設けたくはなかったのですが、最低限のルールは必要だということ、そしてルールは思いのほか早く形骸化してしまうということです。後者についてはどうするのが適切なのかいまだ答えが出せていません。
役割分担するということ
チームメンバーの中に、一人だけ昨年度も参加して今回が 2回目の参加という方がいたのと、先輩が複数回の出場経験があるという方がいたので、その方たちに過去の大会の資料や、実施した準備内容などを共有していただきました。この情報収集により何を準備するべきなのかを調べつつ、最初のうちは、各自興味のあることや、やってみたいことを勉強してみることにしました。本当はやったことをみんなに共有して、詳しい人がそれをフォローできれば良かったのですけど、なかなか忙しい人が多くて理想通りにはならないのが実状でした。
せっかくの機会なので、明確な役割を設けずに、各々がやってみたいことを自由にやるのもありかとも思ったのですが、過剰な自由は逆に選択に迷って準備が進まないということもあり、スキルシートを皆さんに書いてもらい、技術班とビジネス班とに分けました。
私のチームは自分も含めてビジネスのことがわかる人がいなかったのですが、普段技術をやっているからビジネスをやってもいい、去年技術で参加したから今年はビジネスで参加してもいいなど名乗り出てくださった皆さんをビジネス班に割り当てました。ただ、何かをやってみたいだとか、挑戦したいという機会や権利を奪うべきではないと私は思うので、技術班とビジネス班に分けはしましたが、やりたいことがあれば、苦手だろうがやったことがなかろうが取り組んでもらって構わないとしました。その際、得意な人がいればフォローしてあげるのが理想ではあったのですが、各自勉強をやってみたときと同じで、やはり皆さん忙しいこともあって、そううまくは行かなかったのが反省点です。忙しいのは悪ですね…。
私自身はチームリーダーとして、両方の橋渡しができればと思って、無理を言って技術班とビジネス班の両方に参加させていただきました。もちろん、自分の能力的にそんなに両方ができるわけがないのは自覚していたのですが、問題意識を持つきっかけにでもなればそれでいいと考えた次第です。
準備の時間が本当に足りない
ただ、チームリーダーをやっていたこともあって、いつの間にか CEO をやる羽目になってしまいました。恥ずかしながら、この時点での私の認識は CEO って何をする人?程度のものでした。
ミーティングは週2回、水曜日の 22時からと日曜日の 22時から 1時間ずつ Google Meet で実施しました。おおまかな役割分担が決まった後は、タスクを細分化してそれをこなしていくことになりました。当初は、ミーティングで次回までにこれをやらないといけないみたいな話はしても、明確に誰が何をやるというのは決めずに自主性に任せる形を取ったのですが、これだとまったく進まなかったので、タスクのアサインをすることにしました。しかし、それでも進まなかったので途方に暮れてしまいました。反省点として、当初タスクの細分化そのものをタスクとして振ってしまい、完成物の粒度や具体例を提示できていなかったため、みんな何をすれば良いのかわからなかったのだと思います。(単純に皆さん忙しかったというのもあります。やはり忙しいのは悪です。)
そのため、タスクの細分化については定例のミーティングとは別で、毎日ボイスチャットに集まれる人だけでも集まってみんなでやるということにしました。これにより細分化が進み、手を動かしやすい状態にできたと思います。一人だとなかなかモチベーションが湧かなかったり、困難だったりしても、みんなで和気あいあいとやれば結構できるものですし、チームの結束力も高まるので、共同作業はオススメです。
ただ、タスクの細分化が終わって、実際の作業に入れたときには競技会当日まで 2週間を切っていたと思います。技術面での準備としては、主として作業手順書の作成を行いました。作業手順書は確認者を設けて、誰でも作業できるようにするのが望ましかったのですが、パスワード変更のような基礎的な作業以外はギリギリに完成したこともあって、作成者本人しか作業できない状態になってしまったのが反省点です。また、チームメンバーの方に、Ubuntu と Rocky Linux のサンドボックス環境を用意していただいて、そこで手順の検証などを実施しました。また、同じくチームメンバーの方に、模擬ハードニング演習として ZANSIN というセキュリティ・トレーニングツールの環境を構築していただき、みんなで取り組みました。これにより、どういう作業手順が足りていないか、どう情報連携すればいいかなどのイメージがより具体的にできたかと思います。
ビジネス面での準備としては、各種報告用のテンプレートや ECサイトと会社HP用の素材の準備、インシデント報告や商品購入のフローなどの作成を実施しました。会社概要や経営理念などといったビジネス系のドキュメントは生成AI に作らせるのが手っ取り早くはあるのですが、せっかくの機会なので、自社の経営理念や行動指針を読んだり、経営者向けのブログを参考にしたりして、まじめに書いてみました。7月に開催された Hardening Project主催のカンファレンスである Hardening Designers Conference 2025 にも参加したのですが、そこでは分断の例として、本を読む人と本を書く人の分断、規律に従う人と規律を策定する人の分断などが紹介されていました。例えば、本を読む人からすると 3000円の本は高いと感じるかもしれないが、この分断を超えて実際本を書いてみると、非常に大変だということがわかり 3000円が安いと思えるかもしれない。規律を作ってみたら、なぜそういう規律になっているのかがわかるかもしれない。そういった話を聞いていたので、この機会に疑似的にではあれ、実際に規律を策定する経験ができて良かったと思います。また、商品画像などを生成AI に作らせるのにしても、プロンプトエンジニアリングの練習になるし、どんなタスクであれ、まじめにやれば学ぶことは多いと感じました。
競技会当日を含む 4日間

Preparation Day
競技会前日に初めて対面での顔合わせをしました。すでに1ヶ月ちょっとの間、みんなで準備してきたので、対面での顔合わせが初めてであっても、すぐに打ち解けられて話も弾んだので、ここまでチームビルディングしてきたのが報われたように感じました。レンタル会議室を借りて、準備の仕上げを 23時半ぐらいまでやりました。
Hardening Day
競技会当日の内容については書けないのですが、本当に 8時間があっという間でした。普段の業務とは大違いです。スコアボードを見ていると、残り 1時間の時点では、うちのチームが 1位でした。ひとえにチームメンバーの皆様のおかげだと思います。ただ、そこまで 1位だったこともあり、めちゃくちゃ攻撃されたような気がします。
Analysis Day
これは前日の競技を振り返って各チーム発表用の資料を作る日でした。午後からはネットワーキングで、浜辺での BBQ でした。水着を持参して泳いでいる方もいらっしゃいました。昨年度はハーリーの乗船体験もあったようですが、今年はそれはなかったのが少し残念ではありました。ともあれ、奇跡的に台風の進路がそれて、無事に BBQ ができて良かったです。この日も BBQ のあと、レンタル会議室を他チームと共同で借りて、23時ぐらいまで資料作りに勤しみました。
Softening Day
どんな準備をしたか、競技会当日にどのようなことをしたかなどの発表の日です。全チームと攻撃者により、競技中に得た経験と気づきを共有することを目的とした日となっています。うちのチームの最終結果は 3位で、さらに JPCERT/CC賞と T3 Realize賞を頂くことができました。他チームの発表を目にして、もっと資料の見栄えなどにもこだわれば良かったというのが個人的な反省点ですが、うちのチームはあまりその辺へのこだわりがなかったので、それも含めてうちのチームらしいとも思います。
たくさんの学びとこれから
パスワード変更といった基礎的な OS周りの堅牢化以外は、例えばミドルウェアを堅牢化するにしても、普段から何気ない設定項目にも気を配っていないと、いざやろうにも何をすればいいのかってなかなか難しいと感じました。また、セキュリティは利便性と隣り合わせなところがあるので、付け焼き刃で設定をしようものなら障害になるのは目に見えており、やはり普段から各種ツールに習熟しておくのが必要だと改めて痛感させられました。
後はやっぱりチームリーダーをやったのが本当に良い経験になったと思います。毎回のミーティングのファシリテーションにしても、調整や情報共有にしても、以前よりできるようになったと思いますし、何より積極性が高まったのが最大の収穫だと感じています。最終日の打ち上げで数名の方に、チームビルディングめちゃくちゃうまいだとか、私がリーダーで本当に良かったと言っていただけたのは素直に嬉しかったです。
CEO としては、準備についてはそれなりに取り組めたと思うのですが、競技会当日はやはり CEO がいまいち何をすべきなのかがわからずに、技術面・ビジネス面ともに中途半端になってしまったのが心残りです。
技術力が凄まじく高い方々や、自チームだけではなく全体を取りまとめるリーダーシップを発揮する方々、モチベーションが非常に高い方々と競技に取り組めたのは大変な刺激になりました。
また次回参加できたら今回の経験を糧にリベンジしたいと思います。
ここまで読んでいただき、ありがとうございました。


Xのフォロー&条件付きツイートで、「IoT米」と「バリーくんシール」のセットを抽選でプレゼント!
応募期間は2025/12/01~2025/12/31まで。詳細はこちらをご覧ください。
今すぐポストするならこちら→
フォローもお忘れなく!