NFLabs. エンジニアブログ

セキュリティやソフトウェア開発に関する情報を発信する技術者向けのブログです。

NTTコミュニケーションズグループに向けたセキュリティイベントを実施しました

教育研修事業を担当している片山です。

突然ですが、皆さんはセキュリティにどのような印象を持っていますか?

「大事なのは分かる、でも難しそう」「興味はあっても、どのように学べるのかが分からない」「そもそもハッカーのような高いスキルを持つセキュリティエンジニアは、どのようにしてスキルをつけたの?」「私にもできるの?」といった、さまざまなご意見があるかと思います。

私たちエヌ・エフ・ラボラトリーズ(以下、NFLabs.)は、そのように特殊と思われがちなセキュリティ技術を多くの方が学び、得たスキルを用いて活躍するためのお手伝いをしてきました。今回は親会社のNTTコミュニケーションズで開催した「ハードニング」イベントの様子についてレポートします。

セキュリティの面白さを体験するイベントを開催

2023年1月24日、NTTコミュニケーションズ(以下、NTT Com)の本社である大手町プレイスのセミナールームでセキュリティ体験イベントが開催されるということで、総勢33人の皆さんがPCを片手に集合しました。このイベントで皆さんが体験するのは、チームごとに脆弱なシステムを与えられ、それに対して行われるサイバー攻撃に対して、一定時間内にできるだけ脆弱性を減らしてシステムを堅牢化(harden)するハードニング(Hardening)演習です。今回は40分を1サイクルとして、繰り返し演習を行いました。演習環境は毎回リセットされ、各回でスコアが算出されます。複数回の繰り返しの中で、初めは全く対応できなかった攻撃を徐々に把握して対処できるようになりスコアも徐々に上がっていくため、ゲーム感覚で楽しみながらセキュリティを学ぶことができるのが特徴です。

参加者の皆さんからは、「今までは利用者側の視点しか知らず、管理者側と攻撃側でこのような攻防が行われているのだと初めて知った。ゲーム性が高く、とても楽しかった」「リアルタイムで来る攻撃に対応するのは臨場感があって楽しかった」などのコメントがあり、楽しみながら取り組めていただけた様子でした。


イベントの様子

ここからは、イベントの様子をご紹介します。

はじめに、NFLabs.代表取締役社長兼NTT Com情報セキュリティ部部長の小山さんからのビデオメッセージ上映や、NFLabs.の教育研修事業で講師をつとめる私から、インシデントハンドリングやハードニングに関する講義を行いました。インシデントハンドリングの講義ではサイバー攻撃に対する対処について一連の流れを、ハードニングの講義ではシステムの堅牢化を行う際のポイントを説明しました。

演習で扱う環境はAWS上に構築しており、参加者のPCからSSHで接続して設定変更などを行いました。環境はLAMP(Linux、Apache、MySQL、PHP)と呼ばれるものを利用して、サーバーの内部ではSSHやFTPなどのサービスが起動していました。このサーバーの稼働状況や攻撃の防御状況がスコアという形で画面に投影され、それを見ながらリアルタイムで状況が確認できるようになっています。

今回は40分間の演習時間を1サイクルとして、与えられた脆弱なシステムの堅牢化を行い、サイバー攻撃を防ぐという流れを体験しましたが、演習の前後では作戦会議と振り返りを行い、合計3サイクルを実施しました。

演習が始まると、各チームの中で技術に詳しい方がリーダーシップを取り、さまざまな指示を行っている姿が見られました。インシデントハンドリングにおいて大事な情報共有について重要なログを画面共有したり、Slackで行った設定変更を共有したりと、各チームが工夫を凝らしている点も見受けられました。

また、1回目の演習では、ブルートフォース攻撃やSQLインジェクションなどの多くの攻撃からシステムを守りきれず、最終的にサーバーの暗号化やシステムを停止されたチームが多数あったものの、ログを確認してどのような経路で攻撃が行われたのかを分析することで、2回目以降の演習の対策につなげていくことができました。

このように、参加者は1回目よりも2回目、2回目よりも3回目と回を重ねるにつれて対策の勘所をつかみ、よりシステムの堅牢化ができるようになっていました。


各チームの振り返りや発表と講師からの解説

演習が終わると各チームで振り返りを実施して、演習での学びや感想を全体に共有しました。振り返りでは、対処できなかった攻撃や業務へ活かせる内容などが話し合われました。その一部を、以下でお伝えします。

  • 自分たちが普段運用しているシステムのデフォルトのユーザー・設定がどのようになっているか、確認したい
  • セキュリティについてあまり知らなかったが、脆弱性を見つけることができて楽しかった
  • 実際に攻撃を受けると混乱してしまったので、冷静さを保てるように準備しておくことが大切だと思った

さらに振り返り後には、どのような攻撃があったかについての説明や、多くのチームが対策できなかった攻撃についての解説も実施しました。例えば、ディレクトリリスティングの設定が有効になっていて機密情報が見えてしまうという脆弱性があり、攻撃者はどのようにそれを見つけるのか、どの設定ファイルを修正すればよいかということを解説しました。

最後に表彰式を行い、スコアが高い順に1位から3位までのチームを表彰しました。入賞したチームの皆さんからは、「今回の機会を通してセキュリティは面白いなと思ったので、もっと勉強して、次は1位を取りたい」「この経験を、実際の業務にも生かしていきたい」「攻撃を受ける体験をしたことで、サービスを開発する際は今回のPHPのような独自実装をするのではなく、フレームワークの整った言語を利用したいと思った」といったコメントをいただき、今後の意気込みを確認してイベントを終了しました。


おわりに

本イベントには、日ごろからセキュリティ業務に従事していない方も多数参加いただきましたので、事前学習資料を提供したり、研修を受講していないことを考慮してヒントを用意したりとセキュリティ初学者に向けてのサポートも手厚く実施しました。サポートに入ったNFLabs.の講師からセキュリティの面白さを語ったこともあり、参加者からは「セキュリティに関する興味が深まった」「ぜひNFLabs.の実践的なセキュリティ研修を受けてみたい」といった声をいただけました。
日ごろからセキュリティ業務に従事していない方に、セキュリティの面白さを伝えることができて非常にうれしく思います。今後も様々な企業や学術機関向けにこのようなイベントを開催していければと思います。

なお、ハードニングについては2019年にNTTコミュニケーションズで株式会社川口設計の川口洋代表取締役をお招きしMicro Hardeingを実施していただいております。気になる方は以下の記事もご参照ください。
www.sec-k.co.jp