12.3. イメージのスキャン
RHACS バージョン 4.4 は、StackRox Scanner と Scanner V4 の 2 つのスキャナーを提供します。どちらのスキャナーも、ネットワークに接続されたセキュアクラスター内のイメージを検査できます。Operator を使用してデプロイされた Red Hat OpenShift 環境の場合、またはスキャン委譲が使用されている場合、セキュアクラスターのスキャンがデフォルトで有効になります。詳細は、「イメージスキャン委譲へのアクセス」を参照してください。
Scanner V4 が有効になっている場合でも、現時点では、Red Hat OpenShift、Kubernetes、Istio などの RHCOS ノードとプラットフォームの脆弱性のスキャンを提供するには、StackRox Scanner を引き続き有効にする必要があります。この機能は、今後のリリースの Scanner V4 でサポートされる予定です。StackRox Scanner を無効にしないでください。
StackRox Scanner を使用する場合、RHACS は次のアクションを実行します。
- Central がイメージスキャンの要求を StackRox Scanner に送信します。
- StackRox Scanner は、この要求を受信すると、関連するレジストリーからイメージレイヤーを取得し、イメージをチェックして、各レイヤーにインストールされているパッケージを特定します。次に、特定されたパッケージとプログラミング言語固有の依存関係を脆弱性リストと比較し、情報を Central に送り返します。
StackRox Scanner は、次の領域の脆弱性を特定します。
- ベースイメージのオペレーティングシステム
- パッケージマネージャーによりインストールされるパッケージ
- プログラミング言語固有の依存関係
- プログラミングランタイムとフレームワーク
Scanner V4 を使用する場合、RHACS は次のアクションを実行します。
- Central が、特定のイメージをダウンロードしてインデックス作成 (分析) するように Scanner V4 Indexer に要求します。
- Scanner V4 Indexer は、レジストリーからイメージのメタデータを取得してイメージのレイヤーを確認し、以前にインデックス作成されていない各レイヤーをダウンロードします。
- Scanner V4 Indexer は、インデックス作成プロセスを支援するマッピングファイルを Central に要求します。Scanner V4 Indexer はインデックスレポートを作成します。
- Central は、特定のイメージを既知の脆弱性と照合するように Scanner V4 Matcher に要求します。このプロセスにより、最終的なスキャン結果、つまり脆弱性レポートが生成されます。Scanner V4 Matcher は、Central から最新の脆弱性を要求します。
- Scanner V4 Matcher は、イメージのインデックス作成の結果、つまりインデックスレポートを Scanner V4 Indexer に要求します。次に、レポートを使用して関連する脆弱性を特定します。この対話は、イメージのインデックスが Central クラスターで作成された場合にのみ発生します。この対話は、セキュアなクラスターでインデックス作成されたイメージの脆弱性を Scanner V4 が照合する場合には発生しません。
- Indexer は、イメージレイヤーのダウンロードとインデックス作成が 1 回だけ行われるように、インデックス作成の結果に関連するデータを Scanner V4 DB に保存します。これにより、不必要なネットワークトラフィックやその他のリソースの使用が防止されます。
- セキュアなクラスターのスキャンが有効になっている場合、Sensor は Scanner V4 にイメージのインデックス作成を要求します。Scanner V4 Indexer は、Central が同じ namespace に存在しない限り、インデックス作成プロセスを支援するマッピングファイルを Sensor に要求します。その場合は、代わりに Central と通信します。
12.3.1. Scanner の一般的な警告メッセージの理解と対処 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Advanced Cluster Security for Kubernetes (RHACS) でイメージをスキャンすると、CVE DATA MAY BE INACCURATE という警告メッセージが表示される場合があります。イメージ内のオペレーティングシステムまたはその他のパッケージに関する完全な情報を取得できない場合、Scanner はこのメッセージを表示します。
以下の表は、一般的な Scanner の警告メッセージを示しています。
| Message | 説明 |
|---|---|
|
| Scanner がイメージのベースオペレーティングシステムを正式にサポートしていないことを示します。したがって、オペレーティングシステムレベルのパッケージの CVE データを取得できません。 |
|
| イメージのベースオペレーティングシステムのサポートが終了したことを示します。これは、脆弱性データが古くなっていることを意味します。たとえば、Debian 8 および 9 です。 イメージ内のコンポーネントを識別するために必要なファイルの詳細は、イメージの脆弱性の検査 を参照してください。 |
|
| Scanner がイメージをスキャンしたが、イメージに使用されたベースオペレーティングシステムを特定できなかったことを示します。 |
|
|
ネットワーク上でターゲットレジストリーに到達できないことを示します。原因は、ファイアウォールが 根本原因を分析するには、プライベートレジストリーまたはリポジトリー用に特別なレジストリー統合を作成し、RHACS Central の Pod ログを取得します。これを行う方法は、イメージレジストリーとの統合 を参照してください。 |
|
| Scanner がイメージをスキャンしたが、イメージが古く、Red Hat Scanner Certification の範囲内にないことを示します。詳細は、Partner Guide for Red Hat Vulnerability Scanner Certification を参照してください。 重要 Red Hat コンテナーイメージ を使用している場合は、2020 年 6 月以降のベースイメージの使用を検討してください。 |
12.3.2. サポート対象オペレーティングシステム リンクのコピーリンクがクリップボードにコピーされました!
このセクションにリストされているサポート対象のプラットフォームは、Scanner で脆弱性が特定されるディストリビューションで、Red Hat Advanced Cluster Security for Kubernetes をインストールできるサポート対象のプラットフォームとは異なります。
Scanner は、以下の Linux ディストリビューションを含むイメージの脆弱性を特定します。使用される脆弱性データベースの詳細は、「RHACS アーキテクチャー」の「脆弱性ソース」を参照してください。
| ディストリビューション | バージョン |
|---|---|
|
| |
|
| |
| CentOS |
|
|
以下の脆弱性ソースはベンダーによって更新されていません: | |
|
| |
|
| |
|
| |
|
| |
|
次の脆弱性ソースは、ベンダーにより更新されていません: |
- StackRox Scanner でのみサポートされます。
- Scanner V4 でのみサポートされます。
- 2020 年 6 月より古いイメージは、Scanner V4 ではサポートされていません。
Fedora は脆弱性データベースを管理していないため、Scanner は Fedora オペレーティングシステムをサポートしていません。ただし、Scanner は Fedora ベースのイメージで言語固有の脆弱性を検出します。
12.3.3. サポート対象のパッケージ形式 リンクのコピーリンクがクリップボードにコピーされました!
スキャナーは、以下のパッケージ形式を使用するイメージの脆弱性の有無を確認できます。
| パッケージ形式 | パッケージマネージャー |
|---|---|
| apk | apk |
| dpkg | apt、dpkg |
| rpm | dnf、microdnf、rpm、yum |
12.3.4. サポート対象のプログラミング言語 リンクのコピーリンクがクリップボードにコピーされました!
Scanner は、次のプログラミング言語の依存関係の脆弱性をチェックできます。
| プログラミング言語 | パッケージ形式 |
|---|---|
| Go[1] | バイナリー: バイナリーのビルドに使用された標準ライブラリーのバージョンが分析されます。バイナリーがモジュールサポート (go.mod) を使用してビルドされている場合、依存関係も分析されます。 |
| Java | JAR、WAR、EAR、JPI、HPI |
| JavaScript | package.json |
| Python | egg、wheel |
| Ruby | gem |
- Scanner V4 でのみサポートされます。
12.3.5. サポート対象のレイヤー圧縮形式 リンクのコピーリンクがクリップボードにコピーされました!
コンテナーイメージレイヤーは、圧縮または非圧縮の .tar ファイルアーカイブです。StackRox Scanner と Scanner V4 は、次の表に示すさまざまな形式をサポートしています。
| 形式 | StackRox Scanner のサポート | Scanner V4 のサポート |
|---|---|---|
| 非圧縮 | はい | はい |
| bzip2 | はい | はい |
| gzip | はい | はい |
| xz | はい | いいえ |
| zstd | いいえ | はい |
12.3.6. サポート対象のランタイムおよびフレームワーク リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Advanced Cluster Security for Kubernetes 3.0.50 (Scanner バージョン 2.5.0) 以降の StackRox Scanner は、次の開発者プラットフォームの脆弱性を特定します。
- .NET Core
- ASP.NET Core
これらは Scanner V4 ではサポートされていません。
12.3.7. ソースレジストリーからミラーレジストリーへのイメージプルのリダイレクト リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Advanced Cluster Security for Kubernetes (RHACS) は、次のいずれかの OpenShift Container Platform カスタムリソース (CR) を使用して設定したレジストリーミラーからのイメージのスキャンをサポートします。
-
ImageContentSourcePolicy(ICSP) -
ImageDigestMirrorSet(IDMS) -
ImageTagMirrorSet(ITMS)
イメージレジストリーのリポジトリーミラーリングの設定方法の詳細は、「イメージレジストリーのリポジトリーミラーリングの設定」を参照してください。
レジストリーミラーからイメージをスキャンするには、委譲されたイメージスキャンを設定する必要があります。
委譲されたイメージスキャンの設定方法の詳細は、「委譲されたイメージスキャンへのアクセス」を参照してください。