第12章 脆弱性の管理
12.1. 脆弱性管理
環境内のセキュリティーの脆弱性は、サービス拒否、リモートコード実行、機密データへの不正アクセスなどの不正なアクションを実行するために攻撃者によって悪用される可能性があります。したがって、脆弱性の管理は、Kubernetes セキュリティープログラムを成功させるための基本的なステップです。
12.1.1. 脆弱性管理プロセス
脆弱性管理は、脆弱性を特定して修復する継続的なプロセスです。Red Hat Advanced Cluster Security for Kubernetes は、脆弱性管理プロセスを容易にするのに役立ちます。
脆弱性管理プログラムには、多くの場合、以下の重要なタスクが含まれます。
- アセット評価の実行
- 脆弱性の優先順位付け
- 露出の評価
- 措置の実行
- 継続的なアセットの再評価
Red Hat Advanced Cluster Security for Kubernetes は、組織が OpenShift Container Platform および Kubernetes クラスターで継続的な評価を実行するのに役立ちます。これにより、組織は、環境内の脆弱性に優先順位を付けて対処するために必要なコンテキスト情報をより効果的に提供できます。
12.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 サービスを設定するコンポーネントを使用してアプリケーションを管理し、実行するために使用されるサーバー。
Red Hat Advanced Cluster Security for Kubernetes は、これらのアセットを以下の構造にグループ化します。
- デプロイ:1 つまたは複数のイメージに基づくコンテナーで Pod を実行できる Kubernetes のアプリケーションの定義。
- 名前空間: アプリケーションをサポートおよび分離するデプロイメントなどのリソースのグループ。
- クラスター: OpenShift または Kubernetes を使用してアプリケーションを実行するために使用されるノードのグループ。
Red Hat Advanced Cluster Security for Kubernetes は、既知の脆弱性についてアセットをスキャンし、CVE (Common Vulnerabilities and Exposures) データを使用して既知の脆弱性の影響を評価します。
12.1.1.1.1. アプリケーション脆弱性の表示
Red Hat Advanced Cluster Security for Kubernetes でアプリケーションの脆弱性を表示できます。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 -
Dashboard ビューヘッダーで、Application & Infrastructure
Namespaces または Deployments を選択します。 - リストから、確認する Namespace または Deployment を検索し、選択します。
- アプリケーションの詳細を取得するには、右側の Related entities からエンティティーを選択します。
12.1.1.1.2. イメージ脆弱性の表示
Red Hat Advanced Cluster Security for Kubernetes でイメージの脆弱性を表示できます。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 - Dashboard ビューヘッダーで、Images を選択します。
イメージのリストから、調査するイメージを選択します。次のいずれかの手順を実行して、リストをフィルタリングすることもできます。
- 検索バーに Image と入力して、Image 属性を選択します。
- 検索バーにイメージ名を入力します。
- イメージの詳細ビューで、リストされている CVE を確認し、影響を受けるコンポーネントに対処するためのアクションを優先的に実行します。
- 右側の Related entities から Components を選択し、選択したイメージの影響を受けるすべてのコンポーネントに関する詳細情報を取得します。または、特定の CVE の影響を受けるコンポーネントを見つけるには、Image findings セクションの Affected components 列から Components を選択します。
関連情報
12.1.1.2. Vulnerability Management (2.0) でのワークロード CVE の表示
RHACS のイメージおよびデプロイメント全体の脆弱性 (CVE) の包括的なリストを表示できます。検索フィルターバーを使用して、特定の CVE、イメージ、デプロイメント、namespaces、またはクラスターを選択できます。
Vulnerability Management 2.0 はテクノロジープレビューのみの機能です。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
手順
-
RHACS ポータルで、Vulnerability Management 2.0
Workload CVEs に移動します。 ドロップダウンリストから、使用する検索基準を選択します。リストからクラスターなどの項目タイプを選択し、項目の特定の名前を選択できます。リストから別の項目を選択し、新しい項目の特定の名前を選択することで、フィルターに項目を追加できます。たとえば、特定のイメージと特定のクラスターを選択して、結果をそれらの選択に限定できます。次の項目でフィルタリングできます。
- CVE
- Image
- Deployment
- Namespace
- Cluster
- オプション: CVE 重大度 リストを使用して、表示する CVE の重大度を選択します。
関連するボタンをクリックすると、システム内の脆弱性、イメージ、またはデプロイメントのリストが表示されます。
注記Filtered view アイコンは、表示された結果が選択した条件に基づいてフィルターされたことを示します。Clear filters をクリックしてすべてのフィルターを削除することも、個々のフィルターをクリックして削除することもできます。
結果のリストで、CVE、イメージ名、またはデプロイメント名をクリックすると、項目に関する詳細情報が表示されます。たとえば、項目タイプに応じて、次の情報を表示できます。
- CVE が修正可能かどうか
- イメージがアクティブかどうか
- CVE を含むイメージの Dockerfile 行
- Red Hat の CVE およびその他の CVE データベースに関する情報への外部リンク
検索例
次の図は、本番というクラスターで、そのクラスター内の重大度および重要度の CVE を表示するための検索条件の例を示しています。

12.1.1.2.1. インフラストラクチャーの脆弱性の表示
Red Hat Advanced Cluster Security for Kubernetes を使用して、ノードで脆弱性を表示できます。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 -
Dashboard ビューヘッダーで、Application & Infrastructure
Cluster の順に選択します。 - クラスターのリストから、調査するクラスターを選択します。
- クラスターの脆弱性を確認し、クラスター上の影響を受けるノードに対してアクションを実行することを優先します。
12.1.1.2.2. ノードの脆弱性の表示
Red Hat Advanced Cluster Security for Kubernetes を使用して、特定ノードで脆弱性を表示できます。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 - Dashboard ビューヘッダーで、Nodes を選択します。
- ノードのリストから、調査するノードを選択します。
- 選択したノードの脆弱性を確認し、アクションの実行に優先順位を付けます。
- 影響を受けるコンポーネントに関する詳細情報を取得するには、右側の Related entities から Components を選択します。
12.1.1.3. 脆弱性の優先順位付け
次の質問に答えて、アクションと調査のために環境の脆弱性に優先順位を付けます。
- 影響を受けるアセットは、組織にとってどの程度重要ですか ?
- 脆弱性の重大度がどの程度の場合に、調査の必要がありますか ?
- 脆弱性は、影響を受けるソフトウェアコンポーネントのパッチで修正できますか ?
- 脆弱性の存在は、組織のセキュリティーポリシーのいずれかに違反していますか ?
これらの質問への回答は、セキュリティーおよび開発チームが脆弱性の露出を測定する必要があるかどうかを判断します。
Red Hat Advanced Cluster Security for Kubernetes では、アプリケーションやコンポーネントの脆弱性を優先順位付けする手段を提供します。
12.1.1.4. 露出の評価
脆弱性の露出を評価するには、以下の質問に回答してください。
- アプリケーションは脆弱性の影響を受けますか ?
- 脆弱性は他の要因によって軽減されていますか ?
- この脆弱性の悪用につながる可能性のある既知の脅威はありますか ?
- 脆弱性のあるソフトウェアパッケージを使用していますか ?
- 特定の脆弱性およびソフトウェアパッケージに時間を割くことに価値はありますか ?
評価に基づいて、以下のアクションを実行します。
- 脆弱性が公開されていないか、脆弱性がお使いの環境に適用されないと判断した場合は、脆弱性を誤検出としてマークすることを検討してください。
- リスクにさらされた場合は、そのリスクの修正、軽減、または受け入れることを希望するかを検討してください。
- 攻撃対象領域を減らすためにソフトウェアパッケージを削除または変更するかどうかを検討してください。
12.1.1.5. 措置の実行
脆弱性に対するアクションを実行することを決定したら、次のいずれかのアクションを実行できます。
- 脆弱性を修正する
- リスクを軽減して受け入れる
- リスクを受け入れる
- 脆弱性を誤検出としてマークする
以下のアクションのいずれかを実行すると、脆弱性を修復できます。
- ソフトウェアパッケージを削除する
- ソフトウェアパッケージを脆弱性のないバージョンに更新する
12.1.1.5.1. 新しいコンポーネントバージョンの検索
以下の手順では、アップグレード先のコンポーネントのバージョンを見つけます。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 - Dashboard ビューヘッダーで、Images を選択します。
- イメージのリストから、すでに評価したイメージを選択します。
- Image findings セクションで CVE を選択します。
- アクションを実行する CVE の影響を受けるコンポーネントを選択します。
- CVE が修正されているコンポーネントのバージョンを確認し、イメージを更新します。
12.1.1.6. リスクの受け入れ
このセクションの手順に従って、Red Hat Advanced Cluster Security for Kubernetes のリスクを受け入れます。
前提条件
-
VulnerabilityManagementRequests
リソースの書き込み
パーミッションが必要です。
軽減策の有無に関わらずリスクを受け入れるには、以下を実行します。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 - Dashboard ビューヘッダーで、Images を選択します。
- イメージのリストから、すでに評価したイメージを選択します。
- アクションを実行する CVE をリスト表示する行を見つけます。
-
特定した CVE の右側にある
をクリックし、Defer CVE をクリックします。
- CVE を延期する日時を選択します。
- 選択したイメージタグの CVE またはこのイメージのすべてのタグを延期するかどうかを選択します。
- 延期の理由を入力します。
- Request approval をクリックします。CVE の右側にある青い情報アイコンを選択し、承認リンクをコピーして組織の延期承認者と共有します。
12.1.1.6.1. 脆弱性を誤検出としてのマーク付け
以下の手順では、脆弱性を誤検出としてマークします。
前提条件
-
VulnerabilityManagementRequests
リソースの書き込み
パーミッションが必要です。
手順
-
RHACS ポータルで、Vulnerability Management
Dashboard に移動します。 - Dashboard ビューヘッダーで、Images を選択します。
- イメージのリストから、すでに評価したイメージを選択します。
- アクションを実行する CVE をリスト表示する行を見つけます。
-
特定した CVE の右側にある
をクリックし、Defer CVE をクリックします。
- CVE を延期する日時を選択します。
- 選択したイメージタグの CVE またはこのイメージのすべてのタグを延期するかどうかを選択します。
- 延期の理由を入力します。
- Request approval をクリックします。
- CVE の右側にある青い情報アイコンを選択し、承認リンクをコピーして組織の延期承認者と共有します。
12.1.1.6.2. 誤検出または延期された CVE のレビュー
以下の手順に従って、誤検出または遅延した CVE を確認します。
前提条件
-
VulnerabilityManagementApprovals
リソースの書き込み
パーミッションが必要です。
誤検出または延期された CVE を確認できます。
手順
- ブラウザーまたは RHACS ポータルで承認リンクを開きます。
-
Vulnerability Management
Risk Acceptance に移動して、CVE を検索します。 - 脆弱性の範囲およびアクションを確認し、承認するかどうかを決定します。
-
CVE の右端にある
をクリックし、承認のリクエストを承認または拒否します。
12.1.1.7. チームへの脆弱性の報告
組織は脆弱性を絶えず再評価して報告する必要があるため、脆弱性管理プロセスを支援するために主要な利害関係者へのコミュニケーションをスケジュールすることが役立つと考える組織もあります。
Red Hat Advanced Cluster Security for Kubernetes を使用して、このように繰り返し発生するメールによるコミュニケーションスケジュールを作成できます。これらのコミュニケーションは、主要な利害関係者が必要とする最も関連性の高い情報に限定する必要があります。
これらの連絡を送信するには、次の質問を考慮する必要があります。
- 利害関係者とコミュニケーションをとるときに最も影響を与えるスケジュールは何ですか ?
- 誰が対象者となりますか ?
- レポートで特定の重大度の脆弱性のみを送信する必要がありますか ?
- レポートで修正可能な脆弱性のみを送信する必要がありますか ?
12.1.1.7.1. 脆弱性管理レポートのスケジュール
次の手順では、スケジュールされた脆弱性レポートを作成します。
手順
-
RHACS ポータルで、Vulnerability Management
Reporting に移動します。 - レポートの作成 をクリックします。
- Report name フィールドにレポートの名前を入力します。
- Repeat report… ドロップダウンリストから、レポートの毎週または毎月の頻度を選択します。
- On… ドロップダウンリストから、レポートの曜日を選択します。
- オプション: レポートを説明するテキストを Description フィールドに入力します。
- CVE fixability type フィールドで、レポートに含める Common Vulnerabilities and Exposure (CVE) の修正可能性タイプを選択します。
- Show vulnerabilities ドロップダウンリストで、すべての脆弱性を表示するか、前回の成功したレポート以降に発見された脆弱性のみを表示するかを選択します。
- CVE severities ドロップダウンリストで、レポートに含める CVE の重大度を選択します。
Configure report scope フィールドで、既存のコレクションを選択するか、Create collection をクリックして、新しいコレクションを作成します。フィールドにテキストを入力すると、そのテキスト文字列に一致するコレクションが検索されます。コレクションの詳細については、「関連情報」セクションの「デプロイメントコレクションの作成」を参照してください。
注記RHACS リリース 3.74 では、レポートスコープ がコレクションに置き換えられました。既存のレポートスコープはコレクションに移行されました。詳細については、「関連情報」セクションの「コレクションへのアクセススコープの移行」を参照してください。
- レポートを電子メールで送信するには、既存の通知機能を選択するか、新しい電子メール通知機能を作成します。電子メール通知機能の作成の詳細については、「関連情報」セクションの「電子メールプラグインの設定」を参照してください。
- Distribution list フィールドにレポート受信者の電子メールアドレスを入力します。
- Create を選択して、レポートを作成およびスケジュールします。
12.1.1.7.2. 脆弱性レポートの送信
以下の手順では、脆弱性レポートを送信します。
手順
-
RHACS ポータルで、Vulnerability Management
Reporting に移動します。 - レポートのリストから、レポートを選択します。
-
レポートの右側にある
を選択し、Run report now をクリックします。
12.1.1.7.3. 脆弱性レポートの編集
以下の手順では、脆弱性レポートを編集します。
手順
-
RHACS ポータルで、Vulnerability Management
Reporting に移動します。 - レポートのリストから、レポートを選択します。
-
レポートの右側にある
を選択し、Edit をクリックします。
- 必要に応じてレポートを変更します。
- Save をクリックします。
12.1.1.7.4. 脆弱性レポートの削除
以下の手順では、脆弱性レポートを削除します。
手順
-
RHACS ポータルで、Vulnerability Management
Reporting に移動します。 - レポートのリストから、レポートを選択します。
-
レポートの右側にある
を選択し、レポートの 削除 をクリックします。