Image Assurance
CloudGuardImage Assuranceは、ライフサイクルの各段階でKubernetesイメージを分析し、それらがクリーンであることを確認します。
Image Assuranceエージェントは、すべてのイメージのクラスタとレジストリを継続的にチェックします。エージェントは、不明なイメージを特定すると、イメージをスキャンして分析し、脆弱性、エクスプロイト、マルウェア、ウイルス、トロイの木馬、認証情報の漏洩、およびその他の悪意のある脅威を検出します。
アーキテクチャ
Image Assurance は次のリソースを使用します。
ImageScan Engine - ローカルマシン上のエージェントを分析およびスキャンする単一レプリカデプロイメント。検索を完了するために必要な情報をCloudGuardに送信します。
ImageScan Daemon - ローカル(すべてのノード上)またはリモートレジストリをスキャンするDaemonSet。
メモリ
ImageScanエンジンのデフォルトのメモリ制限は2500 MiBに設定されており、2 GiB未満の圧縮されていないサイズのイメージをスキャンできます。メモリ制限は、スキャンされる最大イメージのサイズと同じで、さらに500 MiB にする必要があります。大きなイメージをスキャンするには、オンボードまたはアップグレードプロセスでHelm フラグaddons.imageScan.maxImageSizeMb を使用して制限を調整します。たとえば、3000Mb までのイメージサイズが予想される場合は、次を実行します。
|
このコマンドは、エージェントが最大3000 MiB のイメージをスキャンするように設定し、ImageScan エンジンの制限を3500 MiB に増やします。
注 - CloudGuard は、設定された制限を超えるイメージをスキャンしません。デフォルトの制限サイズは2 GiB です。 |
CPU
ImageScan エンジンポッドは、イメージをスキャンするときに、1 つ以上のCPU を消費することがあります。定常状態では、ほとんどの場合、新しいイメージのみがスキャンされると、エンジンポッドは非常に低いCPU を消費します。デーモンエージェントとCloudGuardに定期的にイメージリストを送信する必要があります。
CPU のリクエストと制限の値を低くすると、スキャン時間が長くなります。
コンテナレジストリのスキャン
クラスタにデプロイされたImage Assurance エージェントは、表示される新しいイメージ、このクラスタ、および接続されたコンテナレジストリをスキャンできます。新しいコンテナレジストリをオンボードする場合は、Image Assurance が有効になっているクラスタに接続する必要があります。後で、エージェントがスキャンする追加のクラスタにレジストリを接続できます。
注 - レジストリスキャンには、CloudGuard ヘルムチャートバージョン2.11.1 に含まれるImage Assuranceエージェントバージョン2.10.0 が必要です。古いバージョンのHelm とエージェントを使用する場合は、クラスタにインストールされているHelm チャートをアップグレードする必要があります。ヘルムのアップグレードについては、 のアップグレードを参照してください。 |
イメージをスキャンするには、コンテナレジストリに少なくとも 1 つの Kubernetes クラスタが接続されている必要があります。レジストリが単一のクラスタに接続している場合は、接続を削除できません。
Assets > Environments に移動し、Image Assurance エージェントがコンテナレジストリをスキャンするKubernetes クラスタを選択します。
クラスタページの「Blades」タブで、「Image Assurance」セクションを開きます。
イメージスキャンエンジンセクションを展開し、レジストリを見つけます。
レジストリ行で、Unlink をクリックします。
確認メッセージが表示されたら、Save。CloudGuard は、コンテナレジストリが正常にリンク解除されたことを通知します。
クラスタがレジストリのスキャンを停止し、レジストリがクラスタのリストに表示されなくなります。
Image Assuranceの結果
CloudGuard は、割り当てられたポリシーに基づいて、Kubernetes イメージのImage Assurance結果を作成します。
Image Assurance を使用して新しいKubernetes クラスタのオンボードを完了するか、Kubernetes 環境でImage Assurance を有効にすると、CloudGuard はクラスタ環境のデフォルトポリシーとルールセットを自動的に追加して、Image Assurance の結果を発行します。追加のアクションは必要ありません。
アカウント内のすべてのクラスタの脆弱性の結果を確認できます。このためには、Workload Protection > Image Assurance Vulnerabilities に移動します。
CloudGuard は、イメージを初めてスキャンするときに結果を作成します。その後、CloudGuardポータルは数時間ごとに変更または新たに検出された脆弱性を確認します。
このページでは、フィルタと検索 ツールバーを使用して、フィルタリング元のパラメータを選択します。 Vulnerabilities テーブルを使用します。
次の定義済みフィルタを使用できます。
環境またはOU - 1 つ以上のクラスタ環境またはOUを選択します。
重大度- 使用可能なアラート重大度オブジェクトから選択します。
Ruleset - 使用可能なルールセットから選択します。
カテゴリの検索
Image Assurance では、以下のカテゴリに分類されるさまざまなタイプの結果を検出できます。
- CVE
- MaliciousURL
MaliciousIP - 詳細は、悪質なIP分類 を参照してください。
MaliciousFile - マルウェア
InsecureCode
InsecureContent - 認証情報の漏洩
ImageScan - イメージで検出された問題の数または問題の重大度が事前定義されたしきい値を超えていることを示します。
Package - パッケージライセンス、パッケージ情報、CVE
フィールドの検索
Image Assurance所見のフィールドは、 の他の所見フィールドと類似しています。
Kubernetes イメージに関連するフィールドは以下を参照してください。
Title - 所見カテゴリに従って所見が作成される特定のIDまたはタイプ
ImageScan の結果には、イメージの名前が付いたタイトルがあります。
共通の脆弱性と露出(CVE)所見は、CVE IDを持つタイトルを持つ
Description - 国の脆弱性データベース(NVD)に表示されるようなCVE記述などの問題記述
Environment - 検索結果を含むイメージを含むKubernetesクラスタ