Jenkins プラグインの複数の脆弱性 (2022 年 10 月 19 日)

critical Nessus プラグイン ID 172085

概要

リモートの Web サーバーホストで実行されているアプリケーションは、複数の脆弱性の影響を受けます。

説明

自己報告によるバージョン番号によると、リモート Web サーバー上で実行されているバージョンの Jenkins プラグインは、次の複数の脆弱性の影響を受けます。

- Jenkins Script Security Plugin 1183.v774b_0b_0a_a_451 以前の Groovy 言語ランタイムによって暗黙的に実行される、さまざまなキャストに関連するサンドボックスバイパスの脆弱性により、パイプラインを含むサンドボックス化されたスクリプトを定義して実行する権限を持っている攻撃者が、サンドボックス保護をバイパスして、Jenkins コントローラー JVM のコンテキストで任意のコードを実行する可能性があります。(CVE-2022-43401)

- Jenkins Script Security Plugin 1183.v774b_0b_0a_a_451 以前の細工されたコンストラクター本体とサンドボックス生成合成コンストラクターへの呼び出しに関連するサンドボックスバイパスの脆弱性により、パイプラインを含むサンドボックス化されたスクリプトを定義して実行する権限を持っている攻撃者が、サンドボックス保護をバイパスして、Jenkins コントローラー JVM のコンテキストで任意のコードを実行する可能性があります。(CVE-2022-43404)

- Jenkins パイプラインのサンドボックスバイパスの脆弱性: Groovy Libraries Plugin 612.v84da_9c54906d 以前では、信頼できないプラグインライブラリを定義し、パイプラインを含むサンドボックス化されたスクリプトを定義して実行する権限を持っている攻撃者が、サンドボックス保護をバイパスして、Jenkins コントローラー JVM のコンテキストで任意のコードを実行する可能性があります。(CVE-2022-43405)

- Jenkins パイプラインのサンドボックスバイパスの脆弱性: 非推奨の Groovy Libraries Plugin 583.vf3b_454e43966 以前では、信頼できないプラグインライブラリを定義し、パイプラインを含むサンドボックス化されたスクリプトを定義して実行する権限を持っている攻撃者が、サンドボックス保護をバイパスして、Jenkins コントローラー JVM のコンテキストで任意のコードを実行する可能性があります。(CVE-2022-43406)

- Jenkins パイプライン: Input Step Plugin 451.vf1a_a_4f405289 以前は、「input」ステップのオプションで指定された ID を制限またはサニタイズしません。この ID は、特定の「input」ステップ (続行または中止) のユーザー操作を処理する URL に使用され、正しくエンコードされないため、攻撃者がパイプラインを構成して Jenkins に「input」ステップ ID から URL を構築させ、「input」ステップが操作されたときに Jenkins のターゲット URL の CSRF 保護をバイパスする可能性があります。(CVE-2022-43407)

- Jenkins パイプライン: Stage View Plugin 2.26 以前は「input」ステップの ID を正しくエンコードしないため、攻撃者がその ID をパイプラインビルドを続行または中止する URL を生成するために使用することによって、「input」ステップ ID を指定するようにパイプラインを構成し、Jenkins の任意のターゲット URL の CSRF 保護をバイパスする URL を生成する可能性があります。(CVE-2022-43408)

- Jenkins パイプライン: Supporting APIs Plugin 838.va_3a_087b_4055b 以前は、ビルドログで POST リクエストを送信するハイパーリンクの URL をサニタイズしないまたは適切にエンコードしないため、パイプラインを作成可能な攻撃者が蓄積型クロスサイトスクリプティング (XSS) の脆弱性を悪用する可能性があります。(CVE-2022-43409)

- Jenkins Mercurial Plugin 1251.va_b_121f184902 およびそれ以前では、webhook エンドポイントを介してポーリングのためにトリガーまたはスケジュールされたジョブに関する情報が提供されます。これには、ユーザーがアクセスする権限のないジョブも含まれます。(CVE-2022-43410)

- Jenkins GitLab Plugin 1.5.35 以前は、提供された Webhook トークンと想定される Webhook トークンが等しいかどうかをチェックする際に、一定でない時間比較関数を使用するため、攻撃者が統計的手法を使用して有効な Webhook トークンを取得する可能性があります。(CVE-2022-43411)

- Jenkins Generic Webhook Trigger Plugin 1.84.1 以前は、提供された Webhook トークンと想定される Webhook トークンが等しいかどうかをチェックする際に、一定でない時間比較関数を使用するため、攻撃者が統計的手法を使用して有効な Webhook トークンを取得する可能性があります。(CVE-2022-43412)

- Jenkins Job Import Plugin 3.5 以前は、HTTP エンドポイントで権限チェックを実行しないため、Overall/Read 権限を持っている攻撃者が Jenkins に保存されている認証情報の認証情報 ID を列挙する可能性があります。(CVE-2022-43413)

- Jenkins NUnit Plugin 0.27 以前は、ユーザーが指定したディレクトリ内のファイルをテスト結果として解析するエージェントからコントローラーへのメッセージを実装するため、攻撃者がエージェントプロセスを制御して、Jenkins コントローラー上の攻撃者が指定したディレクトリ内のファイルからテスト結果を取得する可能性があります。(CVE-2022-43414)

- Jenkins REPO Plugin 1.15.0 以前は、XML 外部エンティティ (XXE) 攻撃を防ぐための XML パーサーを構成していません。(CVE-2022-43415)

- Jenkins Katalon Plugin 1.0.32 以前は、実行可能な場所を制限しないエージェント/コントローラーメッセージを実装し、構成可能な引数を使用した Katalon の呼び出しを可能にするため、攻撃者がエージェントプロセスを制御して、攻撃者の制御バージョンの Jenkins コントローラー、インストール場所、および引数で Katalon を呼び出す可能性があります。また、Jenkins コントローラーでファイルを作成 (例えば、Item/Configure 権限を持っている攻撃者がアーティファクトをアーカイブする可能性がある) し、任意の OS コマンドを呼び出す可能性があります。
(CVE-2022-43416)

- Jenkins Katalon Plugin 1.0.32 以前は、複数の HTTP エンドポイントで権限チェックを実行しないため、Overall/Read 権限を持っている攻撃者が、他の方法によって取得した攻撃者指定の認証情報 ID を使用して攻撃者指定の URL に接続し、Jenkins に保存されている認証情報を取得する可能性があります。
(CVE-2022-43417)

- Jenkins Katalon Plugin 1.0.33 以前のクロスサイトリクエストフォージェリ (CSRF) の脆弱性により、攻撃者は、別の方法で取得した攻撃者指定の認証情報 ID を使用して攻撃者指定の URL に接続し、Jenkins に保存されている認証情報を取得する可能性があります。(CVE-2022-43418)

- Jenkins Katalon Plugin 1.0.32 以前は、暗号化されていない API キーを Jenkins コントローラー上のジョブ config.xml ファイルに保存するため、Jenkins コントローラーファイルシステムへの Extended Read 権限またはアクセス権を持っているユーザーが表示する可能性があります。(CVE-2022-43419)

- Jenkins Contrast Continuous Application Security Plugin 3.9 以前は、レポートの生成時に Contrast サービスから返されたデータをエスケープしないため、攻撃者が蓄積型クロスサイトスクリプティング (XSS) の脆弱性を悪用して、Contrast サービス API 応答を制御または変更する可能性があります。
(CVE-2022-43420)

- Jenkins Tuleap Git Branch Source Plugin 3.2.4 以前は、権限チェックが欠落しているため、認証されていない攻撃者が、構成されたリポジトリが攻撃者指定の値と一致する Tuleap プロジェクトをトリガーする可能性があります。(CVE-2022-43421)

- Jenkins Compuware Topaz Utilities Plugin 1.0.8 以前は、実行可能な場所を制限しないエージェント/コントローラーメッセージを実装するため、攻撃者がエージェントプロセスを制御して、Jenkins コントローラープロセスから Java システムプロパティの値を取得する可能性があります。(CVE-2022-43422)

- Jenkins Compuware Source Code Download for Endevor、PDS、および ISPW Plugin 2.0.12 以前は、実行可能な場所を制限しないエージェント/コントローラーメッセージを実装するため、攻撃者がエージェントプロセスを制御して、Jenkins コントローラープロセスから Java システムプロパティの値を取得する可能性があります。
(CVE-2022-43423)

- Jenkins Compuware Xpediter Code Coverage Plugin 1.0.7 以前は、実行可能な場所を制限しないエージェント/コントローラーメッセージを実装するため、攻撃者がエージェントプロセスを制御して、Jenkins コントローラープロセスから Java システムプロパティの値を取得する可能性があります。(CVE-2022-43424)

- Jenkins Custom Checkbox Parameter Plugin 1.4 以前は、パラメーターを表示するビューで Custom Checkbox Parameter パラメーターの名前と記述をエスケープしないため、Item/Configure 権限を持っている攻撃者が蓄積型クロスサイトスクリプティング (XSS) の脆弱性を悪用する可能性があります。(CVE-2022-43425)

- Jenkins S3 Explorer Plugin 1.0.8 以前は、AWS_SECRET_ACCESS_KEY フォームフィールドをマスクしないため、攻撃者がこれを監視して収集する可能性があります。(CVE-2022-43426)

- Jenkins Compuware Topaz for Total Test Plugin 2.4.8 以前は、複数の HTTP エンドポイントで権限チェックを実行しないため、Overall/Read 権限を持っている攻撃者が Jenkins に保存されている認証情報の認証情報 ID を列挙する可能性があります。(CVE-2022-43427)

- Jenkins Compuware Topaz for Total Test Plugin 2.4.8 以前は、実行可能な場所を制限しないエージェント/コントローラーメッセージを実装するため、攻撃者がエージェントプロセスを制御して、Jenkins コントローラープロセスから Java システムプロパティの値を取得する可能性があります。(CVE-2022-43428)

- Jenkins Compuware Topaz for Total Test Plugin 2.4.8 以前は、実行可能な場所を制限しないエージェント/コントローラーメッセージを実装するため、攻撃者がエージェントプロセスを制御して、Jenkins コントローラーファイルシステム上の任意のファイルを読み取る可能性があります。(CVE-2022-43429)

- Jenkins Compuware Topaz for Total Test Plugin 2.4.8 以前は、XML 外部エンティティ (XXE) 攻撃を防ぐための XML パーサーを構成していません。(CVE-2022-43430)

- Jenkins Compuware Strobe Measurement Plugin 1.0.1 以前は、HTTP エンドポイントで権限チェックを実行しないため、Overall/Read 権限を持っている攻撃者が Jenkins に保存されている認証情報の認証情報 ID を列挙する可能性があります。(CVE-2022-43431)

- Jenkins XFramium Builder Plugin 1.0.22 以前は、Jenkins がダウンロード用に提供している、ワークスペース内のユーザー生成コンテンツやアーカイブされたアーティファクトなどに対する Content-Security-Policy 保護をプログラムで無効にします。(CVE-2022-43432)

- Jenkins ScreenRecorder Plugin 0.7 以前は、Jenkins がダウンロード用に提供している、ワークスペース内のユーザー生成コンテンツやアーカイブされたアーティファクトなどに対する Content-Security-Policy 保護をプログラムで無効にします。
(CVE-2022-43433)

- Jenkins NeuVector Vulnerability Scanner Plugin 1.20 以前は、Jenkins がダウンロード用に提供している、ワークスペース内のユーザー生成コンテンツやアーカイブされたアーティファクトなどに対する Content-Security-Policy 保護をプログラムで無効にします。(CVE-2022-43434)

- Jenkins 360 FireLine Plugin 1.7.2 以前は、Jenkins がダウンロード用に提供している、ワークスペース内のユーザー生成コンテンツやアーカイブされたアーティファクトなどに対する Content-Security-Policy 保護をプログラムで無効にします。
(CVE-2022-43435)

Nessus はこれらの問題をテストしておらず、代わりにアプリケーションの自己報告されたバージョン番号にのみ依存しています。

ソリューション

Jenkins プラグインを次のバージョンに更新してください。
- 360 FireLine Plugin: ベンダーのアドバイザリを参照してください
- バージョン 2.0.13 以降への Endevor、PDS、および ISPW Plugin の Compuware ソースコードダウンロード
- Compuware Strobe Measurement Plugin: ベンダーのアドバイザリを参照してください
- Compuware Topaz for Total Test Plugin: ベンダーのアドバイザリを参照してください
- バージョン 1.0.9 以降への Compuware Topaz Utilities Plugin
- バージョン 1.0.8 以降への Compuware Xpediter Code Coverage Plugin
- バージョン 3.10 以降への Contrast Continuous Application Security Plugin
- Custom Checkbox Parameter Plugin: ベンダーのアドバイザリを参照してください
- Generic Webhook Trigger Plugin のバージョン 1.84.2 以降
- GitLab プラグインのバージョン 1.5.36 以降
- バージョン 3.6 以降への Job Import Plugin
- バージョン 1.0.34 以降への Katalon Plugin
- バージョン 1260.vdfb_723cdcc81 以降への Mercurial Plugin
- NeuVector Vulnerability Scanner Plugin: ベンダーのアドバイザリを参照してください
- バージョン 0.28 以降への NUnit Plugin
- パイプライン : バージョン 588.v576c103a_ff86 以降への非推奨の Groovy Libraries Plugin
- パイプライン : Groovy Libraries Plugin: ベンダーのアドバイザリを参照してください
- パイプライン : バージョン 2803.v1a_f77ffcc773 以降への Groovy Plugin
- パイプライン : バージョン 456.vd8a_957db_5b_e9 以降への Input Step Plugin
- パイプライン : バージョン 2.27 以降への Stage View Plugin
- パイプライン : バージョン 839.v35e2736cfd5c 以降への Supporting APIs Plugin
- REPO プラグインのバージョン 1.16.0 以降
- S3 Explorer Plugin: ベンダーのアドバイザリを参照してください
- ScreenRecorder Plugin: ベンダーのアドバイザリを参照してください
- バージョン 1184.v85d16b_d851b_3 以降への Script Security Plugin
- バージョン 3.2.5 以降への Tuleap Git Branch Source Plugin
- XFramium Builder Plugin: ベンダーのアドバイザリを参照してください

詳細については、ベンダーアドバイザリを参照してください。

参考資料

https://jenkins.io/security/advisory/2022-10-19

プラグインの詳細

深刻度: Critical

ID: 172085

ファイル名: jenkins_security_advisory_2022-10-19_plugins.nasl

バージョン: 1.2

タイプ: combined

エージェント: windows, macosx, unix

ファミリー: CGI abuses

公開日: 2023/3/3

更新日: 2023/7/28

サポートされているセンサー: Nessus Agent, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 6.5

CVSS v2

リスクファクター: Critical

基本値: 10

現状値: 7.4

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

CVSS スコアのソース: CVE-2022-43407

CVSS v3

リスクファクター: Critical

基本値: 9.9

現状値: 8.6

ベクトル: CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

現状ベクトル: CVSS:3.0/E:U/RL:O/RC:C

CVSS スコアのソース: CVE-2022-43406

脆弱性情報

CPE: cpe:/a:cloudbees:jenkins, cpe:/a:jenkins:jenkins

必要な KB アイテム: installed_sw/Jenkins

エクスプロイトの容易さ: No known exploits are available

パッチ公開日: 2022/10/19

脆弱性公開日: 2022/10/19

参照情報

CVE: CVE-2022-43401, CVE-2022-43404, CVE-2022-43405, CVE-2022-43406, CVE-2022-43407, CVE-2022-43408, CVE-2022-43409, CVE-2022-43410, CVE-2022-43411, CVE-2022-43412, CVE-2022-43413, CVE-2022-43414, CVE-2022-43415, CVE-2022-43416, CVE-2022-43417, CVE-2022-43418, CVE-2022-43419, CVE-2022-43420, CVE-2022-43421, CVE-2022-43422, CVE-2022-43423, CVE-2022-43424, CVE-2022-43425, CVE-2022-43426, CVE-2022-43427, CVE-2022-43428, CVE-2022-43429, CVE-2022-43430, CVE-2022-43431, CVE-2022-43432, CVE-2022-43433, CVE-2022-43434, CVE-2022-43435