Cyber Colosseo Micro Hardening 参加記

NECセキュリティブログ

2020年6月5日

NEC サイバーセキュリティ戦略本部セキュリティ技術センターの渡辺です。
本記事では以前に参加したCyber Colosseo Micro Hardening new window[1]の参加レポートになります。当日のイベントの様子や所感をご紹介します。

Cyber Colosseoとは

東京2020オリンピック・パラリンピック競技大会に向けて、大会関連組織のセキュリティ担当者を対象に高度な攻撃に対処可能な人材育成をめざすイベントで「独立行政法人 情報通信研究機構(NICT)」が2018年より開催しています。
※昨今の新型コロナウィルスの影響を受けて、今年度に予定していた開催が延期となっています。代替日程につきましては公式サイトをご確認ください。

Micro Hardeningについて

Micro Hardeningは実践的で堅牢化技術の価値を最大化することを目的としているHardening Projectから派生したサブプロジェクトです。Hardening Projectは制限時間が8~11時間以内に「攻撃検知」「被害の極小化」「攻撃対処」「システム復旧」「社内調整」「顧客対応」「商品調達」の技能を競うことに対して、Micro Hardeningは小さな環境を短時間に繰り返し行うことをコンセプトにしています。

トレーニング内容

Micro Hardeningは1セット45分とし、最低3回以上繰り返して実施します。未経験者や初心者でも取り掛かりやすいようにセキュアなハードニングを他の参加チームと競技形式かつゲーム感覚でサイバー攻撃に対処する能力を研鑽できることが魅力です。

トレーニングの評価方式

トレーニング開始と同時にクローラが正常に購入し続けることで、チームの得点が加算されていくため、参加者はECサイトを安定稼働させなければいけません。また攻撃シナリオは毎回、同じタイミングで同じ攻撃が発生するように設定されており、セットごとに少しずつ攻撃の状況を観測および対処する方法を試すことができ、徐々にシナリオパターンを把握することで最終セット目に高得点を狙うことができます。

〇評価が上がらなくなる要素

  • Webサーバにアクセスできない
  • ECサイトが稼働していない
  • ECサイトが改ざんされる

〇売り上げが上がる要素

  • ECサイトが稼働している
  • 攻撃を防御することで加点を得られる

当日の様子

当日の参加者とチームを編成後、4セット目に最高得点を狙う作戦をチーム内で設定して、1セット目は「守る対象となる環境」がどのような状態なのか使用OSやバージョン、システム各種設定の確認を行いました。また、平行してログを監視しつつ、何かイベントがあれば時刻と併せてメモを取るように心がけました。セット毎の振り返りでメンバーとの情報を共有する時間があるため、メモが非常に役立ちました。特に全体の各セットの中でも1セット目のチームの動きが後々の得点に大きく影響するので、冒頭の自己紹介で担当領域や業種をチーム内で共有した上で、各自の得意領域を生かして役割や作業を分担すると良いと思います。

2セット目は前回の調査結果を踏まえて見直すべき設定項目を分担し、修正対応しました。順調に得点を稼ぐ一方で設定変更しても特定の時刻から得点が伸びなくなることから、速やかな攻撃の対処と復旧対応の課題が浮き彫りになりました。

3セット目は各メンバーが自由に試行錯誤を繰り返したために重要なサービスが復旧しない状態に陥り、お手上げ状態になりましたが直前に変更した設定が原因であることから4セット目では同事象を回避する方針としました。後日談として定期的に設定ファイルをバックアップするスクリプトを作成しておけば、サービスを復旧でき各セッションにも流用できるため、次にHardening系のイベントに参加した際に活用したいです。

最終セットになると、参加した他のチームも設定の修正対応を冒頭の10分程度で済まし、予め決まった時刻に発生する攻撃に備えるだけで、空き時間はスコアボードをじっと眺める余裕がありました。

最後に攻撃シナリオ解説のセッションがあり全体の振り返りがあります。1セット目に、これまでの業務経験をもとに設定の不備にある程度当たりを付けて確認していたため、予想外の設定不備を数点ほど見落とした結果、ベースの得点が不足していることが分かりました。限られた時間内での確認はチェックリストやツールを使用して網羅的に行えないため、ヒューマンエラーや不測の事態も想定して防御策を二重三重に構えることが大切だと感じました。

システム堅牢化のアプローチ

多種多様に変化するサイバー攻撃に対して脆弱なシステムの設定を適切に変更して事前に備えておくことが重要です。そこでMicro Hardeningでも実際に行う、システムをどのように堅牢化するのか一例をご紹介します。

脆弱なパスワードの変更

脆弱なパスワードを設定しているユーザを放置しない
パスワード認証のみに依存せず、二要素認証を導入
システムにパスワードを組み込んだプログラムが実装されていないか確認

不要なユーザの削除

不要なユーザ(例:デフォルトユーザ)の削除

不要なサービスの停止

サービス提供に不要なサービスを停止
起動時の自動起動設定を変更

管理画面のアクセス制御

管理画面にアクセスできるIPアドレスを制限
管理画面で使用するアカウントのパスワードを強固に
※運用手順に影響しないか確認が必要

攻撃元IPアドレスのブロック

FirewallやWAFなど、ネットワーク機器で制御
iptablesやfirewalldなど、ホストで制御
サービスごとの設定ファイルで制御

最後に

Micro Hardeningは他のHardeningイベントとは異なり報告や書類作成といった工程がないため調査と分析に集中でき、仮に失敗しても次のセットに失敗を持ち越さずに実施できるためメリハリをつけて取り組むことができます。当日のチームメンバとコミュニケーションを取りつつ連携することで、不測のインシデント対応にも柔軟に対応することができます。また本イベントはシステム運用者だけでなく、システム設計に携わる方にもセキュリティ設計を行う上で現場作業者の疑似体験が得られるためお勧めです。

参考資料

執筆者プロフィール

渡辺 泰行(わたなべ ひろゆき)
セキュリティ技術センター セキュリティ実装技術チーム

入社以来、セキュリティ製品の開発・保守・運用業務に従事。セキュリティ技術センターに着任後はセキュア開発技術支援(セキュリティ要件、セキュア設計)を推進。
e-ネットキャラバン講師として児童生徒や保護者、教職員を対象に安心・安全なインターネット利用の啓発活動に参画。