セキュリティ、インフラについては、まったく専門ではない私が無謀にも「Hardening II SU」に参加してきました。
自分が関わったこと中心となりますので、 技術要素少なめですが、投稿をさせていただきます。
セキュリティ関係の仕事にしている方はいろいろ思うところがあるかもしれませんが、 イベントに参加した感想ということでご容赦いただきたいです。
目次
Hardening II SUとは
- 最高の「衛る」技術を持つトップエンジニアを発掘・顕彰する
- 脆弱性のあるビジネスシステム(ECサイト)へのハードニング(堅牢化)力の強さを総合的に競うコンペティション
- 技術面だけでなく、ビジネス面も評価されるため、下記のような活動も大事
- 顧客対応
- JPCERT/CCへの報告
- 役員への報告
- 現在の状況に応じた商品の販売戦略の見直し
- 競技中は、設定不備やアプリケーションの脆弱性をついた攻撃がどんどん来る
- 攻撃に会うと、DNSやWebサーバを停止させられたり、情報漏洩する
- 情報漏洩した場合には、上司への報告などのミッションも発生する
- 攻撃に対応しつつ、売り上げをいかに稼ぐかという競技
- 攻撃を防ぐためにベンダー製品(MP)を購入することも可能
- 攻撃に会うと、DNSやWebサーバを停止させられたり、情報漏洩する
- グランプリを決めるルール
- 一番売上が高かった連合の一番売上が高いチームがグランプリ
- 連合はグループ会社のようなもの
- チームが一つひとつの会社のイメージ
- 一番売上が高かった連合の一番売上が高いチームがグランプリ
- 下記の日程で行われる
- 1日目に技術競技(コンペティション)
- 2日目の各チームの振り返り共有と競技解説
事前準備でやったこと
自分が準備したのは、技術面以外で、インシデント対応を迅速に行うための準備です。
実際にインシデントが発生した際にスピード感を持って対応できるように下記の準備をしました。
- 当日のインシデント対応方法について決定
- インシデント発生時のコミュニケーション方法
- 当日インシデント発生時の対応の優先順位
- 意見が割れた時に最終的に優先順位を決める人
- ビジネス面で必要な可能性があるドキュメントをあらかじめ作成
- Webページに掲載するもの
- 情報漏洩のプレスリリースなど
- 各種報告メールフォーマット(顧客向け、JPCERT/CC向け、上司向け)
- 情報漏洩
- ウイルス感染
- 不正なアクセス
- Webページに掲載するもの
競技当日にやったこと
私の当日の役割は、チームを会社としてみた時の社長でした。
やったことを箇条書きにします。
- 自分がやったこと
- チーム内で困っていることをMP(セキュリティベンダー)さんや連合の他のチームに聞きに行く
- 自社で解決した問題を連合内に共有
- MP(ベンダー製品)の発注
- 取締役会のための情報取集、報告
- クレジット情報漏洩の報告
- 被害者の人数
- 損害賠償額の試算など
- クレジット情報漏洩の報告
うまくいったこと
下記要因により、スピード感があるインシデント対応ができたように思います。
- どのサービスを優先的に守るか、どの作業を優先的に行うかなど作業の優先順位を決めていたこと
- 作業の優先順位を決めることで悩まず、即行動に移すことができた
- 報告内容のフォーマットをあらかじめ用意したこと
- 取締役への報告
- 顧客向けプレスリリース
- 各種メールフォーマット
- 口頭コミュニケーションをメインにしたこと
- コミュニケーションをしっかりできたため、前半ほぼ最下位だった売上のときも落ち込まずに作業できた
- 前向きな発言をみんなですることで、チーム一丸となって作業出来た気がします
- 伝えたつもりが伝わってないというありがちなことが発生しなかった
- コミュニケーションをしっかりできたため、前半ほぼ最下位だった売上のときも落ち込まずに作業できた
- 連合内のリーダー間で相談しやすい人間関係が形成されていたこと
- 競技前も競技中も丁寧にご対応いただき、本当にありがとうございました
- CMSの使い方などインシデントに直接関係ないことまで共有していただき、効率よく作業できた
- 実際の仕事でも緊急時に助けてもらえるような人間関係を普段から作っておくことが大事だと思いました
- まずは、隣チームに気軽に聞ける人間関係を作りたいと思いました
- 競技前も競技中も丁寧にご対応いただき、本当にありがとうございました
うまくいかなかったこと
今回の競技では下記のような状況となっており、 実際のインシデント対応では改善したいと感じました。
- チームの状況の全容が全然把握できていない
- 判断を求められた場合は、その場の記憶だけで判断
- 基本的には、○○でいいですか?なのでほとんどOKと答えた
- 自分が席を外してるときに発生したことが把握できてない
- Slackに記録があるが、Slackを追うのは結構つらかった
- 判断を求められた場合は、その場の記憶だけで判断
- 優先順位の都合上、後回しにしたことを十分に管理出来ていない
- 後回しにしたことを一覧にし、優先順位をつけておくような管理が本来は必要かと思いました。
今回は幸運にも下記理由で大きな問題になりませんでした。
- 後回しにしたことよりも優先順位が高い事象がどんどん起こる
- 競技が1日なので発生した事象をなんとか記憶できる
しかし、2日目があったら、後回しにしたことの管理が十分にできていないことが問題になっていただろうと容易に想像できます。。。
また、何度も脳内シミュレーションしてから参加しましたが、イメージ通りにできたことはほとんど何もありませんでした。 脳内シミュレーションして計画を立てることは必要だと思いますが、実際にインシデント対応訓練し計画を見直すことが重要だと思いました
感想
インシデント対応の計画づくりや、実際にインシデント対応をできたことは非常にいい経験となりました。
また、インシデント対応中という特殊な状況だと、 余裕がなくなることから普段できることができなくなることもよくわかりました。 (詳細は割愛しますが、余裕がないことが原因の操作ミスやログインできない事態に何度か遭遇しました)
また、競技参加者は、とてもセキュリティに対する意識も高く、勉強熱心で、 非常にいい刺激になりました。
自分は全然セキュリティの専門家でも、インフラ構築の専門家でもないですが、多少なりやれることはあったと考えております。 ですので、普段セキュリティに関係ないことをやっている方でも、エンジニアでない方でも興味を持ったなら是非参加してみることをおすすめします。
最後になりますが、このような貴重な体験をさせていただき、運営・スポンサーの皆様ありがとうございました。
また、競技者の皆様、Market Placeの皆様、競技中親切にいろいろ教えていただきありがとうございました。
機会があれば、是非ともまた参加させていただきたいです。