Jenkins 插件多个漏洞 (2023-09-06)

high Nessus 插件 ID 180576

简介

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

描述

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

- Jenkins Job Configuration History 插件 1227.v7a_79fc4dc01f 及之前版本在呈现历史记录条目时,未限制“name”查询参数,攻击者可利用此漏洞让 Jenkins 呈现并非由此插件创建的受操控的配置历史记录。(CVE-2023-41930)

- Jenkins Job Configuration History 插件 1227.v7a_79fc4dc01f 及之前版本未限制多个端点中的“timestamp”查询参数,攻击者可利用此漏洞删除 Jenkins 控制器文件系统上的攻击者指定目录,但前提是这些目录包含名为“history.xml”的文件。
(CVE-2023-41932)

- Jenkins Job Configuration History 插件 1227.v7a_79fc4dc01f 及之前版本未配置其 XML 解析器,以防止 XML 外部实体 (XXE) 攻击。(CVE-2023-41933)

- Jenkins Azure AD 插件 396.v86ce29279947 及之前版本(378.380.v545b_1154b_3fb_ 除外)在检查所提供的与所预期的 CSRF 保护临时信息是否相同时使用非常量时间比较函数,这可能允许攻击者使用统计方法获取有效的临时信息。
(CVE-2023-41935)

- Jenkins Google Login 插件 1.7 及之前版本在检查所提供的与所预期的令牌是否相同时使用非常量时间比较函数,这可能允许攻击者使用统计方法获取有效的令牌。(CVE-2023-41936)

- Jenkins Bitbucket Push and Pull Request Plugin 2.4.0 至 2.8.3(两者均包括)信任在 webhook 负载中提供的值(包括某些 URL),并会使用配置的 Bitbucket 凭据连接到这些 URL,进而使攻击者能够通过发送特制的 webhook 负载,捕获 Jenkins 中存储的 Bitbucket 凭据。(CVE-2023-41937)

- Apache Software Foundation Apache Ivy 中存在不当限制 XML 外部实体引用漏洞,即 XML 注入(又称为盲目 XPath 注入)漏洞。此问题会影响 Apache Ivy 2.5.2 之前的所有版本。Apache Ivy 2.5.2 之前的版本在解析 XML 文件(其自身配置、Ivy 文件或 Apache Maven POM)时,将允许下载外部文档类型定义,并在使用时展开其中包含的任何实体引用。攻击者可利用此漏洞泄露数据、访问仅运行 Ivy 的计算机可以访问的资源,或以不同方式干扰 Ivy 的执行。Ivy 2.5.2 及更高版本将在默认情况下禁用 DTD 处理,但解析 Maven POM 时除外,此时的默认设置为允许 DTD 处理,但仅包含随附 Ivy 的 DTD 片段,该片段是处理现有 Maven POM(无效的 XML 文件,但仍被 Maven 接受)所必需的片段。如果需要,可以通过新引入的系统属性来放宽访问权限。Ivy 2.5.2 之前版本的用户可以使用 Java 系统属性来限制外部 DTD 的处理,请参阅《Oracle Java API for XML Processing (JAXP) 安全指南》中有关外部访问 JAXP 属性限制一节。
(CVE-2022-46751)

- Jenkins Ivy 插件 2.5 及之前版本中存在跨站脚本伪造 (CSRF) 漏洞,攻击者可利用此漏洞删除已禁用的模块。(CVE-2023-41938)

- Jenkins SSH2 Easy 插件 1.4 及之前版本未验证是否启用配置为已授予的权限,这可能允许之前获得授权(通常是可选权限,如“全局”/“管理”)的用户访问他们不再有权使用的功能。(CVE-2023-41939)

- Jenkins AWS CodeCommit Trigger 插件 3.0.12 及之前版本中存在跨站脚本伪造 (CSRF) 漏洞,攻击者可利用此漏洞清除 SQS 队列。(CVE-2023-41942)

- Jenkins AWS CodeCommit Trigger Plugin 3.0.12 及之前版本在呈现错误消息时,未转义传递到表单验证 URL 的队列名称参数,从而导致 HTML 注入漏洞。
(CVE-2023-41944)

- Jenkins Assembla Auth Plugin 1.14 及之前版本未验证是否启用其所授予的权限,从而导致具有 EDIT 权限的用户获得“全局”/“管理”权限和“全局”/“系统读取”权限,即使这些权限已禁用且不应授予仍是如此。(CVE-2023-41945)

- Jenkins Frugal Testing Plugin 1.1 及之前版本中存在跨站请求伪造 (CSRF) 漏洞,此漏洞允许攻击者使用由其指定的凭据连接到 Frugal Testing,如果有效凭据与攻击者指定的用户名对应,攻击者还可检索 Frugal Testing 的测试 ID 和名称。
(CVE-2023-41946)

- Jenkins Frugal Testing 插件 1.1 及之前版本中存在缺少权限检查漏洞,此漏洞允许具有“全局/读取”权限的攻击者使用其指定的凭据连接到 Frugal Testing。
(CVE-2023-41947)

- 路径遍历漏洞允许利用 Job Configuration History 插件中的 XSS 漏洞 (CVE-2023-41931)

- Pipeline Maven Integration 插件中的凭据掩码不当 (CVE-2023-41934)

- TAP 插件中的存储型 XSS 漏洞 (CVE-2023-41940)

- AWS CodeCommit Trigger 插件中缺少权限检查,因此允许枚举凭据 ID (CVE-2023-41941)

- AWS CodeCommit Trigger 插件中存在 CSRF 漏洞且缺少权限检查 (CVE-2023-41943)

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

解决方案

将 Jenkins 插件更新到以下版本:
- Assembla Auth 插件:参见供应商公告
- AWS CodeCommit Trigger 插件:参见供应商公告
- Azure AD 插件:参见供应商公告
- 将 Bitbucket Push and Pull Request 插件升级到 2.8.4 版或更高版本
- Frugal Testing 插件:参见供应商公告
- 将 Google Login 插件升级到 1.8 版或更高版本
- Ivy 插件:参见供应商公告
- 将 Job Configuration History 插件升级到 1229.v3039470161a_d 版或更高版本
- 将 Pipeline Maven Integration 插件升级到 1331.v003efa_fd6e81 版或更高版本
- 将 Qualys Container Scanning Connector 插件升级到 1.6.2.7 版或更高版本
- 将 SSH2 Easy 插件升级到 1.6 版或更高版本
- TAP 插件:参见供应商公告

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

另见

https://jenkins.io/security/advisory/2023-09-06

插件详情

严重性: High

ID: 180576

文件名: jenkins_security_advisory_2023-09-06_plugins.nasl

版本: 1.5

类型: combined

代理: windows, macosx, unix

系列: CGI abuses

发布时间: 2023/9/7

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

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

支持的传感器: Nessus Agent, Nessus

Enable CGI Scanning: true

风险信息

VPR

风险因素: Medium

分数: 5.9

CVSS v2

风险因素: High

基本分数: 9

时间分数: 6.7

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

CVSS 分数来源: CVE-2023-41945

CVSS v3

风险因素: High

基本分数: 8.8

时间分数: 7.7

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

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

漏洞信息

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

必需的 KB 项: installed_sw/Jenkins

易利用性: No known exploits are available

补丁发布日期: 2023/9/6

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

参考资料信息

CVE: CVE-2022-46751, CVE-2023-41930, CVE-2023-41931, CVE-2023-41932, CVE-2023-41933, CVE-2023-41934, CVE-2023-41935, CVE-2023-41936, CVE-2023-41937, CVE-2023-41938, CVE-2023-41939, CVE-2023-41940, CVE-2023-41941, CVE-2023-41942, CVE-2023-41943, CVE-2023-41944, CVE-2023-41945, CVE-2023-41946, CVE-2023-41947