mh4yに参加してきた(micro hardening for youth)
mh4yとは
Micro Hardening は「衛る技術の価値を最大化することを目指す」プロジェクトであるHardening Projectから生まれたサブプロジェクトです。「セキュアなハードニングをカジュアルに競技形式で学ぶ勉強会」であるMINI Hardening Projectよりもさらにカジュアルに「ゲーム感覚で」サイバー攻撃に対処する能力を磨くことを目指しています。
Micro Hardeningでは、参加者は45分という限られた時間のなかで、提供されたECサイトに対する様々なサイバー攻撃に対処することが求められます。参加者は用意されたECサイトにログインし、スタートコマンドを実行することで、ゲームの開始を任意のタイミングで行うことが可能です。スタートコマンドが実行されると、ECサイトに対して買い物を行うクローラが動き出します。このクローラがECサイトで購入した金額が参加者の得点となり、ECサイトを安定稼働させることが高得点につながります。クローラが動作する裏側では自動的に多数のサイバー攻撃も行われ、ECサイトの安定稼働を妨害します。参加者は次々と発生するサイバー攻撃を防御し、停止したECサイトを復旧することで売上を稼ぎ、さらに防いだ攻撃に応じたボーナス得点(追加のクローリング)を得ることができます。Micro Hardeningの評価は単純に稼いだ得点のみを対象としています。
Micro Hardeningのゲームは45分を1セットとし、複数セット(最低3回以上)繰り返すことを想定しています。毎回、同じタイミングで同じ攻撃が発生するように設定しています。Micro Hardeningは報告書作成や、攻撃手法や防御方法の解説の時間を組み込まない代わりに、毎回少しずつ攻撃の状況を観測し、対処する方法を試すことで、エンジニアとしての能力向上が実現できることを目指しています。理想的にはシューティングゲームのように、敵の攻撃のパターンを覚えることで高得点を稼ぐことができるシステムにしたいと願っています。
コピペです。
今日は、雪が降りました。天候が心配でしたが、無事に終えることができてよかったです。本日のmh4yのことを少し振り返りたいと思います。
まず、会場は北海道警察の本部でした。(;'∀') 札幌初開催で、北海道警察とコラボ!豪華!
LOCALが交通費支援をしており、北海道各地の方が参加しやすくなったと感じます。参加者は60人ぐらい?すごい。
会場は道警本部の会議室で、使うのは初めてらしいです。今後はイベントなどで使用する機会が増えるそうです。
会場に多分、すごく偉い方や、多くのメディアの方々がおり、最初はその雰囲気に少し身構えてしまいした。
実は、mh4yの事前講習会が札幌、千歳でありました。内容としては、mh4yを想定した簡単な攻撃手法を体験するものでした。事前資料もあり、当日まではその資料を読んだり、事前講習会の振り返りをし、準備を進めていました。
午前
講義と協賛企業の紹介などがありました。講義は、川口さんの活動歴などセキュリティ業界についてのお話を伺いました。
お昼、事前勉強会にて、お弁当で🍖肉🍖を食べたい、飲み物はRedBuleがいいと言うと快諾していただきました。そのため、当日はお肉メインの豪華なお弁当でした!もちろんRedBulもありました。わがままを聞いていただき、誠にありがとうございます。
午後
ハードニングが始まります。
事前準備ではSlackにチームを作り、担当分野を決めました。チーム名はSAPICA10です。命名理由は、メンバーが札幌と千歳に住んでいるため、それぞれの都市コードSPKからサピカ、10はsshのアドレスが事前に割り振られたアルファベットのチーム順の並びの数字だったため、忘れないようにと10にしました。(僕らはJチームだから10)
自分はWebサーバの担当となり、ApacheとWordpressのお巡りさんをしていました。事前準備で、徳丸本を読んだり、インジェクション問題、DoS攻撃など、主要な攻撃対策は抑えました。また、ハードニングのwriteupも読みました。
チームメンバーについて、皆さん、協力的でありがたかったです。Slackでも話合いを多くとることができ、とても感謝しています。
競技スタート
※対策したことなどはネタバレになるので詳しくは書きません。
1回目
とりあえずwordpressとかいじいじ、不審なファイルの対処などをしました。
2回目
まさかのスコアが3万5千点、防御点はそこそこあるのに。。
3回目
現状維持でした。あらたな対策などはできていなかったと思います。
また、vncがずっと接続できず、ブラウザでスコアを確認できませんでした。しかし、会場スクリーンにスコアが移っていたため、直接困ることはなかったです。
1回目からある程度の対策はできていたため、伸びは横ばいかなと。
結果
10位!
防御点はそこそこありますがスコアが…。2回目は多分、自分がwordpressのプラグインを無駄に停止してたのかも。 確認が大切です。
所感
セキュリティの入門には最適だと感じました。事前講習会も個人的には助かりました。mh4yがどのような内容かを把握でき、初心者が当日に怯えることを防ぐことができるため、事前講習会は非常に意義があると感じます。また、北海道警察本部に侵入できたのはレアでした。なんともいえない独特の緊張感を体験できました。
micro hardeningには、復習をしながらできるのがやはり、とても身になるなと感じました。また、解説で、作業プロセスの記録(技を盗む)、作業内容の共有(もとに戻せる環境をつくる)、サービス稼働状況の調査、不審ログに関する調査(ググれば結構でるものが多い)が挙げられました。これらは、以外とできていなかったため、とても勉強になりました。
終わってから、もっとこうしたい!もう一回やりたいなどという気持ちが強く残っています。これから精進です。個人的に、今日がひとつのセキュリティに対するとっかかりになれたように感じます。セキュリティへの意識が少しでもあると、ないとでは大きな差があります。本日の経験を活かし、今後はセキュアを意識した開発をしていきたいです。
本日はありがとうございました。
とても楽しかったです。
おすすめされた本
シス管系女子
基本的なコマンド操作を漫画を見ながら楽しく学ぶことができる本です。
一見ビギナー向けのように見えますが、かなりしっかりした内容を扱っているため良書です。一読の価値ありです。
徳丸本
mh4yでもでるWebの攻撃手法を防御の解説をPHPを主にしています。クロスサイトスクリプティングやSQLインジェクションなど代表的な攻撃を学べます。一家に一冊レベルです。
個人的おすすめ
ゼロから始めるLinuxサーバ構築・運用方法
この本でLAMP(Linux Apache MySQL PHP)環境でサーバを構築してみるのが一番身になると思います。mh4yもLAMP環境でした。
Linuxサーバセキュリティ徹底入門
ハッカーの学校
どのような順でサーバーに侵入して情報を盗むのか?サーバー侵入達成までの具体的な流れを知識の浅い方にも理解できるよう順を追って丁寧に解説していますと著者がいうように攻撃者の動きを理解できる内容となっています。
防御するには攻撃の理解も必須なため、非常に勉強になる本です。
宣伝
沖縄でハードニングあるよ。自分はenpitとどんかぶりです。興味のある方は、熱意のこもった文章を送ろう!
あと、ビジネスデザイン発表会といういやつもあるらしい
追記
ハードニング本線にも出場できました!!
<script>alert("終わり");</script>