第14章 脆弱性の管理
14.1. 脆弱性管理の概要
環境内のセキュリティーの脆弱性が攻撃者によって悪用されると、サービス拒否攻撃の実行、リモートコードの実行、機密データへの不正アクセスなどの不正なアクションが実行される可能性があります。したがって、脆弱性の管理は、Kubernetes セキュリティープログラムを成功させるための基本的なステップです。
14.1.1. 脆弱性管理プロセス
脆弱性管理は、脆弱性を特定して修復する継続的なプロセスです。Red Hat Advanced Cluster Security for Kubernetes は、脆弱性管理プロセスを容易にするのに役立ちます。
脆弱性管理プログラムには、多くの場合、以下の重要なタスクが含まれます。
- アセット評価の実行
- 脆弱性の優先順位付け
- 露出の評価
- 措置の実行
- 継続的なアセットの再評価
Red Hat Advanced Cluster Security for Kubernetes は、組織が OpenShift Container Platform および Kubernetes クラスターで継続的な評価を実行するのに役立ちます。これにより、組織は、環境内の脆弱性に優先順位を付けて対処するために必要なコンテキスト情報をより効果的に提供できます。
14.1.1.1. アセット評価の実行
組織のアセットの評価を実行するには、以下のアクションが含まれます。
- 環境内のアセットの特定
- これらのアセットをスキャンして、既知の脆弱性を特定する
- 環境内の脆弱性について、影響を受ける利害関係者に報告する
Red Hat Advanced Cluster Security for Kubernetes を Kubernetes または OpenShift Container Platform クラスターにインストールすると、最初にクラスター内で実行されているアセットが集約され、それらのアセットを識別できるようになります。RHACS を使用すると、OpenShift Container Platform および Kubernetes クラスターで継続的な評価を実行できます。RHACS は、環境内の脆弱性に優先順位を付けて、より効果的に対処するためのコンテキスト情報を提供します。
RHACS を使用した脆弱性管理プロセスで監視する必要がある重要なアセットには、次のものがあります。
- コンポーネント: コンポーネントは、イメージの一部として使用したり、ノードで実行したりできるソフトウェアパッケージです。コンポーネントは、脆弱性が存在する最低レベルです。したがって、特定の方法でソフトウェアコンポーネントをアップグレード、変更、または削除して脆弱性を修正する必要があります。
- イメージ: コードの実行可能な部分を実行するための環境を作成するソフトウェアコンポーネントおよびコードのコレクション。イメージでは、コンポーネントをアップグレードして脆弱性を修正できます。
- ノード: OpenShift または Kubernetes および OpenShift Container Platform または Kubernetes サービスを設定するコンポーネントを使用してアプリケーションを管理し、実行するために使用されるサーバー。
RHACS はこれらのアセットを次の構造にグループ化します。
- Deployment: 1 つまたは複数のイメージに基づくコンテナーで Pod を実行できる Kubernetes のアプリケーションの定義。
- namespace: アプリケーションをサポートおよび分離するデプロイメントなどのリソースのグループ。
- クラスター: OpenShift または Kubernetes を使用してアプリケーションを実行するために使用されるノードのグループ。
RHACS は、アセットをスキャンして既知の脆弱性を検出し、Common Vulnerabilities and Exposures (CVE) データを使用して既知の脆弱性の影響を評価します。
14.1.1.2. 脆弱性の優先順位付け
次の質問に答えて、アクションと調査のために環境の脆弱性に優先順位を付けます。
- 影響を受けるアセットは、組織にとってどの程度重要ですか ?
- 脆弱性の重大度がどの程度の場合に、調査の必要がありますか ?
- 脆弱性は、影響を受けるソフトウェアコンポーネントのパッチで修正できますか ?
- 脆弱性の存在は、組織のセキュリティーポリシーのいずれかに違反していますか ?
これらの質問への回答は、セキュリティーおよび開発チームが脆弱性の露出を測定する必要があるかどうかを判断します。
Red Hat Advanced Cluster Security for Kubernetes では、アプリケーションやコンポーネントの脆弱性を優先順位付けする手段を提供します。
14.1.1.3. 露出の評価
脆弱性の露出を評価するには、以下の質問に回答してください。
- アプリケーションは脆弱性の影響を受けますか ?
- 脆弱性は他の要因によって軽減されていますか ?
- この脆弱性の悪用につながる可能性のある既知の脅威はありますか ?
- 脆弱性のあるソフトウェアパッケージを使用していますか ?
- 特定の脆弱性およびソフトウェアパッケージに時間を割くことに価値はありますか ?
評価に基づいて、以下のアクションを実行します。
- 脆弱性が公開されていないか、脆弱性がお使いの環境に適用されないと判断した場合は、脆弱性を誤検出としてマークすることを検討してください。
- リスクにさらされた場合は、そのリスクの修正、軽減、または受け入れることを希望するかを検討してください。
- 攻撃対象領域を減らすためにソフトウェアパッケージを削除または変更するかどうかを検討してください。
14.1.1.4. 措置の実行
脆弱性に対するアクションを実行することを決定したら、次のいずれかのアクションを実行できます。
- 脆弱性を修正する
- リスクを軽減して受け入れる
- リスクを受け入れる
- 脆弱性を誤検出としてマークする
以下のアクションのいずれかを実行すると、脆弱性を修復できます。
- ソフトウェアパッケージを削除する
- ソフトウェアパッケージを脆弱性のないバージョンに更新する