Carbon Black Cloudの脆弱性管理について考える

2021年10月時点で、Carbon Black Cloud EndpointのAdvancedエディション以上と、Carbon Black Cloud Workloadの全てのエディションではNGAVやEDRに並び脆弱性管理(Vulnerability Management)という機能が使えます。

ただ、脆弱性管理と言われても具体的に何ができるのか、すぐにはわからない方もいるのではないかと思います。少なくとも、私はvSphereなどの仮想化テクノロジーに関わる仕事をしておりましたが、セキュリティに詳しいわけではありませんでした。なので、脆弱性と聞いても、メーカーから通知される製品の脆弱性情報を確認し、管理している環境に影響があるかを調査し、問題があれば推奨されるバージョンへのアップグレードやセキュリティパッチを当てるという対処をしていた程度です。Google検索すると脆弱性"管理"以外にも脆弱性"評価"、脆弱性"診断"(セキュリティ診断)、といった似たような単語も出てきてわかりづらかったので調べたことをまとめ、Carbon Black Cloudで何ができるのかを紐解いてみたいと思います。

そもそも脆弱性とは?

"脆弱性とは、コンピュータに存在する情報セキュリティ上の欠陥をいう" そうです。様々な機関やセキュリティベンダーが「脆弱性とは?」について解説してくれているため詳細な定義についてはそちらを参照いただければと思いますが、OS、ミドルウェア、アプリケーション、ネットワークなど、さまざまなプログラムの不具合や設計上のミスが原因となって発生した情報セキュリティ上の欠陥を指しています。誰にとっての脆弱性なのかというと、攻撃に悪用可能な脆くて弱い部分と受け取れますので、攻撃者にとっての脆弱性なわけです。

脆弱性"管理"とは?

脆弱性管理とGoogle検索すると2009年に発売されたPark Foreman著書のVulnerabulity Managementという本がよく参照されており、その中で、"脆弱性管理は、ソフトウェアの脆弱性を「識別、分類、優先順位付け、修正、および軽減する循環的な慣行」のこと" としています。

脆弱性」は個人や組織によらないコンピュータ自体に内在する弱点のことでしたが、「脆弱性管理」は個人というよりは組織におけるコンピュータセキュリティやネットワークセキュリティに不可欠な要素であることがわかります。脆弱性管理は、脆弱性に対する、より具体的な管理方法(識別、分類、優先順位付け、修正、および軽減)について言及しています。

また、脆弱性管理の特徴としては、組織における脆弱性を"継続的"に管理することを目的としたツールを導入することが多いです。

脆弱性"評価"や脆弱性"診断"との違いは?

脆弱性評価や脆弱性診断も組織における脆弱性の管理方法について取り扱っている点においては脆弱性管理と近いものがあります。しかし、多くの場合、脆弱性評価や脆弱性診断には特定の開始日と終了日があります。つまり、これらは期間が決まっているプロジェクトであり、その特性からもサービス化がしやすいため、単発または定期的な契約で外注しやすいものになっています。この点においては、組織の脆弱性を"継続的"に管理することを目的とした脆弱性管理とは対照的と言えます。脆弱性診断では最終的には脆弱性レポートの納品、脆弱性評価では既知の脆弱性の特定や分析に加え、侵入テスト(ぺネトレーションテスト)による検証までを含むことが一般的なようです。当然、サービス提供者やセキュリティベンダーによってその内容は異なるため、必ずしもこのようになっているというわけではありませんが、大まかな違いを知る上では参考になるのではないでしょうか。

このように期間が決まっている脆弱性評価や脆弱性診断では脆弱性管理にはない考慮すべきセキュリティ上の問題があります。それは脆弱性評価や脆弱性診断の結果が厳密にいうと最新の情報ではないことです。細かい話だと思われるかもしれませんが、そもそも脆弱性とは攻撃者に悪用される可能性がある欠陥であったはずです。そのためには、攻撃者が不正アクセスやサイバーセキュリティ侵害に悪用する前にセキュリティの脆弱性を特定し、修正することが重要です。脆弱性管理は、組織のセキュリティの脆弱性を長期的に管理することを目的とした継続的なプロセスであるため、脆弱性への本来あるべき対応を実現しやすいのではないかと思います。内製化せずに外注できる点はコストカットできるメリットがあるかもしれませんが、この点においては、組織として実現すべきセキュリティの強度を考慮した選択が求められます。

Carbon Black Cloudの脆弱性管理は何ができる?

Carbon Black Cloudは脆弱性管理以外にもNGAVやEDRといったセキュリティ機能を提供するフルクラウドモデルのセキュリティ製品です。Carbon Black Sensorと呼ばれるソフトウェアをサポート対象のOSにインストールすることでコンピュータ上の様々な情報を取得します。そのため、インストール直後から脆弱性情報を取得することができ、24時間おきに情報は自動更新されます(手動による即時更新も可能)。

取得した情報はクラウドに集約され、CVSSやKennna Securityの脆弱性データベースと照らし合わせ、脆弱性の識別、分類、優先順位付けなどを行い、それぞれの脆弱性に対する対処方法のリソース(例:該当するセキュリティパッチを提供するベンダーサイトへのリンクなど)と共に分析結果を管理者に提示します。管理者は結果をGUIから確認し、提示された対処方法に沿って対応を行うことでコンピュータの脆弱性に対処することが可能です。

このようにCarbon Black Cloudは脆弱性管理で求められる機能を提供することが可能なツールであり、24時間おきに自動更新される情報をもとに組織の脆弱性を"継続的"に管理することが可能です。

Carbon Black Cloudは、エンドポイントを対象としたCarbon Black Cloud Endpoint(以下、CBCE)と、vSphere環境に特化したCarbon Black Cloud Workload(以下、CBCW)のいずれの製品においても、上記した脆弱性管理機能は利用可能で、サポート対象のOSも共通しています。

参考:Carbon Black Cloud Sensor Support

仮想化ユーザーに嬉しいポイントとして、CBCWではvCenter Serverと連携することでvSphere Clientからセンサーのインストールや脆弱性情報を確認することが可能です。これにより、インフラエンジニアとセキュリティエンジニアが異なる組織であったとしても、インフラエンジニアが仮想マシンのデプロイプロセスのなかでコンピュータの脆弱性を排除することが可能です。

さいごに

今回はそもそも脆弱性管理とは何かというところからCarbon Black Cloudの脆弱性管理についてまとめてみました。

脆弱性管理においては継続性に加えて網羅的なインベントリが重要視されるのではないかと思います。Carbon Black Cloudは幅広いクライアントOSやサーバーOSをサポートしておりますが、組織においてはスマートデバイスやネットワーク機器なども利用され、それらにも脆弱性はあります。ITインフラ全体でセキュリティの脆弱性を管理するには、単一のツールでは限界があるため、Carbon Black Cloudのインベントリに含めることができない資産をどのように管理するか、製品領域が多岐に渡るVMwareだからこその連携ソリューションが増えてくることを個人的には期待しています。