ビルド中にアーティファクトの修正済み脆弱性 (CVE)を検出
大型のプロジェクトでCIを使ってアーティファクトをビルドする時は、CVE (Common Vulnerabilities and Exposures)の影響を受けたアーティファクト(標準ジョブ、ビッグデータジョブ、ルート)のうち、最新のStudio Talendアップデートがリリースされてからどのアーティファクトが修正されているか検出できます。
- 修正されたCVEを検出してファイルでレポートするオプションは、org.talend.ci:builder-maven-pluginの8.0.3 (R2022-03から追加)以降のバージョンで利用できます。R2022-05より、ルートアーティファクトでの修正CVEの検出はサポートされていません。
- このオプションは、Studio Talendのアップグレードによって修正される可能性があるCVEをユーザーが特定しやすくすることを目的としており、Studio Talendジョブライブラリーの脆弱性を見つけるサードパーティツールの代替となるものではありません。
技術的な制限により:
- Studio Talendでのみ使われ、どのコンポーネントでも使われないjarのCVEは検出できません。
- レポートでOSGI BundleまたはMicroserviceとしてビルドされたアーティファクトのCVEは正確ではありません。
CVEレポートをビルド
以下は、CVEの影響を受けたアーティファクトのリストをビルドするコマンド例です。このコマンドはプロジェクトアーティファクトのPOMファイルを生成する前後に実行できます。
# To generate a report file listing all CVEs
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.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という名前のレポートが作成されます。このレポートには、既存のプロジェクトのアーティファクトに影響を与える、最新のStudio Talendアップデートで修正されたすべてのCVEが含まれます:
CVEレポートを分析
生成されたCVE (Common Vulnerabilities and Exposures)レポートのカラムの詳細は次のとおりです。
カラム名 | 定義 |
---|---|
Status | 次のいずれかとなります。
|
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 | 次のいずれかとなります。
|
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)の影響を受けたコンポーネントの名前です。この名前は、コード生成に使われるテクニカル名となることも、Studio Talend全体に影響する場合はstudioとなることもあります。 |
Comment | 追加のコメントです。 |
CVEリストをStudio Talendのどのアップデートバージョンからビルドするかを表示
CVEレポートをビルドする際、fromVersionパラメーターを使って、Studio TalendのどのアップデートバージョンからCVEレポートを比較してビルドするか指定できます。
情報メモ注: 修正されたCVEを検出できるオプションをR2022-03バージョンから利用できるようになったため、R2022-03アップデートにはStudio Talendのバージョン8.0.1のリリース以降修正されたCVEがすべて含まれています。
以下は、R2022-05バージョンから検出された修正済みCVEのリストをビルドするコマンド例です。
# To generate a report file listing all fixed CVEs detected from R2022-05
mvn org.talend.ci:builder-maven-plugin:8.0.3:detectCVE
-Dgeneration.type=local
-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-05
-DfromVersion=R2022-05
-DcveReportFilePath=/home/talend/talend_studio/CI/cvereport.csv
-s /home/talend/talend_studio/maven_user_settings.xml
このページは役に立ちましたか?
このページまたはコンテンツに、タイポ、ステップの省略、技術的エラーなどの問題が見つかった場合は、お知らせください。改善に役立たせていただきます。