6月2日(土)に行われたMicro Hardening v1.x@沖縄に参加しました!
Micro Hardeningとは?
戦う相手は過去の自分
Micro Hardening は「衛る技術の価値を最大化することを目指す」プロジェクトであるHardening Projectから生まれたサブプロジェクトです。「セキュアなハードニングをカジュアルに競技形式で学ぶ勉強会」であるMINI Hardening Projectよりもさらにカジュアルに「ゲーム感覚で」サイバー攻撃に対処する能力を磨くことを目指しています。
〜Micro Hardening v1.x@沖縄 イベントページの解説より〜
8時間から1数時間かけて競技を行うHardeningや、3時間のMINI Hardeningとは異なりMicro Hardeningでは1セット45分を複数回繰り返し行うことで、最初のセットで経験したことを次のセットにフィードバックしていってより高得点を目指すというものです。
どのセットでも同じタイミングで同じ攻撃が行われるように設定されているため(MINIでも見習いたい!)、攻撃パターンを把握しその対処方法を検討・試すということができるようになっています。
またMicro Hardeningでは報告書作成が無くECサイトの売上で評価されるため、堅牢化に専念することができます。
とは言え、作業ログを残しておかないと次のセットに生かすことができないため、作業の記録やチーム内での共有は重要です。
その場で組んだ即席のチームでWebブラウザを使ってサービスの状態を確認したり、ログを解析しながら攻撃に対処していきます。
攻撃された内容
ネタバレになるので詳しくは書きませんが、
- 過去に話題になった脆弱性を悪用される攻撃もまだまだ現役
- 適切にアップデートしましょう
- 設定のミスや不適切な設定(初期設定のままなど)による情報の漏洩や悪用
- その設定は本当に必要ですか? 巷の設定を鵜呑みにしていませんか?
- IDやパスワードは変更しましたか?
などでした。
これらは残念なことに巷のサイト・サーバーでもあるとのことでした。
確認したこと・対応したこと
こちらもネタバレにならないようざっくりと。
- 配布資料を見て構成を把握する
- 実際の環境を調べて構成を把握する(資料通りなのかどうかなど)
- ログを見る(アクセスログや認証関連のログなど)
- サーバーのリソース状況のチェック
- サイトが閲覧できるかどうか、コンテンツに問題がないかどうかのチェック
- 不要なアカウントやサービスは消す・無効化する
- などなど
サーバー(サービス)を運用するときとほとんど一緒ですね。
競技の結果
Hardeningに複数回出場している&MINI Hardeningの運営という立場なので下手なスコアは出せないというプレッシャーがありましたが、各セットでその前の回のスコアを上回るスコアを出せて、順調に得点を増やすことができました。
終わりに
Hardeningに限らず、日々の運用でも普段の(通常あるいは正常な)状態(リソース状況やサービス稼働状況、ログの出力内容など)が判らなければ異常もまた判りません。
正しい(あるべき)姿を把握するのは重要だと思っています。
堅牢化や安定化のため不要そうに見える(が実は重要な)プログラムやアカウント止めてしまった結果、動かしたいものが正常に動作しなくなることがありえます。
一度に色々な変更を行ってしまうと問題が発生したときにどの設定が問題だったのかわからず原因の切り分けや対処が難しくなってしまいます。
一つずつ変更しては状況を確認して、問題が有れば(あるいは想定していた効果が無ければ元に戻す)切り戻し、無ければ次の変更を試すという繰り返しが大事です。
誤ってサービスを止めてしまったときはかなり焦りました。変更を行うときにはすぐに元に戻せるようにしておくのは本当に大事です。
次のMicro Hardeningは Micro Hardening v1.x@長野 2018/07/21 です。
このブログを書いている時点(2018/06/06)ではまだ参加可能ですのでMicro Hardeningに興味を持った方は参加してみてはいかがでしょうか。