Jenkins 插件多个漏洞(2023 年 8 月 16 日)

high Nessus 插件 ID 180006

简介

远程 Web 服务器主机上运行的应用程序受到多个漏洞影响

描述

根据其自我报告的版本号,远程 Web 服务器上运行的相应版本的 Jenkins 插件受到多种漏洞的影响:

- 高危 Folders 插件 6.846.v23698686f0f6 及更早版本的 HTTP 端点不需要 POST 请求,这会导致跨站请求伪造 (CSRF) 漏洞。攻击者可利用此漏洞复制项目,这可能会自动批准非沙盒化脚本并允许不安全脚本的执行。管理员复制作业时,在 Script Security 插件 1265.va_fb_290b_4b_d34 和 1251.1253.v4e638b_e3b_221 中添加的改进可防止自动批准非沙盒化脚本,从而大幅降低此漏洞带来的影响。Folders 插件 6.848.ve3b_fd7839a_81 需要用户向受影响的 HTTP 端点发送 POST 请求。(CVE-2023-40336)

- 中危 Folders 插件 6.846.v23698686f0f6 及更早版本的 HTTP 端点不需要 POST 请求,这会导致跨站请求伪造 (CSRF) 漏洞。攻击者可利用此漏洞复制文件夹内的视图。Folders 插件 6.848.ve3b_fd7839a_81 需要用户向受影响的 HTTP 端点发送 POST 请求。(CVE-2023-40337)

- 如果没有可用日志,中危 Folders 插件在尝试访问 Scan Organization Folder 日志时就会显示错误消息。在 Folders Plugin 6.846.v23698686f0f6 及更早版本中,此错误消息中包含日志文件的绝对路径,从而会泄露 Jenkins 控制器文件系统的相关信息。Folders 插件 6.848.ve3b_fd7839a_81 并未在错误消息中显示日志文件的绝对路径。
(CVE-2023-40338)

- 在将配置文件中指定的凭据写入构建日志时,中危 Config File Provider 插件 952.va_544a_6234b_46 及更早版本未对其进行掩码(即用星号替换)。Config File Provider 插件 953.v0432a_802e4d2 会对配置文件中配置的凭据进行掩码(如果这些凭据出现在构建日志中)。(CVE-2023-40339)

- 中危 NodeJS 插件会与 Config File Provider 插件集成,以指定自定义 NPM 设置,其中包括 Npm 配置文件中的认证凭据。NodeJS 插件 1.6.0 及更早版本未正确对管道构建日志 Npm 配置文件中指定的凭据进行掩码(即用星号替换)。
NodeJS 插件 1.6.0.1 会对管道构建日志 Npm 配置文件中指定的凭据进行掩码。
(CVE-2023-40340)

- 中危 Blue Ocean 插件 1.27.5 及更早版本的 HTTP 端点不需要 POST 请求,这会导致跨站请求伪造 (CSRF) 漏洞。攻击者可利用此漏洞连接到攻击者指定 URL,从而捕获与攻击者指定作业相关的 GitHub 凭据。此问题是由于 SECURITY-2502 的修复不完整所致。Blue Ocean 插件 1.27.5.1 会使用经配置的 SCM URL,而非使用以 HTTP 端点的参数形式提供的用户指定 URL。(CVE-2023-40341)

- 中危 Fortify 插件 22.1.38 及更早版本在多个 HTTP 端点中未执行权限检查。
- 这将导致拥有全局/读取权限的攻击者可使用通过其他方法获取的攻击者指定凭据 ID,连接到攻击者指定的 URL,从而捕获 Jenkins 中存储的凭据。
此外,这些 HTTP 端点不需要 POST 请求,从而导致跨站请求伪造 (CSRF) 漏洞。Fortify 插件 22.2.39 需要用户向受影响的 HTTP 端点发送 POST 请求并提供相应的权限。(CVE-2023-4301,CVE-2023-4302)

- 中危 Fortify 插件 22.1.38 及更早版本未转义表单验证方法的错误消息。
这会导致 HTML 注入漏洞。自 Jenkins 2.275 和 LTS 2.263.2 起,适用于表单验证响应的安全性强化措施可阻止 JavaScript 被执行,因此任何脚本均无法注入。Fortify 插件 22.2.39 会从错误消息中删除 HTML 标记。(CVE-2023-4303)

- 高危 Flaky Test Handler 插件 1.2.2 及更早版本在 Jenkins UI 上显示 JUnit 测试内容时未将其转义。这会导致攻击者可以利用存储型跨站脚本 (XSS) 漏洞,从而控制 JUnit 报告文件的内容。Flaky Test Handler 插件 1.2.3 在 Jenkins UI 上显示 JUnit 测试内容时会将其转义。(CVE-2023-40342)

- 低危 Tuleap Authentication 插件 1.1.20 及更早版本在检查两个认证标记是否相等时未使用常数时间比较算法。这可能允许攻击者使用统计方法来获取有效的认证标记。Tuleap Authentication 插件 1.1.21 在验证认证标记时会使用常数时间比较算法。(CVE-2023-40343)

- 中危 Delphix 插件 3.0.2 及更早版本未在 HTTP 端点中执行权限检查。这将允许具有全局/读取权限的攻击者枚举存储在 Jenkins 中凭据的凭据 ID。这些可用作攻击的一部分,以使用其他漏洞捕获凭据。在 Delphix 插件 3.0.3 中,枚举凭据 ID 需要提供相应的权限。
(CVE-2023-40344)

- 中危 Delphix 插件 3.0.2 及更早版本没有为凭据查找设置适当的上下文,从而允许使用系统范围的凭据,否则会为全局配置保留。这将导致拥有全局/读取权限的攻击者可访问并捕获他们无权获得的凭据。Delphix 插件 3.0.3 为凭据查找定义了相应的上下文。(CVE-2023-40345)

- 高危 - Shortcut Job 插件 0.4 及更早版本不会转义快捷方式重定向 URL。这会导致攻击者可以利用存储型跨站脚本 (XSS) 漏洞,从而对快捷方式作业进行配置。
Shortcut Job 插件 0.5 会对快捷方式重定向 URL 进行转义。(CVE-2023-40346)

- 中危 Maven Artifact ChoiceListProvider (Nexus) 插件 1.14 及更早版本没有为凭据查找设置适当的上下文,从而允许使用系统范围的凭据,否则会为全局配置保留。这将允许拥有“项目/配置”权限的攻击者访问并捕获他们无权获得的凭据。在发布此公告时,尚无修复方法。了解我们为何宣布此问题。(CVE-2023-40347)

- 中危 Gogs 插件会在 /gogs-webhook 提供 webhook 端点,可用于触发相应的作业版本。Gogs 插件 1.0.15 及更早版本提供了用于为此 webhook 指定 Gogs 密钥的选项,但此选项默认未启用。这可让未经身份验证的攻击者触发与攻击者指定作业名称相对应的作业版本。此外,webhook 端点的输出包括就与攻击者指定作业名称相对应作业的存在性的检验(即使攻击者无权访问该作业)。在发布此公告时,尚无修复方法。了解我们为何宣布此问题。
(CVE-2023-40348,CVE-2023-40349)

- 高危 Docker Swarm 插件会处理 Docker 响应以生成 Docker Swarm 仪表板视图。Docker Swarm 插件 1.11 及更早版本并未在 Docker 返回的值插入 Docker Swarm 仪表板视图之前对其进行转义。这会导致攻击者可以利用存储型跨站脚本 (XSS) 漏洞,从而控制来自 Docker 的响应。在发布此公告时,尚无修复方法。
了解我们为何宣布此问题。(CVE-2023-40350)

- 中危 Favorite View 插件 5.v77a_37f62782d 及更早版本的 HTTP 端点不需要 POST 请求,这会导致跨站请求伪造 (CSRF) 漏洞。攻击者可利用此漏洞在其他用户最喜欢的视图选项卡栏中添加或删除视图。在发布此公告时,尚无修复方法。了解我们为何宣布此问题。(CVE-2023-40351)

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

将 Jenkins 插件更新到以下版本:
- Blue Ocean 插件升级至版本 1.27.5.1 或更高版本
- Config File Provider 插件升级至版本 953.v0432a_802e4d2 或更高版本
- Delphix 插件升级至版本 3.0.3 或更高版本
- Docker Swarm 插件:参见供应商公告
- Favorite View 插件:参见供应商公告
- Flaky Test Handler 插件升级至版本 1.2.3 或更高版本
- Folders 插件升级至版本 6.848.ve3b_fd7839a_81 或更高版本
- Fortify 插件升级至版本 22.2.39 或更高版本
- Gogs 插件:参见供应商公告
- Maven Artifact ChoiceListProvider (Nexus) 插件:参见供应商公告
- NodeJS 插件升级至版本 1.6.0.1 或更高版本
- Job Import 插件升级至版本 0.5 或更高版本
- Tuleap 身份验证插件升级至版本 1.1.21 或更高版本

有关更多详细信息,请参阅供应商公告。

另见

https://jenkins.io/security/advisory/2023-08-16

插件详情

严重性: High

ID: 180006

文件名: jenkins_security_advisory_2023-08-16_plugins.nasl

版本: 1.3

类型: combined

代理: windows, macosx, unix

系列: CGI abuses

发布时间: 2023/8/21

最近更新时间: 2024/10/3

配置: 启用全面检查 (optional)

支持的传感器: Nessus Agent, Nessus

Enable CGI Scanning: true

风险信息

VPR

风险因素: Medium

分数: 5.9

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 7.4

矢量: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

CVSS 分数来源: CVE-2023-40341

CVSS v3

风险因素: High

基本分数: 8.8

时间分数: 7.7

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:U/RL:O/RC:C

漏洞信息

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

必需的 KB 项: installed_sw/Jenkins

易利用性: No known exploits are available

补丁发布日期: 2023/8/16

漏洞发布日期: 2023/8/16

参考资料信息

CVE: CVE-2023-40336, CVE-2023-40337, CVE-2023-40338, CVE-2023-40339, CVE-2023-40340, CVE-2023-40341, CVE-2023-40342, CVE-2023-40343, CVE-2023-40344, CVE-2023-40345, CVE-2023-40346, CVE-2023-40347, CVE-2023-40348, CVE-2023-40349, CVE-2023-40350, CVE-2023-40351, CVE-2023-4301, CVE-2023-4302, CVE-2023-4303