「NIST SP800-190」に準拠するには? コンテナイメージの脆弱性管理

コンテナセキュリティを検討する上での非常に重要な要素として、コンテナイメージに含まれ得る脆弱性をいかに対処するか?といったポイントがあります。この点については、コンテナセキュリティのガイドラインとして米国NISTが発行する「NIST SP800-190」においても主なリスクへの推奨対策として「4.1.1 イメージの脆弱性」に、以下通り記述されています。

4.1.1 イメージの脆弱性
コンテナ技術に特化した脆弱性管理ツールおよびプロセスが必要となる。従来の脆弱性管理ツールは、ホストの耐久性やアプリの更新メカニズムや頻度について多くの仮定をしているが、それらはコンテナ化されたモデルとは根本的にずれている。これらのツールは、コンテナ内の脆弱性を検知できないことが多く、誤った安心感をもたらす。
組織は、より実用的で信頼性の高い結果を提供するために、パイプラインベースのビルドアプローチとコンテナおよびイメージのイミュータブルを設計に取り入れたツールを使用することが望ましい。効果的なツールとプロセスの主要な側面としては、以下のようなものがある。
1. ビルドプロセスの最初から、組織が使用しているレジストリ、ランタイムに至るまでの、イメージのライフサイクル全体の統合。
2. イメージのベースレイヤだけでなく、組織が使用しているアプリケーションフレームワークやカスタムソフトウェアなど、イメージのすべてのレイヤにおける脆弱性の可視性。可視性は、組織全体で一元化され、組織のビジネスプロセスに合わせた柔軟なレポーティング及びモニタリングビューを提供することが望ましい。
3. ポリシー主導の強制。組織はビルドとデプロイのプロセスの各段階において「品質ゲート」を作成し、組織の脆弱性ポリシーと構成ポリシーを満たすイメージのみが進行を許可されることを確実にすることが望ましい。例えば、組織は、ビルドプロセスにおいて、選択されたしきい値を超える共通脆弱性評価システム(CVSS)[18]の評価を持つ脆弱性を含むイメージの進行を防止するためのルールを設定できることが望ましい。

出典:NIST SP800-190  IPAによる日本語翻訳版より抜粋
https://www.ipa.go.jp/files/000085279.pdf

上記を実装するための具体策として、Prisma Cloudがコンテナイメージに含まれるオープンソースの脆弱性をどのように可視化しているか?について、Palo Alto Networks社のブログ記事を参考にしながらご紹介します。

脆弱性情報をどこから入手するか?

コンテナイメージ内の脆弱性を検出することにおいて、どのようなデータソースから信頼できる脆弱性情報を入手するか?は重要なポイントです。脆弱性情報の代表的なソースとして、NVD(National Vulnerability Database)がありますが、NVDだけに依存する問題点として、ブログ記事中では以下の点を挙げています。

  • Linuxディストリビューションが独自に修正した特定の脆弱性に関する、正しいバージョン範囲の情報を見逃してしまうことで、本来影響を受けない脆弱性に対するアラートを出してしまう可能性がある。
  • Linuxディストリビューション自身が公開している特定の脆弱性データを見逃すことがある。
  • ソフトウェアベンダーの中には、CVEの発行と並行、あるいはCVEを全く発行せずに、独自の専用ウェブページやフィードで脆弱性勧告を公開しているところもある。

そこで、Prisma Cloudでは複数の公式なデータソース(NVD,Linuxディストリビューション,様々なベンダからのセキュリティアドバイザリ情報)を組み合わせた最先端のメカニズムによって脆弱性情報をフィードしています。これによって、より信頼性の高い脆弱性アラートをお客様に提供できるようになっています。

CVE番号がリリースされていない脆弱性も独自にカバー

以下の図を見て頂くと、とても直感的で分かりやすいのですが、Prisma Cloudを利用すると、NVDやMITREではまだ報告されていないCVEに関する情報や、NVDやディストリビューションの脆弱性フィードにおいてメンテナがまだ分析中の脆弱性情報が提供されます。

多くの脆弱性は、CVEの割り当てがされる前に公に議論されたり、パッチが適用されているため、Palo Alto Network社が独自に「PRISMA ID」を付与しています。

このPRISMA IDの目的は、CVEを置き換えることではなく、脆弱性の公開からNVDへの追加までのギャップを埋めることにあり、お客様はより早期に該当する脆弱性のリスクを可視化できるようになっています。

画像:https://www.paloaltonetworks.com/blog/prisma-cloud/open-source-vulnerability-management/から引用

まとめ

コンテナイメージの脆弱性をシンプルに可視化できるツールは、無償のツールを含めて多数存在していますが、Prisma Cloudでは上記のように、より信頼性・リアルタイム性の高い脆弱性情報をお客様に届ける工夫がなされています。もちろん、コンテナイメージの脆弱性管理はPrisma Cloudが持つ幅広いコンテナセキュリティ機能のごく一部になります。コンテナセキュリティの実装にご関心のある方は、ぜひ弊社までお問合せください。

お問い合わせ・資料請求

株式会社マクニカ DevOps 担当

月~金 8:45~17:30