ビルド中にアーティファクトの修正済み脆弱性 (CVE)を検出 - Cloud

クラウド版Talendソフトウェア開発ライフサイクル - ベストプラクティスガイド

Version
Cloud
Language
日本語 (日本)
Product
Talend Cloud
Module
Talend Artifact Repository
Talend Management Console
Talend Studio
Content
ジョブデザインと開発
デプロイメント
管理と監視

大型のプロジェクトでCIを使ってアーティファクトをビルドする時は、CVE (Common Vulnerabilities and Exposures)の影響を受けたアーティファクト(標準ジョブ、ビッグデータジョブ、ルート)のうち、最新のTalend Studioアップデートがリリースされてからどのアーティファクトが修正されているか検出できます。

注: 修正されたCVEを検出してファイルでレポートするオプションは、org.talend.ci:builder-maven-pluginの8.0.3 (R2022-03から追加)以降のバージョンで利用できます。R2022-05より、ルートアーティファクトでの修正CVEの検出はサポートされていません。

CVEレポートをビルド

以下は、CVEの影響を受けたアーティファクトのリストをビルドするコマンド例です。このコマンドはプロジェクトアーティファクトのPOMファイルを生成する前後に実行できます。

# To generate a report file listing all CVEs
mvn org.talend.ci:builder-maven-plugin:8.0.X:detectCVE 
-Dgeneration.type=local
-Dproduct.path=/home/talend/talend_studio
-Dlicense.path=/home/talend/talend_studio/license 
-Dproduct.path=/home/talend/talend_studio/commandline/Talend-Studio-YYYYMMDD_1234-V8.0.X/
-Dtalend.studio.p2.base=https://update.talend.com/Studio/8/base
-Dtalend.studio.p2.update=https://update.talend.com/Studio/8/updates/R2022-03
-Dworkspace=/home/talend/talend_studio/CI/workspace
-DcveReportFilePath=/home/talend/talend_studio/CI/cvereport.csv
-s /home/talend/talend_studio/maven_user_settings.xml
これによって、CIワークスペースでcvereport.csvという名前のレポートが作成されます。このレポートには、既存のプロジェクトのアーティファクトに影響を与える、最新のTalend Studioアップデートで修正されたすべてのCVEが含まれます:

CVEレポートを分析

生成されたCVE (Common Vulnerabilities and Exposures)レポートのカラムの詳細は次のとおりです。
カラム名 定義
Status 次のいずれかとなります。
  • [Upgraded] (アップグレード済み): ライブラリーのバージョンアップにより、脆弱性が修正されました。
  • [Removed] (削除済み): コンポーネント、ディストリビューション、Studioプラグインといった依存項目からライブラリーを削除することで脆弱性が修正されました。
Fix Version CVEが修正された時のアップデートバージョンです。

例: R2022-03

Project Name CVE (Common Vulnerabilities and Exposures)の影響を受けたプロジェクトの名前です。

例: CI_PROJECT

Item type CVE (Common Vulnerabilities and Exposures)の影響を受けたアーティファクトのタイプです。

例: PROCESS

Item ID CVE (Common Vulnerabilities and Exposures)の影響を受けたアーティファクトの識別子です。

例: _GXOmQFizEeiOq-rLS_Z-8g

Item Name CVE (Common Vulnerabilities and Exposures)の影響を受けたアーティファクトの表示名です。

例: MyVeryComplexJob

GAV with CVE 未解決の脆弱性があるJARファイルのMavenグループ、アーティファクト、バージョン(GAV)です。

例: org.apache.logging.log4j:log4j-core:2.13.2

GAV with CVE mitigated 脆弱性が修正されたJARファイルのMavenグループ、アーティファクト、バージョン(GAV)です。

例: org.apache.logging.log4j:log4j-core:2.17.1

UsedByTalendComponent 次のいずれかとなります。
  • True: CVE付きのGAVは、リスト表示されたコンポーネントでは修正されましたが、Talend Studioの他の場所ではまだ使われています。
  • False: CVE付きのGAVは、Talend Studioコンポーネントの依存項目から完全に削除されました。
CVE-ID CVE (Common Vulnerabilities and Exposures)の識別子。利用できない場合はCVE-NOT_DISCLOSEDが取得されます。

例: CVE-2021-44228

CVSS ソフトウェアのセキュリティ脆弱性の深刻度を評価するためのCVSS (Common Vulnerability Scoring System)スコア。範囲は0.0から10.0までで、10.0が最も深刻です。CVSSの詳細は、https://nvd.nist.gov/vuln-metrics/cvssをご覧ください。
Component Names CVE (Common Vulnerabilities and Exposures)の影響を受けたコンポーネントの名前です。この名前は、コード生成に使われるテクニカル名となることも、Talend Studio全体に影響する場合はstudioとなることもあります。
Comment 追加のコメントです。

CVEリストをStudioのどのアップデートバージョンからビルドするかを表示

CVEレポートをビルドする際、fromVersionパラメーターを使って、StudioのどのアップデートバージョンからCVEレポートを比較してビルドするか指定できます。
注: 修正されたCVEを検出できるオプションをR2022-03バージョンから利用できるようになったため、R2022-03アップデートにはTalend Studioのバージョン8.0.1のリリース以降修正されたCVEがすべて含まれています。

以下は、R2022-04バージョンから検出された修正済みCVEのリストをビルドするコマンド例です。

# To generate a report file listing all fixed CVEs detected from R2022-04
mvn org.talend.ci:builder-maven-plugin:8.0.3:detectCVE 
-Dgeneration.type=local
-Dproduct.path=/home/talend/talend_studio
-Dlicense.path=/home/talend/talend_studio/license 
-Dproduct.path=/home/talend/talend_studio/commandline/Talend-Studio-YYYYMMDD_1234-V8.0.3/
-Dtalend.studio.p2.base=https://update.talend.com/Studio/8/base
-Dtalend.studio.p2.update=https://update.talend.com/Studio/8/updates/R2022-04
-DfromVersion=R2022-04
-DcveReportFilePath=/home/talend/talend_studio/CI/cvereport.csv
-s /home/talend/talend_studio/maven_user_settings.xml