脆弱性スキャン・サービスのトラブルシューティング
トラブルシューティング情報を使用して、Oracle Cloud Infrastructure Vulnerability Scanning Serviceの操作中に発生する可能性のある一般的な問題を特定して対処します。
スキャン・レシピまたはスキャン・ターゲットを作成できません
スキャン・レシピを作成したり、コンピュート(ホスト)またはイメージ・スキャンのターゲットをスキャンできない問題を修正します。
脆弱性スキャン・レシピまたは脆弱性スキャン・ターゲットを作成するには、管理者が記述したポリシー(IAM)で、コンソール、またはSDK、CLIまたはその他のツールを使用したREST APIのどちらを使用しているかにかかわらず、必要なタイプのアクセス権が付与されている必要があります。
- 次のドキュメントを使用して、コンピュートおよびイメージ・スキャン・レシピおよびターゲットの作成に必要なポリシーがあることを確認します。
- 欠落している必須ポリシーを追加します。
脆弱性スキャンの結果がありません
任意のタイプの脆弱性スキャン・レポートの表示を妨げる一般的な問題を解決します。
ターゲットは24時間以内に作成されました
ターゲットの作成後、脆弱性スキャン・サービスは、指定されたターゲット・リソースをすぐにスキャンするわけではありません。
レシピに関連付けられたターゲットを作成した後、脆弱性スキャン・サービスがターゲット・リソースの最初のスキャンを実行するまでに、最大で24時間かかる場合があります。コンピュート・ターゲットでは、この遅延は、日次スケジュールまたは週次スケジュールでレシピを構成した場合に発生します。
IAMポリシーが欠落している
いずれかのタイプの脆弱性スキャン・レポートを表示するには、管理者によって書き込まれたポリシー(IAM)で、コンソール、またはSDK、CLIまたはその他のツールを使用したREST APIの有無にかかわらず、必要なタイプのアクセス権が付与されている必要があります。
たとえば、グループSecurityAuditors
のユーザーが、コンパートメントSalesApps
内のすべての脆弱性スキャン・リソースを表示できるようにするには:
Allow group SecurityAuditors to read vss-family in compartment SalesApps
スキャン結果を表示するために必要なポリシーがあることを確認します。脆弱性スキャンIAMポリシーを参照してください。
間違ったコンパートメントが指定されている
コンソール内で、表示するターゲットの脆弱性スキャンの結果を含むコンパートメントを必ず選択してください。
脆弱性スキャン・サービスは、コンピュート・インスタンスの結果を、インスタンスの脆弱性スキャン・ターゲットと同じコンパートメントに保存します。
次の例を考えます
- コンピュート・インスタンス
MyInstance
は、CompartmentA
にあります。 MyInstance
は、Target1
に指定されています。Target1
は、CompartmentB
にあります。MyInstance
に関連するすべてのレポートは、CompartmentB
にあります。
脆弱性スキャン・サービスは、イメージ・リポジトリの結果を、リポジトリの脆弱性スキャン・ターゲットと同じコンパートメントに保存します。
次の例を考えます
- コンテナ・レジストリのリポジトリ
MyRepo
は、CompartmentA
にあります。 MyRepo
は、Target1
に指定されています。Target1
は、CompartmentB
にあります。MyRepo
に関連するすべてのレポートは、CompartmentB
にあります。
レシピのすべての機能が無効になっている
脆弱性スキャン・サービスでレシピを作成したが、レシピのすべてのスキャン・オプションを無効にした場合、脆弱性スキャン・サービスでは、このレシピに割り当てられているどのターゲットもスキャンされません。
コンソールで、レシピに移動し、必要なスキャン・オプションを有効にします。参照:
ホスト・スキャンがない
コンピュート・ターゲットのホスト・スキャンの結果の表示を妨げる問題を解決します。
問題がここにリストされていない場合は、脆弱性スキャン結果なしで他の一般的なスキャン問題を参照してください。
エージェントベースのスキャンが有効になっていない
ホスト・スキャンを作成するために、脆弱性スキャン・サービスでは、ターゲットのコンピュート・インスタンスで実行されるOracle Cloud Agentが使用されます。デフォルトでは、エージェント・ベースのスキャンがレシピで有効になります。レシピでこのオプションを無効にした場合、脆弱性スキャン・サービスでは、レシピに関連付けられたターゲットのホスト・スキャンは作成されません。
エージェントでスキャン・プラグインが無効になっている
Oracle Cloud Agentプロセスは、コンピュート・インスタンスで実行されているプラグインを管理します。脆弱性スキャン・プラグインは、脆弱性の検出およびCISベンチマークのテストに使用されます。デフォルトでは、脆弱性スキャン・プラグインは、エージェントを実行しているすべてのインスタンスで有効になりますが、このプラグインは無効にできます。
ターゲット・コンピュート・インスタンスで脆弱性スキャン・プラグインを手動で無効にする場合は、有効にする必要があります。
エージェントをデプロイするためのIAMポリシーが欠落している
ターゲットのコンピュート・インスタンスがOracle Cloud Agentを実行していない場合、脆弱性スキャン・サービスはエージェントをインスタンスに自動的にデプロイします。ただし、管理者は、ターゲットのコンピュート・インスタンスを更新する権限を脆弱性スキャン・サービスに付与する必要があります。
インスタンスで最新のエージェントが実行されていない
ターゲットのコンピュート・インスタンスでOracle Cloud Agentバージョン1.11.0
が実行されている場合、最新バージョンに自動的に更新されない可能性があります。
インスタンスのOracle Cloud Agentを手動で更新します。参照:
パブリックIPアドレスのないインスタンスのサービス・ゲートウェイの欠落
コンピュート・インスタンスは、仮想クラウド・ネットワーク(VCN)およびサブネットに関連付けられます。ターゲット内のインスタンスがプライベート・サブネット上またはパブリックIPアドレスを持っていない場合、VCNには、サービス・ゲートウェイとそのサービス・ゲートウェイのルート・ルールが含まれている必要があります。Oracleサービスへのアクセス: サービス・ゲートウェイを参照してください。
VCNまたはサービス・ゲートウェイが正しく構成されていない場合、脆弱性スキャン・サービスは、プライベート・サブネット上のコンピュート・インスタンスと通信してホスト・スキャンを実行できません。
サービス・ゲートウェイは、オブジェクト・ストレージなどの単一サービスのみのトラフィックを許可するように構成できません。
パブリックIPアドレスのないインスタンスでトラフィック・フォワーディングが無効になっている
VNICにより、インスタンスはVCNに接続することができ、そのインスタンスがVCN内外のエンドポイントに接続する方法も決まります。各VNICは、VCNのサブネット内に存在します。ターゲット内のコンピュート・インスタンスがプライベート・サブネット上にある場合、またはパブリックIPアドレスがない場合は、インスタンスのVNICがトラフィックを転送できる必要があります。
VNICが正しく構成されていない場合、脆弱性スキャン・サービスは、プライベート・サブネット上のコンピュート・インスタンスと通信してホスト・スキャンを実行できません。
インスタンスのVNICを編集し、オプション「ソース/宛先チェックのスキップ」を選択します。既存のVNICの更新を参照してください。
コンテナ・イメージ・スキャンがない
コンテナ・イメージ・スキャンの結果を参照できない原因となっている問題を修正します。
問題がここにリストされていない場合は、脆弱性スキャン結果なしで他の一般的なスキャン問題を参照してください。
コンテナ・レジストリにアクセスするIAMポリシーがない
管理者は、脆弱性スキャン・サービスにコンテナ・レジストリからイメージをプル権限を付与する必要があります。
ポリシーでは、ターゲット・イメージ・リポジトリを含むコンパートメントを指定する必要があります。
スキャン結果をエクスポートできない
スキャン・レポートまたは脆弱性レポートをローカル・マシンにエクスポートできない問題を修正します。
IAMポリシーが欠落している
管理者は、スキャン・レポートおよび脆弱性レポートの読取り権限を付与しているが、エクスポート権限を付与していない可能性があります。
脆弱性スキャン・レポートをエクスポートするために必要なポリシーがあることを確認します。脆弱性スキャンIAMポリシーを参照してください。
たとえば、グループSecurityAuditors
のユーザーが、コンパートメントSalesApps
内のすべての脆弱性スキャン・リソースを表示して、結果をエクスポートできるようにするには:
Allow group SecurityAuditors to read vss-family in compartment SalesApps
Allow group SecurityAuditors to manage host-agent-scan-results in compartment SalesApps where request.operation = 'ExportHostAgentScanResultCsv'
Allow group SecurityAuditors to manage host-vulnerabilities in compartment SalesApps where request.operation = 'ExportHostVulnerabilityCsv'
エクスポート操作は、
vss-vulnerabilities
リソース・タイプではなく、host-vulnerabilities
リソース・タイプで使用できます。コンパートメントの削除に失敗した
脆弱性スキャン・ターゲットおよびレポートに使用したコンパートメントを削除できない原因となっている問題を解決します。
コンパートメントにレポートが存在する
コンパートメントを削除するには、すべてのスキャン・レポートも含めて、そのコンパートメントが空である必要があります。コンソールを使用してレポートは削除できません。CLIまたはAPIを使用します。
レポート・タイプごとに異なるCLIコマンドおよびAPI操作があります。例:
コンパートメントからすべてのタイプのレポートをすばやく削除するには、クラウド・シェルを使用してスクリプトを実行できます。
レポートされたCVEがホストですでに修正されている(誤検出)
すでに修正されている脆弱性がホスト・スキャンによってレポートされる問題を修正します。
Oracleでは、一般的な脆弱性(CVE)番号を使用して、クリティカル・パッチ更新やセキュリティ・アラート・アドバイザなど、オペレーティング・システムおよびその他のソフトウェアのセキュリティ脆弱性を識別します。CVE番号は、セキュリティ脆弱性に関する広く知られた情報のための一意の共通識別子です。脆弱性スキャン・サービスのユーザー・インタフェースでQualys ID (QID)を表示します。
ホスト・スキャン中に、脆弱性スキャン・サービスは、ホスト上のOSパッケージのバージョンと、オープン・ソースCVEデータベース内のパッケージの修正バージョンを比較します。
OS管理サービスを使用してターゲット・ホストを更新する場合、次のシナリオで誤検出が多くなります:
- 脆弱性スキャン・サービス・レポートで、特定のCVE番号がターゲット・ホストで修正されていないことが示されます。
- OS管理サービスで、同じターゲット・ホストにインストールするためのセキュリティ更新がないことが示されます。
CVEデータベースが不正確
Oracle Cloud Infrastructure Vulnerability Scanning Serviceは、最新のOracle Linuxおよびオープン・ソース・データベースを使用して、スキャン結果を向上するために継続的に動作していますが、これらのデータベース、またはCVEを検出するためにサービスによって使用される方法が不正確である可能性があります。たとえば、脆弱性スキャン・サービスは、次の場合でもLinuxインスタンスでセキュリティの問題をレポートすることがあります:
- 問題は最新のLinuxディストリビューションで最近修正されました
- 問題は最新のLinuxディストリビューションで修正されましたが、古いバージョンに最近バックポートされました
脆弱性スキャン・サービスによって検出された脆弱性が誤検出である可能性がある場合は、CVE番号を使用して、コンピュート・インスタンスでその脆弱性がすでに修正されているかどうかを検証できます。
たとえば、Oracle LinuxのCVEを検証するには:
- Unbreakable Linux Network CVE Summaryで、CVE番号を検索します。
- CVE詳細の「Errata Information」で、コンピュート・インスタンスで実行されているOracle Linuxのバージョンのリリース日を識別します。
バージョンにリリース日がある場合、そのバージョンのCVEは修正されています。
- SSHを使用してコンピュート・インスタンスに接続します。
- パッケージ変更ログでCVE番号を検索します。
rpm -q --changelog package | grep <CVE>
Kspliceを使用してCVEが修正されている
Oracle Kspliceによって、再起動しなくても重要なセキュリティ・パッチでOracle Linuxホストを更新できます。
Kspliceを使用してCVEを修正し、ホストを再起動しなかった場合、脆弱性スキャン・サービスはそれを引き続き脆弱性としてレポートする可能性があります。CVE番号を使用して、脆弱性がコンピュート・インスタンスですでに修正されているかどうかを確認できます。
Oracle Autonomous Linuxは、Oracle Linuxに基づいた自動パッチ適用型のオペレーティング・システム・イメージです。これは、Oracle Kspliceを使用して毎日自動的にパッチを適用します。Oracle Autonomous Linuxはホストを再起動せずにカーネルを更新するため、脆弱性スキャン・サービスは、修正された脆弱性も引き続きレポートする可能性があります。
カーネルまたはパッケージ・ファイルが古い
ホストのファイル・システムに古い未使用のカーネルまたはパッケージ・ファイルが存在する場合、脆弱性スキャン・サービスは、これらの古いファイルを脆弱性としてレポートすることがあります。このシナリオは、これらのファイルのバックアップ・コピーを作成したか、更新またはアンインストール中にファイルが適切にクリーンアップされなかった場合に発生することがあります。
- 検出されたCVEの説明を参照して、脆弱性に関連するファイルのリストを識別します。
- ターゲット・ホストでこれらのファイルのコピーを検索し、それらを削除します。
クラウド・ガードの結果がない
クラウド・ガードで脆弱性スキャンの問題を参照できない問題を修正します。
クラウド・ガードは、脆弱性スキャンサービスの結果を分析し、次のタイプの問題をレポートします:
- スキャンされたコンテナ・イメージに脆弱性があります
- スキャンされたホストに脆弱性があります
- スキャンされたホストにオープン・ポートがあります
クラウド・ガードをトラブルシューティングする前に、ホスト・スキャン、ポート・スキャンまたはコンテナ・イメージ・スキャンを脆弱性スキャン・サービスで表示できることを確認してください。できない場合は、脆弱性スキャン結果がないを参照してください。
クラウド・ガードの一般的な問題の詳細は、クラウド・ガードのトラブルシューティングを参照してください。
クラウド・ガード・ターゲットにターゲット・ホストまたはコンテナが含まれていない
クラウド・ガード・ターゲットは、脆弱性スキャン・ターゲットとは異なるリソースです。クラウド・ガードを使用して脆弱性スキャン・レポートで問題を検出するには、脆弱性スキャン・ターゲット・コンパートメントが、クラウド・ガード・ターゲット・コンパートメントと同じであるか、クラウド・ガード・ターゲット・コンパートメントのサブコンパートメントである必要があります。
次のシナリオを検討してください。
CompartmentA
とCompartmentB
は、兄弟関係です(一方が他のサブコンパートメントではありません)。- コンピュート・インスタンス
MyInstance
およびイメージ・リポジトリMyRepo
は、CompartmentA
にあります。 - 脆弱性スキャン・ターゲット
ScanTarget1
は、CompartmentA
に設定されています。 - クラウド・ガード・ターゲット
CGTarget1
は、CompartmentB
に設定されています。
この例では、MyInstance
およびMyRepo
で検出された脆弱性の問題はクラウド・ガードに表示されません。クラウド・ガードおよび脆弱性スキャン・サービスのターゲット設定を調査します。クラウド・ガード・ターゲットがテナンシのルート・コンパートメントに設定されている場合、変更の必要はありません。
脆弱性スキャン・ターゲットにコンパートメントが含まれるクラウド・ガード・ターゲットを作成します。ターゲットの管理を参照してください。
脆弱性スキャン・ルールが無効になっている
OCI構成ディテクタ・レシピなどのOracle管理ディテクタ・レシピでは、すべてのディテクタ・ルールが有効になります。ただし、カスタム・ディテクタ・レシピを作成し、脆弱性スキャン・検出ルールを有効にしていない場合、クラウド・ガードは、脆弱性スキャンの問題をレポートしません。
スキャン・ディテクタ・ルールを有効にします。クラウド・ガード脆弱性スキャン・ディテクタ・ルールの使用を参照してください。
脆弱性スキャン・ルール設定によって脆弱性が除外されている
クラウド・ガード・検出プロバイダ・レシピでは、脆弱性スキャン・検出ルールの設定によって、クラウド・ガードで問題としてレポートされる脆弱性が制御されます。
- クラウド・ガードが問題としてレポートする許可されないポート番号
- クラウド・ガードが無視する許可されたポート番号
- クラウド・ガードが問題としてレポートする脆弱性リスク・レベル(低、中、高、クリティカル)
次の例を検討してください
- 脆弱性スキャン・サービスのポート・スキャンでは、オープン・ポート111および123が識別されますが、クラウド・ガードの脆弱性スキャン・ディテクタ・ルールは、ポート111および123を許可するように構成されています。
- 脆弱性スキャン・サービスのホスト・スキャンは、リスク・レベル「中」の脆弱性を識別しますが、クラウド・ガードの脆弱性スキャン・ディテクタ・ルールは、「高」または「クリティカル」の脆弱性のみをレポートするように構成されています。
構成ディテクタ・レシピで脆弱性スキャン・ディテクタ・ルールの設定を確認してください。Vulnerability Scanning Detectorルールの更新を参照してください。
Qualys Agentのインストールに失敗しました
Qualysエージェントのインストールを妨げる問題を修正します。
IAMポリシーが欠落している
Qualysエージェントをインストールするには、管理者が作成するポリシー(IAM)で、コンソール、またはSDK、CLIまたはその他のツールを使用したREST APIのどちらを使用している場合でも、ユーザーおよびQualysエージェントに必要なアクセスのタイプを付与する必要があります。
- Qualysエージェントのインストールに必要なポリシーがあることを確認します。エージェントベースのStandardポリシーおよびエージェントベースのQualysポリシーを参照してください。
- 欠落している必須ポリシーを追加します。
無効なライセンス
QualysポータルでCloud Agent Activationキーを生成した場合、脆弱性管理アプリケーションは選択されませんでした。
- Qualysポータルに移動し、アクティブ化キーの脆弱性管理アプリケーションを選択します。手順については、Qualys Cloud Platformのドキュメントを参照してください。
- Qualysエージェントをインストールします。
OCIコンソールでQualysスキャン・レポートを表示できない
OCIコンソールでQualysスキャン・レポートを表示できない問題を修正します。
Qualysスキャン・レポートがQualysポータルにのみ表示され、OCIコンソールには表示されない場合は、サポート・センターを使用してサポート・チケットをオープンします。
間違ったコンパートメントが指定されている
コンソール内で、表示するターゲットの脆弱性スキャンの結果を含むコンパートメントを必ず選択してください。
脆弱性スキャン・サービスは、コンピュート・インスタンスの結果を、インスタンスの脆弱性スキャン・ターゲットと同じコンパートメントに保存します。
次の例を考えます
- コンピュート・インスタンス
MyInstance
は、CompartmentA
にあります。 MyInstance
は、Target1
に指定されています。Target1
は、CompartmentB
にあります。MyInstance
に関連するすべてのレポートは、CompartmentB
にあります。
レシピはQualysエージェント・スキャン・レシピではありません
Qualysエージェントは、コンピュート・スキャン・レシピで指定する必要があります。
不正な形式に格納されたクオリティ・ライセンス・キー
Qualysエージェント スキャン レシピで使用されるライセンス キーは、プレーン テキストで保存する必要があります。
失敗したクオリティ・エージェントのインストール
Qualysエージェントが正しくインストールおよびプロビジョニングされていない可能性があります。
- コンピュート・インスタンスがQualysポータルに表示されることを確認します。
- 「ターゲット・エラー」ページで、コンピュート・インスタンスに関連付けられたエラーがないことを確認します。
エグレス・ルールが正しく設定されていません
VCNに設定されているエグレス・ルールによって、QualysエージェントがOCI外のサーバーに通信できることを確認します。
脆弱性スキャンOracle Cloud AgentプラグインがWindowsドメイン・コントローラ・インスタンスで動作しない
脆弱性スキャンOracle Cloud Agentプラグインの実行を妨げる問題を修正します。
原因
Windows Serverインスタンスをドメイン・コントローラとして使用する場合は、モニタリング・サービスやOS管理サービスなどのOracle Cloud Agentに依存する機能を使用できません。
処置
処置については、次のMOS記事を参照してください: Doc ID 2919839.1。