Hardening

Hardeningから生まれた新しいセキュリティチャレンジ「Shield Stone」を開催した記録

どうも、野溝のみぞうです。おかげさまで毎日締め切り駆動のめちゃくちゃ忙しい日々を送っていて正直ブログなど書いている場合ではないのですが、これだけは今書いておかないと後悔する気がするので書きます。

2024年6月22日(土)にShield Stone#ZERO-DAYを開催しました。

ちなみに公式のレポートは別のところで掲載されます。当記事は、あくまで私がどう思ったかとかそういう主観と記憶に基づいたレポートになりますのでご了承ください。枝葉末節は解釈がちがうところがあるかもしれないけどそういうものです。

Shield Stoneとは何か

諸般の事情でHardening競技会本戦(参考までに去年のはこちら)を出禁になった卒業した8名がお送りする、新しいHardening的な取り組みです。初心者をターゲットにして、Hardeningよりも準備期間や競技時間を短くすること、完全オンラインとすること、最初にガイダンスを行うこと、1人1セキュアとしてやるべきタスクを明確にすることなどなど、あらゆるハードルを下げて気軽に取り組めることを目指しました。

詳細は拙著「ハードニングファン★リファクタ」のP61をご覧ください。(露骨な宣伝)お買い上げいただくと私のランチが少しだけ豪華になります。

ちなみにSHIELDはともかくなんでSTONEかというと「天岩戸」から来ています。参加者の方に自分から扉を開いて世界を光で満たしてほしいという願いが込められています。

実施スケジュール

さて、ZERO-DAY(今回)運営の知られざるタイムラインを記憶の限りで書き出しておきます。実は、私たちは去年の11月から週1回のミーティングをほぼ欠かさず実施して、この競技会を一から作り上げています。こう聞くと「時間かかりすぎ」って思うかもしれないですが、それだけ思いが強かったということで。何事も初めてづくしだったのでこういうこともあります。

日付イベント
2023年11月運営ミーティングスタート(週1回継続)
2024年1月開催日決定・参加者ペルソナ「ゆきちゃん」( ※後述)誕生
2024年3月競技会名「Shield Stone」決定
2024年4月19日クラウドファンディング開始(※後述)
2024年5月7日参加申し込み開始
2024年5月21日参加申し込み締め切り
2024年5月24~25日24時間限定参加申し込み追加募集
2024年5月27日参加者確定・通知
2024年6月8日事前ガイダンス実施(以降競技者準備期間)
2024年6月22日競技会当日

参加申込関係いろいろ

大変僭越ながら今回に関してはご参加いただく方の選考を行わせていただきました、あくまで想定しているターゲット「ゆきちゃん」(※後述)がいたためその人物像に合う方に来てほしかったこと、初めてだったのでキャパシティが読み切れずどれくらいの集客があるかわからなかったことなどが理由です。

5/24~25で追加で募集を行ったのは人数が足りなかったとかではなく、ちょうどそのとき「Hardening 2024 First Attack!」が開催されており、Shield Stoneチームとして発表させていただく枠があったので、発表中に告知する内容としてなんかしらサプライズがあったほうが面白いだろうという意図でした。

申込者統計

多分詳細は公式の開催レポートに掲載されると思いますがざっくりこんな感じ。

申し込み人数60名程度
参加者数30名(5人/6チームとしました)

だいたい倍率は2倍くらいとなりました。ご応募いただいたのにお断りすることになってしまった方、大変申し訳ありませんでした。

各チームに経験者枠として1名のHardening経験者を配置し、他の方は完全に初めてさんという布陣でチーム分けしています(もしかしたら多少違う構成のチームもあったかもしれませんがだいたいってことで)初心者向け競技会だからといって初心者だけでチームを組んでも困ってしまうこともあるだろうという思惑です。

まあ初めての方の中でも色々レベルの違いはあると思うので、このへんは難しいのですが。申し込み用アンケートで読み取れるだけの情報で振り分けているので限界はあります。あとありがたいことに学生さんのお申し込みが多かったので、各チームにうまくバラけるように編成しました。

事前ガイダンスをやった

「初心者向け」を銘打つからには参加者をに寄り添うことが必要であろうということで、競技会の2週間前に事前ガイダンスを実施しました(参加者の方にはこのガイダンスの参加についても必須とさせていただきました)

ガイダンスの内容はこんな感じです。

運営陣からの概要説明の他にも、Shield Stoneはチーム戦を基本にしているので、チームメンバーの発表及び懇親の時間や競技環境への接続テスト(当日慌てないように)などの時間を設け、なるべく取り残される人がいないようにしました。

競技資料として必要な情報はこのタイミングで公開されました。まあ完全に決まりきらなくてその後も当日までぼちぼち更新されることになってしまったため、参加者の方に混乱を招いたという側面もあったのですが…(Hardening本戦では前日の夕方に100ページ超えの競技資料が出てくるのでそれに比べたらがんばったと思うのでむしろ褒めてほしいポイントです

クラウドファンディングで運営資金を調達

このような会を催す場合、資金の問題はついて回ります。当初は運営陣が自腹を切るとかスポンサーしてくれる企業を探すとかアイデアを出していたのですが、やったことなくて面白そうという理由で「クラウドファンディングをやってみよう」ということになりました。

告知は主にSNSで行いましたが、結構伸びたのでありがたかったです。(拡散協力いただいた方ありがとうございます、助かりました)

当初の計画では20万円集まればいいかな…(多分足りないけどそれはまあ仕方ないよね)という感じで目標金額を20万と設定していましたが、蓋を開けてみると情報公開から17時間で目標金額を達成し、最終的に合計108人の方から70万円以上のご支援を賜ることができました。

ご支援いただいた皆様、本当にありがとうございました。

このサイトのしくみを理解しておらず、金額を達成したあと途中で打ち切るということができないということをわかっていなかったため、競技当日までクラウドファンディングが続くことになってしまったためこの金額になっております…(決して欲が出たわけじゃないです)いやぁ、やってみないとわからないものですね。

1人1セキュア化とは

Shield Stoneでは参加者が必須で対応すべきタスクとして「1人1セキュア化」というものを掲げていました。

1チーム5名だったので、運営より5つタスクを用意して、それを必ず全員で分担することを必須としました(誰が何を担当するかあらかじめ宣言してもらいました)。なぜ分担を必須としたかというと、デキる人が全部1人でやってしまって初心者は見てるだけ~ってことを防ぐためです。

課題として挙げた1セキュア化は以下の通りです。

  • コーポレート&ECサイトのSSHのパスワードを強固にする
  • WordPressのプラグインバージョンアップをする
  • FWのtestユーザを削除する
  • WindowsクライアントでMicrosoft Defenderを有効にする
  • DBポートを外部からアクセスできないようにする

どれも難易度としてはそれほど高くない(もちろん人によりますが)ものですが、具体的なセキュリティ対策の実施事項として基礎的で大切であろうと思われることをピックアップしました。この1人1セキュア化があることで、競技内で必ず「できた!!」という経験をしてもらい、これからの自信につなげてもらいたいという思いがあってのことです(うまくいったかなー?)

ゆきちゃんという存在

今回運営陣は「ゆきちゃん」という架空参加者のペルソナを想定して会を組み立てていました。

その後も何かあるたびに「ゆきちゃんならできるかな?」「ゆきちゃんこれで来てくれるかな?」「ゆきちゃん困らないかな?」のように、ずっとみんなで存在しない彼女のことを考えながら会を作っていました。このやり方は割とおすすめです。

とはいえ最終的に忙しくなってくると蔑ろになってしまったりして、最後まで思いやれてたかは非常に疑問ですが…なんか…ごめんな…

当日

当日最終時点のスコアボードはこんな感じでした!力作!!前述の1人1セキュア化は全部のチーム達成できたことがわかります(よかった。ほっとしました)

競技参加者は全員Zoomに接続し、各チームのブレイクアウトルームに分かれて様々な課題に取り組みます。

途中ほとんどのチームで売上が横ばいになるタイミングもありましたが、全体的にまあまあ右肩上がりのよい戦いができていたといえるのはないでしょうか。

競技会自体はオンラインでしたが、運営のメンバーはコミュニケーションコストを下げるために会場スポンサーの伊藤忠テクノソリューションズ株式会社様の東京オフィスに集まっていました。

めちゃくちゃ素敵な会場をお借りできて大変快適でした。ありがとうございました!

競技

詳細はネタバレ防止のため秘密❤ですが。Hardeningのやり方を概ね踏襲したものとなっています。

各チームは老舗企業「石盾屋」の社員という設定で、自社で保有するECサイトやコーポレートサイトを正常に運用させることを主な目的としています。各チームごとに脆弱な競技環境が用意され、そこに攻撃者が攻撃を仕掛けてきます。

「Hardeningのやり方」がピンとこない方は以下の本を買って読んでください(宣伝2度目)

特別ミッション

実は、素敵な会場に集まったのは運営だけではありませんでした。クラウドファンディングで1万円以上ご支援いただいた方には、そのリターンとして「会場で運営があたふたしているようすを見る権」をご提供させていただきました。すごいですね、完全に暇を持て余した神々の遊びですね。

↓会場にお集まりいただいた来賓の皆様のようす(向かって右側の透明なついたての向こう側で運営がバタバタしています)

そんな神を終日遊ばせておくのは忍びないため、一部の方々には「特別ミッション」にご協力いただきました。

特別ミッションとは、各チームのブレイクアウトルームに来賓の方が「社長」役として降臨し、無理難題をふっかけて帰っていき、もしそのお題に答えることができたらそのチームに大幅加点があるというものです。

社長様には演技に集中いただくため社長室をご用意いたしました。

時々あるじゃないですか、世の中で事件があると偉い人が「ウチは大丈夫か?」とか漠然としたことを聞いてきて理不尽対応に追われるやつ。あれを擬似的に模したものと思っていただければ良いです。

ちなみに来賓の中にはリアルにセキュリティ業界の生き神が何人も紛れ込んでいたため、競技会後の参加者アンケートに「ミッションは運営が来ると思っていたから◯◯さんが来てビビった」と書かれるなど個人的には大変愉快な気持ちになりました。ご協力いただきありがとうございました。

報告書作成

競技終了後にランチタイムを挟んで報告書作成タイムを設けました。報告書は「社外に向けて自社で発生したインシデントを公表する」という趣旨で各チームに作成いただきました。

正解のあるものではないため、あえてテンプレートを配ることはせず、各チームの自主性に任せたものにしました(記載のポイントは事前に競技資料でお伝えしました)

これに関しては、きちんと社外に向けたものを意識しているチームとそうでないチームに分かれていたように思います。まあそもそも「社外」って相当解像度が低い指示だったなとは思うのですが(お客様なのか、株主なのか、関係会社に向けてなのか、広くインターネットに公開するのか…)誰に向けて何を伝えたくてこれを書いているのかは、もうちょっと意識してほしかったなーと思うことが多かったです。もっと伝える力を鍛えていきたいよね(自戒を込めて)

あとちょっと残念だったのは割と生成AIに書かせたものそのまんまっぽい雰囲気のやつが散見されましてですね…本当にインシデントがあったときそれで出すんかという…。

2024/06/29追記

「限られた時間で作ったインシデント報告書を生成AIが書いたものそのまんまっぽい雰囲気と書いてしまうのはいただけない」とコメントいただいたので訂正します。大変申し訳ありませんでした。当ブログの冒頭から書いてる通りこの記事は個人的な感想ですのでこれが運営の評価というわけではないのでご注意ください。

ちなみに生成AI使うこと自体には別に否定的に思ってないです、その組織のルールに則って必要に応じて活用するのはどんどんやったら良いと思います。ただ一方で、現時点ではまあまあ使いこなすのって難しいなあーというのを感じています。いい感じの使い方を研究したい。(現実的にはどこまでインシデントの情報を入れて使うかという問題がありそうなので難しいということもありそう)

まあ時間が非常に限られていたので仕方なかったとは思う。

報告会

報告書ができたら今まで一緒に取り組んできたチームは一旦解散していただき、各チームから1名ずつピックアップした別グループをつくりました。5名/6チームだったのを、6名/5チームに組み替えた形ですね。

そのグループ内で自チームの取り組みを全員が必ず発表する、というやり方で小規模な報告会を行いました。(実はグループ分けは「同じセキュア化に取り組んだ人」同士で組んでもらってたんですが気付きました?)

なんでこんなことをしたかというと、自分が喋るという強制力がないと、自分のチームの振り返りとか報告書の内容とか自分以外の人がなにしてたかとかそういうのをぼんやり流してしまうことがあるからです。

ロールプレイを全力でやる(謝罪会見のつもりで報告せよとか)などレギュレーションを厳しくしたほうが良かったのかもしれないという迷いもありながら報告会をやっていただいたのですが。他チームの人とはなかなか関わる機会がないなかで報告の合間に雑談が発生していたり、質疑応答に対応するなかで参加者の理解が深まっていたりするのを感じ取れたので、取り組み自体は悪くなかったんじゃないかなと思ったりしました。しらんけど。

まとめ

さて、そんな感じでShield Stone#ZERO-DAYを無事に終了することができました。色々と反省点は多いですが(次回のShield Stoneという意味だけではなく、自分の人生的な意味で)次につながる課題を見つける良い機会になりました。

ちょっとやりたいこともできたし、可能性が広がったなと思います。

やってみてどう思った?

率直な個人の感想として、これを10年やってるHardening Projectはものすごいな!!!と心の底から思いました。いや当然もともと「すごい人達だなあ(ぼんやり)」とは思っていたのですが、すごさの解像度が一段あがったというか。

一方で、Hardeningというものがどれだけ心を砕いて作られているかを少しだけ理解してしまったので、次回の沖縄の申込みはしないでおこうと思いました。私よりも、もっと他の方に席を譲ったほうが良い…これは確実にそう…

もともと出禁卒業解除のための取り組みであったのに、やってみるともういいやという気持ちになるのはなんとも皮肉なような気もしますが(多分思うツボなんだろうなあ笑)。まあそう思ってしまったんだから仕方ない。自分がやるよりも、新しくチャレンジしたい人を応援しようと思いました。

まあそんな感じで、参加者の皆さんだけでなく、運営側にも色んなものを心に残す取り組みだったよと伝えたかったです。

たくさんの方に応援していただいて、協力いただいて、実現できたことは本当によかったなと思います。ありがとうございました!果たしてゼロデイがワンデイになるのかはわかりませんが、今後の活躍にご期待ください!

参加者の方のブログ

ご参加いただいた方の参加記にリンクを張っておきます。私が認知してる限りなので「自分も書いてるよ!」って人はよかったら声かけてください。