本サイトは、快適にご利用いただくためにクッキー(Cookie)を使用しております。
Cookieの使用に同意いただける場合は「同意する」ボタンを押してください。
なお本サイトのCookie使用については、「個人情報保護方針」をご覧ください。
皆さんこんにちは、我々はMBSDに所属するセキュリティエンジニアの一ノ瀬、洲崎、高江洲と申します!
2019年8月23日(金)から8月24日(土)にかけて台北の中央研究院人文社会科学館で開催されたHITCON CMT 2019にて、筆者らが運営スタッフとして参加しているMINI Hardeningというイベント(※)を開催してきましたので、その模様をレポート致します。
※MINI Hardeningは弊社主催のイベントではなく、有志で運営しているイベントです。
本題に入る前に、HITCONとMINI Hardeningをご存じでない方もいらっしゃるかと思いますので、先ずはこれらの概要を説明した後に、MINI Hardening with HITCONの模様をお伝えします。
1. HITCONとは?
HITCONとは「Hacks In Taiwan Conference」の略称であり、Black HatやDEF CONのようにトレーニングやブリーフィング、ビジネスブース、その他多数のアクティビティが用意されたアジア最大級の情報セキュリティに関するイベントです。今回のイベントでも台風11号が接近する中、1,000人規模の人々が参加したと言われています。
今回のHITCONでは、ブリーフィングを4トラック(R0, R1, R2, R4)で行っていました。筆者らはイベント開催準備のため殆どのブリーフィングを聴講することはできませんでしたが、先のBlack Hat USAやDEFCONで講演した方々が登壇していたことから、ブリーフィングのレベルは高いと推測しています。また、日本人技術者によるブリーフィングやトレーニングも開催されていました。
そんな中、MINI Hardeningは特別に2日目の貴重な1トラック(R4)をまるごと提供していただきました。
1.1. 来場者を楽しませる仕掛け
HITCONでは来場者を楽しませる仕掛けが散りばめられていました。例えば会場内の各所に設置されているQRコードを読み取っていくようなイベントも開催されていました。
HITCONでは食事やおやつも充実しており、開催期間中は美味しいお弁当やスイーツを無料で配布していました。
また、HITCONはネットワーク環境も充実しており、HITCON公式の会場Wi-Fiも提供されていました。しかし、このWi-Fiに接続したとある運営スタッフのMacBookが以下のようになっていました。思わず一瞬ドキッとしてしまいますが、どうやらDHCPサーバ側からCVE番号入りの心臓に悪いホスト名が配られるような設定となっていたようです(他の方の設定も確認しましたが、CVE番号は可変で別々のものが配布されていたようです)。Coolなジョークですね(笑)
このようにHITCONでは、来場者を楽しませる仕掛けが散りばめられており、技術者・非技術者を楽しませるための遊び心が満載でした。このような工夫は、今後弊社が何かしらのイベントを企画する際の参考にしたいと思います。
2. MINI Hardeningとは?
MINI Hardeningとは、WAS forumが主催するHardening Projectから派生したミニプロジェクトです。Hardening Projectでは、まるまる2日間かけてセキュリティインシデント対処の演習とフィードバックを実施しますが、MINI Hardeningでは、半日から1日程度でカジュアルにセキュリティインシデントを体験することを目的としています。このため、インシデント経験が少ない、どのような属性の方でも気軽に参加いただけるコンテンツになっています。※当プロジェクトの詳細については、この資料をご覧ください。
MINI Hardeningでは、大きく以下2つの役割に分かれて競技を行います。
- オペレータ
システムをセキュアに運用する。
競技時間中、運営から与えられたシステムに存在する脆弱性にいち早く対処し、攻撃者が行う攻撃を無害化または影響を最小化し、システムの機密性・完全性・可用性を維持し続けることが求められます。
なお、オペレータの役割はMINI Hardeningに応募した参加者が担います。 - 攻撃者
システムに対して攻撃を行う。
競技時間中、システムに存在する脆弱性を突いて攻撃を行い、Webページの改ざんやデータの消去など、システムの機密性・完全性・可用性を脅かす行為を行います。
なお、攻撃者の役割はMINI Hardeningの運営スタッフが担います。
このようにMINI Hardeningは、参加者(オペレータ)が普段の業務ではなかなか経験できないような様々な攻撃を実際に体験し、そして対処することで、セキュアなシステム運用を行うための経験や知識を身をもって学んでいただく場を提供します。
2.1. 運営スタッフ
今回のMINI Hardeningの運営は、以下のメンバーで行いました。
名前 | 担当 | |
---|---|---|
Masahiro Tabata | MINI Hardening team leader | |
Yoshihiro Kyan | Engineer of the cryptocurrency system | |
Isao Takaesu (MBSD) |
Engineer of scoring system & crawler | |
Yoshinori Matsumoto (Capy Inc.) |
Red team | |
Shun Suzaki (MBSD) |
Red team | |
Daiki Ichinose (MBSD) |
Red team |
3. 競技内容
今回の競技では、参加者は仮想通貨を取り扱う架空の会社「SORAMINE .Inc」の凄腕システムオペレータになりきり、競技時間中、攻撃者の攻撃から自社のシステムを守りきることが求められます。今回は飛び入り含め、合計22名の参加者が集まりました。競技はチーム戦で行われ、5つのチーム(Team-A~E、1チーム4~5人程度)を編成して競技を行いました。
また、競技時間は過去の日本開催と同様に3時間に設定しました。ただし、HITCONのプログラムの都合上、競技中に1時間のお昼休みを挟みました。これは、休憩と同時に、チームメンバー同士で作戦を練ってもらう時間を与える狙いもあります。また、競技とは別にオープニング(競技説明)とソフトニング(競技終了後のフィードバック)、表彰の時間を設けました。
なお、各チームのシステム運用の適切さは運営が定めたスコアリングルールで数値化され(詳細は3.2で説明)、競技終了時に最も高いスコアを獲得したチームが最優秀チーム、すなわち優勝チームとなります。
3.1. 運用対象のシステム
今回の競技でオペレータが運用するシステムは以下の5つです。
それぞれ異なるCMSやミドルウェアで構築されており、各システム特有の脆弱性や設定不備といった問題を含んでいます。
- コーポレートサイト
SORAMINE社のコーポレートサイト。 - 問い合わせサイト
SORAMINE社の問い合わせページ。 - 採用サイト
SORAMINE社の採用特設サイト。 - 仮想通貨取引サイト
SORAMINE社の顧客がEthereumを取引(売り注文、買い注文)するサイト。 - 仮想通貨サーバ
No.4 仮想通貨取引サイトとバックエンドで繋がったEthereumサーバ。
本サーバが攻撃者に侵害されると、仮想通貨取引サイトで取引が行えなくなる。
3.2. スコアリングルール
今回の競技では、上記No1~No4のWebサイトが正常に稼働している時間に比例してスコアが加算される仕組みになっています。いわば、SLA(Service Level Agreement)のような概念です。
具体的には、上記Webサイト上をWeb Crawlerと呼ばれるWebページ間遷移を自動的に行うツールで定期的にクローリングさせ、Web Crawlerが(運営側が想定した)クローリングパターンを正しく実行できた場合は「システムは正常稼働」と見なしてスコアを加算します。
一方、システムが攻撃されてページが改ざんされる、オペレータがオペレーションを誤ってログインアカウントを消去・変更する、Web Crawlerからのアクセスを遮断するなどした場合、Web Crawlerは想定パターンのクローリングができないため「システム異常」と見なしてスコアを加算しません。
このように、オペレータは脆弱性の対処のみならず、システムの正常稼働に影響を及ぼすようなオペミスを徹底的に避けなければ、高いスコアを獲得することはできません。
3.3. 攻撃の一例
今後同様の構成でイベントを開催する可能性があるため、攻撃の詳細を書くことはできませんが、攻撃者によって様々な脆弱性を利用され、各サイトのトップページが改ざんされたり、サービスが突然停止したりするようなインシデントが発生します。競技の目的は、サービス提供を継続することですから、このようなインシデントが発生した状態になるとスコアが加算されなくなります。また、攻撃によって競技中にログインパスワードなどが漏洩すると、会場のメインスクリーンに晒されることになります。
3.4. 競技を彩るツールたち
競技が始まると、オペレータは黙々とシステム運用を、攻撃者はあらかじめ決められているタイムラインに沿って調査から攻撃まで黙々と行います。そこで、MINI Hardeningでは競技に彩りを添えるために、以下のツールを用意しました。
3.4.1. システム状況可視化ツール
各チームが運用するシステムの運用状況を可視化するツールです。数十秒おきに各チームが運用するWebサイトのトップページがリアルタイムに表示されます。
上述したように、攻撃者がページを改ざんすると、その改ざんされた状態が表示されます。また、攻撃やオペミスによりシステムから完全に応答がなくなった場合は、エラー画像が表示されることになります。
このように、本ツールを使用することで各システムの状況が可視化されるため、オペレータが現在の状況を即座に把握することに役立ちます。
3.4.2. スコアボード
各チームの獲得スコア(積算値)がリアルタイムに表示されます。
スコアボードは視認性を重視し、獲得スコアをカラフルな折れ線グラフと数値(左下)、また、運用のミスなどにより失った機会損失値(右下)が表示されます。
このように、スコアボードを使用することで各チームの優劣が可視化されるため、各チームの競争心に火をつける仕掛けとなっています。
4. 事前準備
ここでは、初海外開催となったMINI Hardening with HITCONを開催する上で苦労した点や工夫した点を紹介します。
4.1. 広報活動
これまで日本国内でのイベント実績は豊富にあり、それなりに知名度が高いMINI Hardeningですが、今回は初の海外開催ということで、集客にはかなり腐心しました。
MINI Hardeningプロジェクト公式Twitterアカウントによる中国語・英語・日本語による宣伝はもちろんのこと、HITCONの前週に台北で開催されたCOSCUPに運営スタッフの松本氏が登壇し、MINI Hardeningの宣伝を行いました。登壇内容はこちらをご覧ください。
また、とても嬉しいことに、開催が決定してから開催前日までの間、何度かHITCON公式アナウンス(Facebook, E-mail)でMINI Hardeningを宣伝してくれました。
さらに、今年のHITCONリーダーであるPo-Shen Chiu氏がHITCONオープニングセレモニーにて、MINI Hardeningを紹介してくださいました!
その甲斐もあり、飛び入り参加者も含め、最終的には日本国内での開催と同程度の4人/6チームを作れるほどの参加者が集まりました(ただし、台風11号の影響もあり、当日に何人かのキャンセルは出ました)。
また、今回のMINI Hardeningでは見学者も競技会場に入れるようにしていましたが、競技に興味を持った見学者から「途中からでも競技に参加したい」との要望があったため、急きょ飛び入り参加のシステムを設けました。このことは、よりカジュアルにインシデントを体験するという点において、MINI Hardeningプロジェクトのコンセプトとマッチする良い試みになったと考えています。なお、飛び入り参加者は全て同じチームの所属とし、(途中参加のため)最終的なスコア集計では評価対象に含めませんでした。
4.2. システムやドキュメントの英語化
初めての海外開催ということで、今まで作成してきた日本国内向けの競技環境やドキュメントの翻訳作業が必須でした。筆者らを含めた運営スタッフは現地の言葉(中国語)を話すことができないため、メインのコミュニケーション言語を英語に設定しましたが、競技に参加される地元の方々が英語に慣れている保障もないため、ドキュメントに関しては、今まで口頭で補足説明を行っていた点を含めて細かく加筆して英語化する必要がありました。結果として、全てのドキュメントは大幅に加筆修正されました。
また、競技で運用するシステムやツール類についても若干ではありますが、日本の文化に合わせて作り込まれていた部分があったため、できるだけ平易な表現に置き換えることにしました。
4.3. チームの士気を保つ工夫
MINI Hardeningの運営スタッフは気の合う仲間で構成されていますが、時には真剣に議論を行うが故に厳しい言葉も飛び交います。実際に、今回は台風11号の台湾への接近に伴い、イベント開催自体が危ぶまれる状況であったため、現地で深夜まで腹を割ってリカバリプランを議論しました。また、今回は初海外開催であり、かつタイトなスケジュールであったため、心身ともに運営スタッフの疲労はピークに達していました。
そんな中、運営スタッフの士気を維持するために役立ったのが以下のアイテムたちです。
HITCONから許可を頂き、HITCONとMINI Hardeningのロゴをあしらった、本イベント専用のTシャツを作成しました。そして、皆でこれを着てイベントに臨みました。不思議なことに、おそろいのTシャツを着用すると、妙な一体感が生まれます。
また、今回から競技の雰囲気を高めるために市松模様のテーブルクロスを用意しました。とても良いアクセントになりました。
さらに、MINI Hardening with HITCONステッカーも作成しました。これもチームの士気向上に役立ちました。なお、このステッカーは現地でも人気が高く、参加者や見学に訪れた方々に配布したところ、あっという間に無くなりました。
最後に紹介するのは、先に現地入りしていた運営スタッフの松本氏がハンドクラフトで作成したMINI Hardeningの旗です。筆者らが台湾に到着した際、松本氏がこの旗を振って歓迎してくれました。その姿を見た時、運営スタッフの疲労が和らげられたのは言うまでもありません(最後に、この旗はMINI Hardeningに思い入れを持った現地のHITCONスタッフに手渡されました)。
これらのアイテムは一見すると些細なものに見えますが、大いに運営スタッフの士気を維持、そして高めるのに役立ちました。
5. 競技
5.1. 会場設営
以下の写真を見てもらうと分かる通り、HITCONコミュニティの皆さんに大変すばらしい会場を用意していただきました。このおかげで、非常に快適で何不自由のない競技環境を準備することができました。
MINI HardeningはHITCON Day2であっため、会場設営はHITCON Day 1が終了した夕方以降に行いましたが、多くのHITCONスタッフの方々にご尽力いただき、電源のほかLANケーブルの敷設までスムーズに準備を行うことができました。また、HITCONスタッフのPo氏とMelody氏には、システム状況可視化ツールを会場のメインスクリーンの解像度に合わせる調整作業のため、日が暮れて会場の閉館時間になるまでお付き合いいただきました。
そのお蔭もあり、無事に開催日当日を迎えることができました。
5.2. 競技開始
競技開始前のオープニングにて、競技環境やルール、注意事項などを説明しました。参加者の皆さんは真剣に聞き入っていました。
そして、競技開始となるや否や、参加者は一斉に自分たちが管理するシステムの脆弱性や設定を調べはじめ、黙々と対処を行い始めました。
競技開始から一定時間経過した後、攻撃者が攻撃を開始しました。
また、競技に彩りを添えるため、マイクを使って攻撃や競技の実況、時には各チームに励ましの言葉を掛けました。
攻撃が各チームのシステムに刺さると、上の写真のようにシステム状況可視化ツールに攻撃を受けた旨が表示されます。参加者の方々は声を上げたり、頭を抱えたりしていました。
また、運営スタッフがwallコマンドを使って各チームに攻撃対処のヒントを与えた際、参加者は悲喜交々とした反応を見せていました。こういったリアクションは、日本も台湾も変わらないですね。
また、MINI Hardeningの噂を聞きつけた地元メディアが取材に駆けつけてくれました。どうやら、現地でもMINI Hardeningは注目されていたようです。なお、MINI Hardeningはこちらのメディアで記事になりました。
5.3. 競技終了後
競技は滞りなく予定通り3時間で終了しました。
休憩の後、ソフトニング(フィードバック)を行いました。ソフトニングでは、攻撃者自ら今回行った攻撃の手口や対策を詳細に解説しました。
今回の攻撃者である弊社・洲崎、一ノ瀬が攻撃の手口と対策を説明している様子です。参加者の皆さんは真剣に耳を傾け、解説を聞いて大きく頷いている方もいました。また、このソフトニング以外の時間でも、個別に運営スタッフに質問を投げかける熱心な参加者もいました。台湾の方々は非常に真面目で熱心な方々が多い印象を受けました。
5.4. 結果発表&表彰式
ソフトニングの後は、いよいよ表彰式です。
今回は飛び入り参加者含め、5チーム(Team-A~E)で競技を行いましたが、最終的に各チームの獲得スコアは以下のようになりました。
チーム名 | 獲得スコア |
---|---|
Team-A | 12,522 |
Team-B | 6,861 |
Team-C | 7,299 |
Team-D | 6,703 |
Team-E | 7,291 |
結果はTeam-Aの圧勝でした!
競技開始直後はTeam-Aのスコアは伸びず低迷していましたが、徐々に盛り返し、競技終了1時間前に首位に浮上、ぐんぐんスコアを伸ばし続け、終わってみれば2位のチームにダブルスコアに近い差をつけて圧勝しました。
Team-Aは4人チームでしたが、会場にも一番乗りし、競技が一時中断したお昼休みの時間を利用して4人で対策を議論していたのが印象的でした。また、競技中も攻撃者が繰り出す様々な攻撃に適切に対処し、システムをほぼ安定的に稼働させていました。
とある運営スタッフは「過去の日本開催含め、過去最高のチームじゃないか?」と呟いていました。それほどに皆レベルが高く、台湾の技術者の高いスキルの一端を垣間見ることができました。
表彰式では、MINI Hardening リーダーの田端氏からTeam-Aのメンバーに、MINI Hardening with HITCONスペシャルTシャツを手渡し、記念撮影を行いました。Team-Aの皆さんは満面の笑みを浮かべていました。
6. HITCONクロージング
MINI Hardening運営スタッフは、HITCONの最後に行われたクロージングセレモニーにも出席しました。
ここでも、今年のHITCONリーダーであるPo氏が、我々のMINI Hardeningについて言及してくれました。
また、クロージングセレモニーではライトニングトーク(LT)も行われましたが、HITCONのご厚意により、MINI Hardeningチームも急きょLTに参加させていただきました。
LTでは、MINI Hardeningの意義と、我々運営スタッフが台風11号の接近でイベントが開催できるのかとても心配したこと、そして、HITCONへの感謝の意を伝えました。上の写真からは伝わりにくいですが、会場全体が盛り上がるほどCoolなLTになりました。
7. おわりに
今回は初海外開催、かつ世界的に知名度の高いHITCONでのMINI Hardening開催ということでナーバスになる部分もありましたが、様々な方々のご協力により、MINI Hardening with HITCONを成功裏に終えることができました。競技終了後に何人かの参加者からフィードバックを頂きましたが、皆ポジティブな反応ばかりで、とても楽しんでいただけたようで大変嬉しく思っています。
筆者らはHITCON初参加でしたが、本コミュニティはとても活気があり、スタッフの人柄も大変良く、若い力に溢れる素晴らしいコミュニティでした。また、多くの女性スタッフが活躍しているのも印象的でした。
また、Po氏のご厚意により、我々はHITCONスタッフの打ち上げパーティにも招待されました。そこでは、日本からいらした方々や現地エンジニアの方々と名刺交換を行うなどして、大いに交流することができました。素晴らしい彼らとの交流は今後も続けていきたいと真に思いました。
最後に、今回は台風11号が接近してくる中で行われましたが、台風にも負けなかったHITCONは今後もより素晴らしいコミュニティに成長していくと思います。そんな素晴らしいコミュニティにご招待いただき、筆者らを含む運営スタッフは、MINI Hardeningを続けてきて、本当に良かったと心から思いました。
MINI Hardening自身も、仲間と共にHITCONの成長に負けないレベルでより学びのあるコンテンツを作成し、競技に参加してくれる皆さんに少しでも多くの気付きと興味を得てもらえるように成長していきたいと考えています。また、可能であれば、来年もHITCONで開催したいと考えています。併せて、より活動の幅を世界に広げていきたいと思っています。
謝辞
最後に、筆者らからの謝辞を以下に記す。
今回、HITCONという素晴らしいコミュニティでMINI Hardeningを開催するために懸命に働いてきた方々をはじめ、多くの方々に感謝したい。特にMINI Hardening運営スタッフの田端氏、松本氏、喜屋武氏にも心から感謝する。プライベート参加でありながら、事前準備から開催日当日にかけて現地で運営スタッフを強力にサポートしてくれた山﨑剛弥 氏(マクニカネットワークス株式会社)にも心から感謝するとともに、運営スタッフ全員からハグと麦酒を送りたい。
また、MINI HardeningとHITCONの架け橋として今回の開催に尽力してくれた上野宣 氏(株式会社トライコーダ)、現地でMINI Hardeningのことを気にかけてくれたAIDO氏、英語ドキュメントのレビューに協力してくれたKazuki Tsubo 氏にも心から感謝したい。
そして何より、会場提供や設営、スケジュール調整を始めとして、MINI Hardeningの開催に惜しみない努力をしてくれたHITCONフレンズ(Po氏、Melody氏、全てのスタッフの方々)に感謝し、特別な賛辞を送る。
以上
一ノ瀬太樹, 洲崎俊, 高江洲勲
おすすめ記事