Jenkins 插件存在多个漏洞(2022 年 5 月 17 日)

high Nessus 插件 ID 162315

简介

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

描述

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

- Jenkins 管道:Groovy 插件 2689.v434009a_31b_f1 及更早版本允许加载沙盒管道中 Jenkins 和 Jenkins 插件的类路径上的任何 Groovy 源文件。(CVE-2022-30945)

- Jenkins Script Security 插件 1158.v7c1b_73a_69a_08 及更低版本存在跨站请求伪造 (CSRF) 漏洞,允许攻击者造成 Jenkins 向攻击者指定的 Web 服务器发送 HTTP 请求。
(CVE-2022-30946)

- 在 Jenkins Git 插件 4.11.1 及更早版本中,攻击者可以配置管道,以使用本地路径作为 SCM URL 签出 Jenkins 控制器文件系统上存储的某些 SCM 存储库,从而获取有关其他项目的 SCM 内容的受限信息。(CVE-2022-30947)

- 在 Jenkins Mercurial 插件 2.16 及更早版本中,攻击者可以配置管道,以使用本地路径作为 SCM URL 签出 Jenkins 控制器文件系统上存储的某些 SCM 存储库,从而获取有关其他项目的 SCM 内容的受限信息。(CVE-2022-30948)

- 在 Jenkins REPO 插件 1.14.0 及更早版本中,攻击者可以配置管道,以使用本地路径作为 SCM URL 签出 Jenkins 控制器文件系统上存储的某些 SCM 存储库,从而获取有关其他项目的 SCM 内容的受限信息。(CVE-2022-30949)

- 在 Jenkins WMI Windows Agents 插件 1.8 及更早版本中,Windows Remote Command 库存在缓冲区溢出漏洞,可能允许能够连接到命名管道的用户在 Windows 代理计算机上执行命令。(CVE-2022-30950)

- 在 Jenkins WMI Windows Agents 插件 1.8 及更早版本中,Windows Remote Command 库未实现访问控制,可能允许用户在不允许登录的情况下启动进程。(CVE-2022-30951)

- 在 Jenkins Pipeline SCM API for Blue Ocean 插件 1.25.3 及更早版本中,具有 Job/Configure 权限的攻击者可以利用 Jenkins 中任何攻击者指定用户的私有凭据存储区中存储的攻击者指定 ID 访问凭据。(CVE-2022-30952)

- Jenkins Blue Ocean 插件 1.25.3 及更早版本中存在跨站请求伪造 (CSRF) 漏洞,允许攻击者连接到其指定的 HTTP 服务器。(CVE-2022-30953)

- 在 Jenkins BlueOcean Plugin 1.25.3 及更早版本中,有多个 HTTP 端点未执行权限检查,从而允许具有“Overall/Read”权限的攻击者连接到其指定的 HTTP 服务器。(CVE-2022-30954)

- 在 Jenkins GitLab 插件 1.5.31 及更早版本中,有一个 HTTP 端点未执行权限检查,从而允许具有“Overall/Read”权限的攻击者枚举 Jenkins 中所存储凭据的凭据 ID。
(CVE-2022-30955)

- Jenkins Rundeck Plugin 3.6.10 及更早版本不会限制 Rundeck webhook 提交中的 URL 方案,导致攻击者可利用产生的存储型跨站脚本 (XSS) 漏洞提交构建的 Rundeck webhook 负载。(CVE-2022-30956)

- Jenkins SSH 插件 2.6.1 及更早版本中存在缺少权限检查漏洞,因此具有“Overall/Read”权限的攻击者可枚举 Jenkins 中所存储凭据的凭据 ID。(CVE-2022-30957)

- Jenkins SSH 插件 2.6.1 及更早版本中存在跨站请求伪造 (CSRF) 漏洞,允许攻击者使用其通过其他方法获取的攻击者指定凭据 ID 连接到其指定的 SSH 服务器,从而捕获存储在 Jenkins 中的凭据。(CVE-2022-30958)

- Jenkins SSH 插件 2.6.1 及更早版本中存在缺少权限检查漏洞,允许具有“Overall/Read”权限的攻击者使用通过其他方法获取的攻击者指定凭据 ID 连接到其指定的 SSH 服务器,从而捕获 Jenkins 中存储的凭据。(CVE-2022-30959)

- Jenkins Application Detector 插件 1.0.8 及更早版本不会在显示参数的视图中转义 Chois Application Version 参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用由此产生的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30960)

- Jenkins Autocomplete Parameter 插件 1.1 及更早版本不会在显示参数的视图中转义 Dropdown Autocomplete 和 Auto Complete String 参数的名称,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30961)

- Jenkins Global Variable String Parameter 插件 1.2 及更早版本不会在显示参数的视图中转义 Global Variable String 参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30962)

- Jenkins JDK Parameter 插件 1.0 及更早版本不会在显示参数的视图中转义 JDK 参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30963)

- Jenkins Multiselect Parameter 插件 1.3 及更早版本不会在显示参数的视图中转义 Multiselect 参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30964)

- Jenkins Promoted Builds (Simple) 插件 1.9 及更早版本不会在显示参数的视图中转义Promotion Level 参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30965)

- Jenkins Random String Parameter 插件 1.0 及更早版本不会在显示参数的视图中转义 Random String 参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30966)

- Jenkins Selection tasks 插件 1.0 及更早版本不会在显示参数的视图中转义 Script Selection task 变量参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30967)

- Jenkins vboxwrapper 插件 1.3 及更早版本不会在显示参数的视图中转义 VBox 节点参数的名称和描述,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30968)

- 如果受害者是管理员,Jenkins Autocomplete Parameter Plugin 1.1 和更早版本中的跨站请求伪造 (CSRF) 漏洞可让攻击者在没有沙盒保护的情况下执行任意代码。
(CVE-2022-30969)

- Jenkins Autocomplete Parameter 插件 1.1 及更早版本会以不安全的方式从视图定义中内嵌的 Javascript 引用 Dropdown Autocomplete 参数和 Auto Complete String 参数的名称,从而导致具有“Item/Configure”权限的攻击者可利用的存储型跨站脚本 (XSS) 漏洞。(CVE-2022-30970)

- Jenkins Storable Configs 插件 1.0 及更早版本未配置其 XML 解析器以阻止 XML 外部实体 (XXE) 攻击。(CVE-2022-30971)

- Jenkins Storable Configs 插件 1.0 及更早版本中存在跨站请求伪造 (CSRF) 漏洞,允许攻击者造成 Jenkins 解析使用外部实体的本地 XML 文件(例如存档的构件),从 Jenkins 控制器提取密码或执行服务器端请求伪造攻击。
(CVE-2022-30972)

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

解决方案

将 Jenkins 插件更新到以下版本:
- Application Detector 插件升级至 1.0.9 或更高版本
- Autocomplete Parameter 插件:参见供应商公告
- Blue Ocean 插件升级至 1.25.4 或更高版本
- Git 插件升级至 4.11.2 或更高版本
- GitLab 插件升级至 1.5.32 或更高版本
- Global Variable String Parameter 插件:参见供应商公告
- JDK Parameter 插件:参见供应商公告
- Mercurial 插件升级至 2.16.1 或更高版本
- Multiselect parameter 插件升级至 1.4 版或更高版本
- Pipeline SCM API for Blue Ocean 插件升级至 1.25.4 或更高版本
- Pipeline: Groovy 插件升级至 2692.v76b_089ccd026 版或更高版本
- Promoted Builds (Simple) 插件:参见供应商公告
- Random String Parameter 插件:参见供应商公告
- REPO 插件升级至 1.14.1 或更高版本
- Rundeck 插件升级至 3.6.11 或更高版本
- Script Security 插件升级到 1172.v35f6a_0b_8207e 版或更高版本
- Selection tasks 插件:参见供应商公告
- SSH 插件:参见供应商公告
- Storable Configs 插件:参见供应商公告
- vboxwrapper 插件:参见供应商公告
- WMI Windows Agents 插件升级至 1.8.1 版或更高版本

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

另见

https://jenkins.io/security/advisory/2022-05-17

插件详情

严重性: High

ID: 162315

文件名: jenkins_security_advisory_2022-05-17_plugins.nasl

版本: 1.4

类型: combined

代理: windows, macosx, unix

系列: CGI abuses

发布时间: 2022/6/16

最近更新时间: 2023/7/28

支持的传感器: Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.5

CVSS v2

风险因素: Medium

基本分数: 6.8

时间分数: 5

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

CVSS 分数来源: CVE-2022-30972

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

补丁发布日期: 2022/5/17

漏洞发布日期: 2022/1/27

参考资料信息

CVE: CVE-2022-30945, CVE-2022-30946, CVE-2022-30947, CVE-2022-30948, CVE-2022-30949, CVE-2022-30950, CVE-2022-30951, CVE-2022-30952, CVE-2022-30953, CVE-2022-30954, CVE-2022-30955, CVE-2022-30956, CVE-2022-30957, CVE-2022-30958, CVE-2022-30959, CVE-2022-30960, CVE-2022-30961, CVE-2022-30962, CVE-2022-30963, CVE-2022-30964, CVE-2022-30965, CVE-2022-30966, CVE-2022-30967, CVE-2022-30968, CVE-2022-30969, CVE-2022-30970, CVE-2022-30971, CVE-2022-30972