Rapid Vulnerability Detection の概要

このページでは、次のような Rapid Vulnerability Detection の概要について説明します。

  • Rapid Vulnerability Detection がサポートするスキャン ターゲット
  • Rapid Vulnerability Detection で実行できるスキャンの種類
  • Rapid Vulnerability Detection で検出される脆弱性(スキャン結果)の種類

このページでは、Rapid Vulnerability Detection のスキャンのテストに関するベスト プラクティスについても説明します。

概要

Security Command Center Premium の組み込みサービスである Rapid Vulnerability Detection は、パブリック エンドポイントを積極的にスキャンして、脆弱な認証情報、不完全なソフトウェア インストール、公開されている管理者ユーザー インターフェースなど、悪用される可能性が高い脆弱性を検出する、ゼロ構成のネットワーク アプリケーションとウェブ アプリケーション スキャナです。このサービスは、ネットワーク エンドポイント、プロトコル、開いているポート、ネットワーク サービス、インストールされているソフトウェア パッケージを自動的に検出します。

Rapid Vulnerability Detection の検出結果は脆弱性の早期警告で、直ちに修正することをおすすめします。検出結果は Security Command Center で確認できます。

サポートされるスキャン ターゲット

Rapid Vulnerability Detection は、次のリソースをサポートしています。

  • Compute Engine
    • Rapid Vulnerability Detection は、パブリック IP アドレスを持つ VM のみをサポートしています。ファイアウォールの内側にある VM、またはパブリック IP アドレスを持たない VM はスキャンから除外されます。
  • Cloud Load Balancing
    • Rapid Vulnerability Detection では、外部ロードバランサのみがサポートされます。
  • Google Kubernetes Engine ingress
  • Cloud Run
    • Rapid Vulnerability Detection は、Cloud Run がアプリケーションに提供するデフォルトのドメイン、または外部ロードバランサの背後にある Cloud Run サービス用に構成されたカスタム ドメインをスキャンします。組み込みドメイン マッピングを使用するカスタム ドメインはサポートされていません。ただし、ドメイン マッピングが使用されている場合でも、デフォルト ドメインは常に使用できます。
  • App Engine
    • Rapid Vulnerability Detection では、App Engine によってアプリケーションに提供されるデフォルト ドメインのみがスキャンされます。カスタム ドメインはサポートされていません。ただし、カスタム ドメインが使用されている場合でも、デフォルト ドメインは常に使用できます。

スキャン

Rapid Vulnerability Detection は、「N 日間の脆弱性」を検出するマネージド スキャンを実行します。この既知の脆弱性が悪用されると、任意のデータがアクセスされ、リモートからコードが実行される可能性があります。このような脆弱性には、脆弱な認証情報、不完全なソフトウェア インストール、公開されている管理者ユーザー インターフェースなどがあります。

サービスを有効にすると、スキャンが自動的に構成され、Security Command Center によって管理されます。セキュリティ チームは、ターゲット URL を指定したり、スキャンを手動で開始する必要はありません。Rapid Vulnerability Detection は、Cloud Asset Inventory を使用してプロジェクト内の新しい VM とアプリケーションに関する情報を取得し、1 週間に 1 回スキャンを実行してパブリック エンドポイントを見つけ、脆弱性を検出します。Rapid Vulnerability Detection を実行するユーザー エージェントは、ログ エクスプローラで TsunamiSecurityScanner という名前になります。

Rapid Vulnerability Detection は、オープンポート(HTTP、HTTPS、SSH、MySQL など)用のサポートされているターゲットをスキャンし、スキャン ターゲットを評価して、インストールされたウェブ アプリケーションと公開されたネットワーク サービスを確認します。Rapid Vulnerability Detection は公開エンドポイントで複数のスキャンを実行し、「フィンガープリント」を使用して既知のサービスを特定するため、リスクが高く重大な脆弱性が最低限の偽陽性率で報告されます。

Rapid Vulnerability Detection でサポートされているスキャン ターゲット アセットの詳細については、サポートされているスキャン ターゲットをご覧ください。

スキャンの検出結果と改善策

次の表に、Rapid Vulnerability Detection の検出タイプと推奨される改善策を示します。

Rapid Vulnerability Detection スキャンでは、次のタイプの検出結果が識別されます。

検出結果のタイプ 検出結果の説明 OWASP トップ 10 コード
脆弱な認証情報の検出
WEAK_CREDENTIALS この検出機能は、ncrack ブルート フォース手法を使用して、脆弱な認証情報をチェックします。

サポートされているサービス: SSH、RDP、FTP、WordPress、TELNET、POP3、IMAP、VCS、SMB、SMB2、VNC、SIP、REDIS、PSQL、MYSQL、MSSQL、MQTT、MONGODB、WINRM、DICOM

改善策: 安全なパスワード ポリシーを適用します。サービスに固有の認証情報を作成します。辞書に載っている単語をパスワードに使用しないでください。

2021
A07

2017
A2
公開されたインターフェースの検出
ELASTICSEARCH_API_EXPOSED Elasticsearch API を使用すると、呼び出し元は任意のクエリの実行、スクリプトの作成と実行、サービスへのドキュメントの追加を行うことができます。

改善策: アプリケーションからリクエストをルーティングすることで Elasticsearch API への直接アクセスを削除するか、認証されたユーザーのみにアクセスを制限します。詳細については、Elasticsearch のセキュリティ設定をご覧ください。

2021
A01、A05

2017
A5、A6
EXPOSED_GRAFANA_ENDPOINT

Grafana 8.0.0 から 8.3.0 では、ユーザーはディレクトリ トラバーサルの脆弱性があるエンドポイントに認証なしでアクセスできます。この脆弱性を悪用すると、認証なしでサーバー上のファイルを読み取ることができます。詳細については、CVE-2021-43798 をご覧ください。

改善策: Grafana にパッチを適用するか、Grafana を新しいバージョンにアップグレードします。詳細については、Grafana のパス トラバーサルをご覧ください。

2021
A06、A07

2017
A2、A9
EXPOSED_METABASE

オープンソースのデータ分析プラットフォームである Metabase のバージョン x.40.0~x.40.4 には、カスタム GeoJSON マップサポートの脆弱性が存在し、環境変数などのローカル ファイルへのインクルードが行われる可能性があります。URL は読み込み前に検証されていません。詳細については、CVE-2021-41277 をご覧ください。

改善策: メンテナンス リリース 0.40.5 以降または 1.40.5 以降にアップグレードします。詳細については、GeoJSON URL 検証で未承認のユーザーにサーバー ファイルと環境変数が公開される可能性をご覧ください。

2021
A06

2017
A3、A9
EXPOSED_SPRING_BOOT_ACTUATOR_ENDPOINT この検出機能は、Spring Boot アプリケーションの機密性の高い Actuator エンドポイントが公開されているかどうかを確認します。/heapdump など、一部のデフォルトのエンドポイントでは機密情報が公開される可能性があります。/env などの他のエンドポイントでは、リモートからコードが実行されるおそれがあります。現在のところ、/heapdump のみがチェックされます。

改善策: 機密性の高い Actuator エンドポイントへのアクセスを無効にします。詳細については、HTTP エンドポイントの保護をご覧ください。

2021
A01、A05

2017
A5、A6
HADOOP_YARN_UNAUTHENTICATED_RESOURCE_MANAGER_API この検出機能は、Hadoop クラスタの計算リソースとストレージ リソースを制御する Hadoop Yarn ResourceManager API が公開され、未認証のコード実行を許可しているかどうかをチェックします。

改善策: API でアクセス制御リストを使用します。

2021
A01、A05

2017
A5、A6
JAVA_JMX_RMI_EXPOSED Java Management Extension(JMX)を使用すると、Java アプリケーションに対してリモート モニタリングと診断を行うことができます。保護されていない Remote Method Invocation エンドポイントで JMX を実行すると、リモート ユーザーは javax.management.loading.MLet MBean を作成し、それを使用して任意の URL から新しい MBeans を作成できます。

改善策: リモート モニタリングを適切に構成するには、JMX テクノロジーを使用したモニタリングと管理をご覧ください。

2021
A01、A05

2017
A5、A6
JUPYTER_NOTEBOOK_EXPOSED_UI この検出機能は、未認証の Jupyter Notebook が公開されているかどうかをチェックします。Jupyter では、ホストマシン上で設計することでリモートコードの実行が可能となります。未認証の Jupyter Notebook を使用すると、ホストしている VM がリモートコード実行の危険にさらされます。

改善策: Jupyter Notebook サーバーにトークン認証を追加するか、デフォルトでトークン認証を使用する最新バージョンの Jupyter Notebook を使用します。

2021
A01、A05

2017
A5、A6
KUBERNETES_API_EXPOSED Kubernetes API が公開されており、未認証の呼出し元からもアクセス可能です。これにより、Kubernetes クラスタで任意のコードを実行できます。

改善策: すべての API リクエストで認証を必須にします。詳細については、Kubernetes API の認証ガイドをご覧ください。

2021
A01、A05

2017
A5、A6
UNFINISHED_WORDPRESS_INSTALLATION この検出機能は、WordPress のインストールが完了していないかどうかチェックします。WordPress のインストールが完了していないと /wp-admin/install.php ページが表示されるため、攻撃者が管理者パスワードを設定できます。場合によってはシステムが侵害される可能性があります。

改善策: WordPress のインストールを完了します。

2021
A05

2017
A6
UNAUTHENTICATED_JENKINS_NEW_ITEM_CONSOLE この検出機能は、/view/all/newJob エンドポイントに匿名ユーザーとして、プローブ ping を送信することにより、未認証の Jenkins インスタンスをチェックします。認証済みの Jenkins インスタンスは createItem フォームを表示しますが、このフォームを使用すると、リモートコード実行を引き起こす可能性のある任意のジョブを作成できます。

改善策: Jenkins のセキュリティ管理ガイドに沿って、未認証アクセスをブロックします。

2021
A01、A05

2017
A5、A6
脆弱なソフトウェアの検出
APACHE_HTTPD_RCE

Apache HTTP Server 2.4.49 に、パス トラバーサル攻撃により、想定されるドキュメント ルート以外のファイルに URL がマッピングされ、CGI スクリプトなどの解釈されたファイルのソースが開示される脆弱性が見つかりました。この問題は、実際に悪用されていることが確認されています。この問題は、Apache 2.4.49 と 2.4.50 に影響しますが、以前のバージョンには影響しません。この脆弱性の詳細については、以下をご覧ください。

  1. CVE レコード CVE-2021-41773
  2. Apache HTTP Server 2.4 の脆弱性

改善策: Apache HTTP Server で「すべての拒否」ディレクティブを構成することで、ドキュメント ルートの外部にあるファイルを保護します。

2021
A01、A06

2017
A5、A9
APACHE_HTTPD_SSRF

mod_proxy が攻撃者によって選択された配信元サーバーにリクエストを転送するように、Apache ウェブサーバーへの URI が作成される可能性があります。この問題は、Apache HTTP サーバー 2.4.48 以前に影響します。この脆弱性の詳細については、以下をご覧ください。

  1. CVE レコード CVE-2021-40438
  2. Apache HTTP Server 2.4 の脆弱性

改善策: Apache HTTP サーバーを新しいバージョンにアップグレードします。

2021
A06、A10

2017
A9
CONSUL_RCE

Consul インスタンスの -enable-script-checkstrue に構成され、Consul HTTP API が保護されずにネットワーク経由でアクセスできるため、Consul サーバーで任意のコードが実行される可能性があります。Consul 0.9.0 以前では、スクリプト チェックはデフォルトでオンになっています。詳細については、特定の構成での RCE リスクからの Consul の保護をご覧ください。この脆弱性を確認するため、Rapid Vulnerability Detection は /v1/health/service REST エンドポイントを使用して Consul インスタンスにサービスを登録します。これにより、次のいずれかが実行されます。

  1. ネットワーク外のリモート サーバーへの curl コマンド。攻撃者は、curl コマンドを使用してサーバーからデータを抜き取ることができます。
  2. printf コマンド。Rapid Vulnerability Detection は、/v1/health/service REST エンドポイントを使用して、コマンドの出力を検証します。

検証後、Rapid Vulnerability Detection は /v1/agent/service/deregister/ REST エンドポイントを使用してサービスをクリーンアップし、登録を解除します。

改善策: コンソール インスタンス構成で enable-script-checks を false に設定します。

2021
A05、A06

2017
A6、A9
DRUID_RCE

Apache Druid には、さまざまなタイプのリクエストに埋め込まれたユーザー提供の JavaScript コードを実行する機能があります。この機能は高信頼性環境で使用することを想定しており、デフォルトでは無効になっています。 ただし、Druid 0.20.0 以前では、認証済みユーザーは特別なリクエストを送信して、Druid にユーザー指定の JavaScript コードを実行させることができます。これはサーバー構成に関係なく可能です。これにより、Druid サーバー プロセスの権限を使用してターゲット マシンでコードを実行できます。詳細については、CVE-2021-25646 の詳細をご覧ください。

改善策: Apache Druid を新しいバージョンにアップグレードします。

2021
A05、A06

2017
A6、A9
DRUPAL_RCE

このカテゴリには Drupal の 2 つの脆弱性が含まれています。このタイプの検出結果が複数ある場合、複数の脆弱性を示している可能性があります。

Drupal の 7.58 より前のバージョン、8.3.9 より前のバージョン 8.x、8.4.6 より前のバージョン 8.4.x、8.5.1 より前のバージョン 8.5.x は、Form API AJAX リクエストでのリモートコード実行に対して脆弱です。

改善策: 代替バージョンの Drupal にアップグレードします。

2021
A06

2017
A9
Drupal の 8.5.11 より前のバージョン 8.5.x、8.6.10 より前のバージョン 8.6.x では、RESTful Web Service モジュールまたは JSON:API のいずれかが有効になっている場合、リモートコード実行に対して脆弱です。この脆弱性は、悪意のある非人称ユーザーがカスタム POST リクエストを使用して悪用する可能性があります。

改善策: 代替バージョンの Drupal にアップグレードします。

2021
A06

2017
A9
FLINK_FILE_DISCLOSURE Apache Flink バージョン 1.11.0、1.11.1、1.11.2 に脆弱性があります。これにより、JobManager プロセスの REST インターフェースを介して JobManager のローカル ファイルシステム上のファイルが読み取られる可能性があります。アクセスは、JobManager プロセスがアクセスできるファイルに制限されます。

改善策: Flink インスタンスが公開されている場合は、Flink 1.11.3 または 1.12.0 にアップグレードします。

2021
A01、A05、A06

2017
A5、A6、A9
GITLAB_RCE

GitLab Community Edition(CE)と Enterprise Edition(EE)バージョン 11.9 以降で、GitLab はファイル パーサーに渡される画像ファイルを正しく検証しません。この脆弱性が悪用され、リモートからコマンドが実行される可能性があります。

改善策: GitLab CE または EE リリース 13.10.3、13.9.6、13.8.8 以降にアップグレードします。詳細については、CVE-2021-22205 に対してセルフマネージド型のお客様が行う必要がある対応をご覧ください。

2021
A06

2017
A9
GoCD_RCE

GoCD 21.2.0 以前に、認証なしでアクセスできるエンドポイントがあります。このエンドポイントにはディレクトリ トラバーサルの脆弱性があり、ユーザーは認証なしでサーバー上の任意のファイルを読み取ることができます。

改善: バージョン 21.3.0 以降にアップグレードします。詳細については、GoCD 21.3.0 のリリースノートをご覧ください。

2021
A06、A07

2017
A2、A9
JENKINS_RCE Jenkins バージョン 2.56 以前と 2.46.1 LTS 以前に、リモートコード実行の脆弱性が存在します。この脆弱性は、未認証の攻撃者がシリアル化された不正な Java オブジェクトを使用してトリガーする可能性があります。

改善策: 代替バージョンの Jenkins をインストールします。

2021
A06、A08

2017
A8、A9
JOOMLA_RCE

このカテゴリには、Joomla の脆弱性が 2 つ含まれています。このタイプの検出結果が複数ある場合、複数の脆弱性を示している可能性があります。

Joomla の 3.4.6 より前のバージョン 1.5.x、2.x、3.x には、リモートコード実行の脆弱性が存在します。この脆弱性は、シリアル化された PHP オブジェクトを含む詳細なヘッダーによってトリガーされる可能性があります。

改善策: 代替バージョンの Joomla をインストールします。

2021
A06、A08

2017
A8、A9
Joomla のバージョン 3.0.0~3.4.6 にリモートコード実行の脆弱性が存在します。この脆弱性は、シリアル化された不正な PHP オブジェクトを含む POST リクエストを送信することでトリガーされる可能性があります。

改善策: 代替バージョンの Joomla をインストールします。

2021
A06

2017
A9
LOG4J_RCE

Apache Log4j2 2.14.1 以前では、構成、ログメッセージ、パラメータで使用される JNDI 機能は、攻撃者が制御する LDAP やその他の JNDI 関連エンドポイントを阻止しません。詳細については、CVE-2021-44228 をご覧ください。

改善策: 改善策の詳細については、Apache Log4j のセキュリティ脆弱性をご覧ください。

2021
A06

2017
A9
MANTISBT_PRIVILEGE_ESCALATION MantisBT バージョン 2.3.0 では、verify.php に空の confirm_hash 値を指定することで、任意のパスワードのリセットと未認証ユーザーによる管理者アクセスが可能になります。

改善策: MantisBT を新しいバージョンに更新するか、Mantis の手順に沿って重要なセキュリティ修正を適用します。

2021
A06

2017
A9
OGNL_RCE

Confluence Server インスタンスと Data Center インスタンスには、未認証の攻撃者が任意のコードを実行する可能性のある OGNL インジェクションの脆弱性が存在します。詳細については、CVE-2021-26084 をご覧ください。

改善策: 改善策の詳細については、Confluence Server Webwork OGNL インジェクション - CVE-2021-26084 をご覧ください。

2021
A03

2017
A1
OPENAM_RCE

OpenAM サーバー 14.6.2 以前と ForgeRock AM サーバー 6.5.3 以前には、複数のページの jato.pageSession パラメータに Java のシリアル化解除の脆弱性があります。悪用には認証が不要であり、細工した 1 つの /ccversion/* リクエストをサーバーに送信することでリモートからのコード実行が可能になります。この脆弱性は、Sun ONE アプリケーションの使用が原因で発生します。詳細については、CVE-2021-35464 をご覧ください。

改善策: より新しいバージョンにアップグレードします。ForgeRock の改善策については、AM セキュリティ アドバイザリ #202104 をご覧ください。

2021
A06

2017
A9
ORACLE_WEBLOGIC_RCE

Oracle Fusion Middleware(コンポーネント: コンソール)の Oracle WebLogic Server プロダクトの特定のバージョン(10.3.6.0.0、12.1.3.0.0、12.2.1.3.0、12.2.1.4.0、14.1.1.0.0 など)に脆弱性が存在します。この脆弱性は悪用されやすく、ネットワーク アクセス権限のある未認証のユーザーが HTTP 経由で Oracle WebLogic Server を侵害できます。この脆弱性が攻撃されると、Oracle WebLogic Server が乗っ取られる可能性があります。詳細については、CVE-2020-14882 をご覧ください。

回避策: パッチの情報については、Oracle Critical Patch Update Advisory - October 2020 をご覧ください。

2021
A06、A07

2017
A2、A9
PHPUNIT_RCE 5.6.3 より前のバージョンの PHPUnit では、未認証の POST リクエストによってリモートコードが実行される可能性があります。

改善策: 新しい PHPUnit バージョンにアップグレードします。

2021: A05
2017: A6
PHP_CGI_RCE PHP のバージョン 5.3.12 以前と 5.4.2 より前のバージョン 5.4.x では、CGI スクリプトとして構成されているリモートコードの実行が可能です。脆弱性のあるコードでは、=(等号)文字のないクエリ文字列が適切に処理されません。攻撃者は、サーバー上で実行されるコマンドライン オプションを追加できます。

改善策: 代替バージョンの PHP をインストールします。

2021
A05、A06

2017
A6、A9
PORTAL_RCE 7.2.1 CE GA2 より前の Liferay Portal バージョンでは、信頼できないデータを逆シリアル化することで、リモートの攻撃者が JSON ウェブサービス経由で任意のコードを実行できます。

改善策: Liferay Portal の新しいバージョンにアップグレードします。

2021
A06、A08

2017
A8、A9
REDIS_RCE

Redis インスタンスで管理者コマンドを実行するための認証が不要な場合、攻撃者は任意のコードを実行できる可能性があります。

回避策: 認証を要求するように Redis を構成します。

2021
A01、A05

2017
A5、A6
SOLR_FILE_EXPOSED

オープンソースの検索サーバーである Apache Solr で認証が有効になっていません。Apache Solr が認証を必要としない場合、攻撃者は特定の構成を有効にするリクエストを直接作成できます。最終的には、サーバー側のリクエスト フォージェリ(SSRF)を実装したり、任意のファイルを読み取ることが可能になります。

改善策: 代替バージョンの Apache Solr にアップグレードします。

2021
A07、A10

2017
A2
SOLR_RCE Apache Solr のバージョン 5.0.0~8.3.1 で、params.resource.loader.enabledtrue に設定されていると、VelocityResponseWriter からリモートコードが実行される可能性があります。この設定により、攻撃者が悪意のあるベロシティ テンプレートを含むパラメータを作成する可能性があります。

改善策: 代替バージョンの Apache Solr にアップグレードします。

2021
A06

2017
A9
STRUTS_RCE

このカテゴリには、Apache Struts の脆弱性が 3 つ含まれています。このタイプの検出結果が複数ある場合、複数の脆弱性を示している可能性があります。

Apache Struts の 2.3.32 より前のバージョンと 2.5.10.1 より前のバージョン 2.5.x には、リモートコード実行の脆弱性が存在します。この脆弱性は、未認証の攻撃者が不正な Content-Type ヘッダーを提供することでトリガーされる可能性があります。

改善策: 代替バージョンの Apache Struts をインストールします。

2021
A06

2017
A9
Apache Struts の 2.3.34 より前のバージョン 2.1.1~2.3.x と、2.5.13 より前のバージョン 2.5.x の REST プラグインで、不正な XML ペイロードのシリアル化を解除するときに、リモートからコードが実行される可能性があります。

改善策: 代替バージョンの Apache Struts をインストールします。

2021
A06、A08

2017
A8、A9
Apache Struts のバージョン 2.3~2.3.34、2.5~2.5.16 で、alwaysSelectFullNamespacetrue に設定されていて、特定のバージョン他のアクション構成が存在する場合、リモートコードが実行される可能性があります。

改善策: バージョン 2.3.35 または 2.5.17 をインストールします。

2021
A06

2017
A9
TOMCAT_FILE_DISCLOSURE Apache Tomcat のバージョン 9.x(9.0.31 より前)、8.x(8.5.51 より前)、7.x(7.0.100 より前)、6.x(すべて)に、公開されている Apache JServ Protocol コネクタを介してソースコードと構成が開示される脆弱性が存在します。ファイルのアップロードが許可されている場合、この脆弱性がリモートコードの実行に利用されることがあります。

改善策: 代替バージョンの Apache Tomcat にアップグレードします。

2021
A06

2017
A3、A9
VBULLETIN_RCE バージョン 5.0.0 から 5.5.4 を実行する vBulletin サーバーに、リモートコード実行の脆弱性が存在します。この脆弱性は、routestring リクエストでクエリ パラメータを使用している未認証の攻撃者によって悪用される可能性があります。

改善策: 代替バージョンの VMware vCenter Server にアップグレードします。

2021
A03、A06

2017
A1、A9
VCENTER_RCE VMware vCenter Server の 7.0 U1c より前のバージョン 7.x、6.7 U3l より前のバージョン 6.7、6.5 U3n より前のバージョン 6.5 に、リモートコード実行の脆弱性が存在します。この脆弱性により、攻撃者は不正な Java Server Pages ファイルをウェブアクセス可能なディレクトリにアップロードして、そのファイルを実行する可能性があります。

改善策: 代替バージョンの VMware vCenter Server にアップグレードします。

2021
A06

2017
A9
WEBLOGIC_RCE

Oracle Fusion Middleware(コンポーネント: コンソール)の Oracle WebLogic Server プロダクトの特定のバージョン(10.3.6.0.0、12.1.3.0.0、12.2.1.3.0、12.2.1.4.0、14.1.1.0.0 など)に、リモートコード実行の脆弱性が存在します。この脆弱性は、CVE-2020-14750、CVE-2020-14882、CVE-2020-14883 に関連しています。詳細については、CVE-2020-14883 をご覧ください。

回避策: パッチの情報については、Oracle Critical Patch Update Advisory - October 2020 をご覧ください。

2021
A06、A07

2017
A2、A9

検出結果の例

Rapid Vulnerability Detection の検出結果は、Security Command Center ダッシュボード、Google Cloud CLI、Security Command Center API を使用して JSON にエクスポートできます。検出結果の JSON 出力は、次のようになります。

  {
    "finding": {
      "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
      "category": "WEAK_CREDENTIALS",
      "compliances": [
        {
          "ids": [
            "A2"
          ],
          "standard": "owasp",
          "version": "2017"
        },
        {
          "ids": [
            "A07"
          ],
          "standard": "owasp",
          "version": "2021"
        }
      ],
      "contacts": {
        "security": {
          "contacts": [
            {
              "email": "EMAIL_ADDRESS_1"
            },
            {
              "email": "EMAIL_ADDRESS_2"
            }
          ]
        },
        "technical": {
          "contacts": [
            {
              "email": "EMAIL_ADDRESS_3"
            }
          ]
        }
      },
      "createTime": "2021-08-19T06:26:20.038Z",
      "description": "Well known or weak credentials have been detected.",
      "eventTime": "2022-06-24T19:21:22.783Z",
      "findingClass": "MISCONFIGURATION",
      "mute": "UNDEFINED",
      "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID",
      "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID",
      "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "securityMarks": {
        "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID/securityMarks"
      },
      "severity": "CRITICAL",
      "sourceProperties": {
        "description": "Well known or weak credentials have been detected.",
        "targets": [
          {
            "ipv4Address": {
              "address": "IP_ADDRESS",
              "subnetMask": 32
            },
            "port": PORT_NUMBER,
            "resourceName": "//compute.googleapis.com/projects/PROJECT_ID/zones/ZONE_NAME/instances/VM_NAME",
            "transportProtocol": "TCP"
          }
        ]
      },
      "state": "ACTIVE"
    },
    "resource": {
      "displayName": "PROJECT_NAME",
      "name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "parentDisplayName": "ORGANIZATION_NAME",
      "parentName": "//cloudresourcemanager.googleapis.com/organizations/ORGANIZATION_ID",
      "projectDisplayName": "PROJECT_NAME",
      "projectName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "type": "google.cloud.resourcemanager.Project"
    }
  }

上の例では、次のプレースホルダ変数を使用しています。

  • EMAIL_ADDRESS_[N]: 検出結果の検出時に通知されるユーザーまたはエンティティのメールアドレス。
  • FINDING_ID: 検出結果を識別する一意の値。
  • IP_ADDRESS: 脆弱性が検出された IP アドレス。
  • ORGANIZATION_ID: 脆弱性が検出された組織の ID。
  • ORGANIZATION_NAME: 脆弱性が検出された組織の名前。
  • PORT_NUMBER: 脆弱性が検出されたポート番号。
  • PROJECT_ID: 脆弱性が検出されたプロジェクトの英数字の ID。
  • PROJECT_NUMBER: 脆弱性が検出されたプロジェクトの数値 ID。
  • SOURCE_ID: 脆弱性を検出した Security Command Center サービスを識別する、組織内で一意の数値 ID。
  • VM_NAME: 脆弱性が検出された Compute Engine 仮想マシン(VM)。
  • ZONE_NAME: スキャン ターゲットが配置されている Compute Engine ゾーン。

ベスト プラクティス

Rapid Vulnerability Detection は VM にログインし、公開済みの管理者ユーザー インターフェースにアクセスしようとします。そのため、機密データへのアクセスが生じたり、リソースに望ましくない影響を及ぼす可能性があります。Rapid Vulnerability Detection は、テストリソースをスキャンするために使用し、可能であれば、本番環境でこのサービスを使用することを避けてください。

リソースを保護するため、次のことをおすすめします。

  1. テスト環境でスキャンを実行する。別の Compute Engine プロジェクトを作成し、そのプロジェクトにアプリケーションとデータを読み込みます。Google Cloud CLI を使用する場合、アプリをアップロードするときにコマンドライン オプションとしてターゲット プロジェクトを指定できます。
  2. テスト アカウントを使用する。機密データや有害なオペレーションへのアクセス権を持たないユーザー アカウントを作成し、VM をスキャンするときに使用します。
  3. データをバックアップする。スキャンする前にデータのバックアップを検討してください。
  4. 非本番環境のリソースをスキャンする。非本番環境リソースに対してスキャンを実行し、本番環境にデプロイする前に脆弱性を捕捉します。

スキャンする前に、スキャンしようとしている範囲を超えてデータやシステムに影響を及ぼす可能性がある機能がないか慎重にアプリケーションを調べてください。

次のステップ