一番有名な脆弱性データベースに、米国国立標準技術研究所(NIST)が運営するNVD(National Vulunerability Database)があります。
2023年だけで約3万件の脆弱性が新規に登録されており、このことからも脆弱性管理が重要であることは理解できるかと思います。
改めてですが、脆弱性とは何でしょうか?
ご存じかと思いますが、多くの脆弱性はソフトウェアによりもたらさせており、その実体はソフトウェアの非機能要件におけるバグであります。よって、多くの対策はソフトウェアエンジニアに委ねられています。
引用元:セキュリティスコアカード、NVD
Software is eating the world. Marc Andreessen in 2011と言う有名な言葉があります。
デジタル化社会では、この言葉に代表されるように多くの産業で、仕事や業務がソフトウェアに置き換わっており、この点からして信頼性の高いソフトウェアがデジタル化社会には欠かせません。
しかしながら、「2030日本デジタル改革」の中で、日本には喫緊の課題として、デジタル改革を通じた生産性・成長力の再生とソフトウェア産業の競争力強化が国家の課題と、指摘されています。
これは国内だけでなくグローバルに共有の課題として、ソフトウェア産業のセキュリティ対策が昨今指摘されています。以下の4つはその中でも代表的な課題となります。
ソフトウェア開発のライフサイクルの全段階におけるセキュリティ対策
以前にも増して既知の脆弱性に対するリスクは高まっており、特にOne Day脆弱性リスク
セキュリティ対策自体が、製品開発におけるオーバーヘッドと言われています。
開発部門からすると、生産性に係る重大な要素であり、これらの課題は多くの開発組織に共有の課題ではないかと思います。
Verizon社のDBIRレポートから、脆弱性対応についての一つの事実を紹介します。
企業のパッチ管理サイクルは、実行可能な目標として約30 ~ 60日。
重大な脆弱性のパッチ適用の目標は15日程度。
実際に攻撃が観測された重大な脆弱性としてKEVが知られていますが、この脆弱性ですら30日経っても85%が未修正だったこと、55日でようやく50%に到達したとをこのレポートでは紹介しています。
KEVに登録された脆弱性のスキャン(検査)は平均時間が5日間だったとか、それ以外の脆弱性は、68日と2ヶ月間放置状態だったとも報告しています。
求められるリードタイムがどうかと言えば、30日から60日と実体より短く、現実と大きなGAPが生まれています。
これは、脆弱性が悪用されている1つの事実だと思います。
現状の認識の最後として、マーケットや業界の動向を共有したいと思います。
国内は米国の影響を強く受けており、米国の動向は無視できないです。
その米国の取組みは、一言で言えば、ソフトウェアのセキュリティ強化を強く求めている、につきると思います。
よって、ソフトウェア開発におけるセキュリティ対策がますます重要になることは間違いないかと思います。
ソフトウェア開発における脆弱性対策は、大きくは2つの領域があります。
1つが開発時点での対策、もう1つがリリース後の対策になります
サイクル | Coding | Build |
---|---|---|
スキャン対象 | コード | 実行環境、パッケージ |
スキャン手法 | ソースコード解析 (SAST) |
ホスト/コンテナー/ ソフトウェアコンポジション 解析(SCA) |
脆弱性管理の課題は、多くの開発部門に共有する課題としてこれら5つがあります。
また、実際に開発部門の方から現状の取組みを伺ったところ、共通する課題として、これらの課題も感じられました。
ここから、脆弱性管理の課題を解決する当社の脆弱性管理サービスについて紹介されて頂きます。
当社、脆弱性管理サービスの特徴となります。
脆弱性管理業務のそのポイントは、
複数のガイドラインから共通する項目を洗い出し、標準化した5つの業務プロセスから構成されている点になります。
具体的には、
業務プロセス | 業務内容 |
---|---|
システムインベントリの把握 | 複数のガイドラインを参考に、脆弱性管理の目的に適したシステムインベントリを定義し、情報を定期的に更新する。(更新頻度の推奨は毎月) |
脆弱性・脅威監視 | 脆弱性管理ツールにて脆弱性と脅威を監視し、メール等で通知する。 |
導入の優先順位付け | 脆弱性管理ツールの重みづけ+組織内のシステムの重要度を組み合わせて、最適な優先順位付けを提示する。 このルールに基づく1次対応/チケット登録を行う。 |
管理者へのレポート | ダッシュボードで、リアルタイムに脆弱性と脅威情報を提供する。 脆弱性管理ツールの出力データと情報+脅威情報を加えた報告書を作成し報告する。また、定例会も開催する。 |
トレーニング | 開発者やシステム運用者に、脆弱性管理の必要性や管理のポイントをトレーニングする。 |
次に、脆弱性管理ツールのyamoryについてです。
以下に概要だけ紹介します。
個別での対応が必要だったITシステムの脆弱性対策とリスク管理をオールインワンで実現する、⽇本唯⼀のクラウドサービスです。
当社サービスの特徴の説明の最後になりますが、ソフトウェア製品を開発し提供する組織は、大なり小なりPSIRT機能が必要になります。
6つの領域の半分は脆弱性管理に関する領域であり、脆弱性管理がいかに重要であるかが理解頂けるかと思います。
脆弱性管理に取り組むにあたりそのポイントをまとめて終わりにしたいと思います。
1つ目が、脆弱性はデジタル社会において重大なリスクとなっている。
2つ目が、ソフトウェア開発プロセスの中で、脆弱性対応を別プロセスにせず、開発プロセスに組み込むことが重要である。(品質管理と同様)
3つ目が、サイクルタイムを意識して、まずは小さく始め、結果を確認して広げていく。
最後に、これが成功するうえでもっと重要なポイントになると思っています。
4つ目は、チーム内での標準化と分業化に取り組むこと。
これが出来れば、開発チームはより生産的になれるものと思います。