Jenkins 插件多个漏洞(2022 年 1 月 12 日)

high Nessus 插件 ID 156930

简介

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

描述

根据其自我报告的版本号,远程 Web 服务器上运行的 Jenkins 插件版本为 Jenkins Active Directory Plugin 2.25.1 之前版本、Badge Plugin 1.9.1 之前版本、Bitbucket Branch Source Plugin 746. 之前版本、Configuration as Code Plugin 1.55.1 之前版本、Conjur Secrets Plugin 1.0.9 或之前版本、Credentials Binding Plugin 1.27.1 之前版本、Debian Package Builder Plugin 1.6.11 或之前版本、Docker Commons Plugin 1.18 之前版本、HashiCorp Vault Plugin 3.8.0 之前版本、Mailer Plugin 408. 之前版本、Matrix Project Plugin 1.20 之前版本、Metrics Plugin 4.0.2.8.1 之前版本、Publish Over SSH Plugin 1.22 或之前版本、SSH Agent Plugin 1.23.2 之前版本、Warnings Next Generation Plugin 9.10.3 之前版本、Batch Task Plugin 1.19 或之前版本。因此受到多个漏洞影响:

- Jenkins 2.329 及更早版本、LTS 2.319.1 及更低版本中存在一个跨站请求伪造 (CSRF) 漏洞,该漏洞允许攻击者在未设置安全域时即可触发创建无参数作业。
(CVE-2022-20612)

- Jenkins Mailer Plugin 391.ve4a_38c1b_cf4b_ 及更低版本中存在一个跨站请求伪造 (CSRF) 漏洞,该漏洞允许攻击者利用 Jenkins 实例使用的 DNS 来解析攻击者指定的主机名。(CVE-2022-20613)

- Jenkins Mailer Plugin 391.ve4a_38c1b_cf4b_ 及更低版本中存在一个缺少权限检查漏洞,该漏洞允许拥有“全局/读取”访问权限的攻击者利用 Jenkins 实例使用的 DNS 来解析攻击者指定的主机名。
(CVE-2022-20614)

- Jenkins Matrix Project Plugin 1.19 及更早版本不会转义节点和标签名称以及标签描述中的 HTML 元字符,导致出现一个存储型跨站脚本 (XSS) 漏洞,而拥有“代理/配置”权限的攻击者可恶意利用此漏洞。(CVE-2022-20615)

- Jenkins Credentials Binding Plugin 1.27 及更早版本不会对表单验证的实现方法执行权限检查,从而允许拥有“全局/读取”访问权限的攻击者验证凭据 ID 是否引用机密文件凭据及其是否为 zip 文件。(CVE-2022-20616)

- Jenkins Docker Commons Plugin 1.17 及更低版本不会审查图像或标签的名称,导致出现一个 OS 命令执行漏洞,而拥有“项目/配置”权限或能够控制之前所配置作业的 SCM 存储库内容的攻击者可恶意利用此漏洞。(CVE-2022-20617)

- Jenkins Bitbucket Branch Source Plugin 737.vdf9dc06105be 及更低版本中存在一个缺少权限检查漏洞,该漏洞允许拥有“全局/读取”访问权限的攻击者枚举存储在 Jenkins 中凭据的凭据 ID。
(CVE-2022-20618)

- Jenkins Bitbucket Branch Source Plugin 737.vdf9dc06105be 及更低版本中存在一个跨站请求伪造 (CSRF) 漏洞,该漏洞允许攻击者使用其通过其他方法获取的指定凭据 ID 连接到其指定的 URL,从而捕获存储在 Jenkins 中的凭据。
(CVE-2022-20619)

- Jenkins SSH Agent Plugin 1.23 及更低版本中存在缺少权限检查漏洞,该漏洞允许拥有“全局/读取”访问权限的攻击者枚举存储在 Jenkins 中凭据的凭据 ID。(CVE-2022-20620)

- Jenkins Metrics Plugin 4.0.2.8 及更低版本会将其全局配置文件中未加密的访问密钥存储在 Jenkins 控制器上,而拥有 Jenkins 控制器文件系统访问权限的用户可在此查看此密钥。(CVE-2022-20621)

- Jenkins Active Directory Plugin 2.25 及更低版本在大多数配置中都不会加密 Jenkins 控制器和 Active Directory 服务器之间的数据传输。(CVE-2022-23105)

- Jenkins Configuration as Code Plugin 1.55 及更低版本使用非常量时间比较函数来验证身份验证令牌,这会允许攻击者使用统计方法获取有效的身份验证令牌。(CVE-2022-23106)

- Jenkins Warnings Next Generation Plugin 9.10.2 及更低版本在配置自定义 ID 时不限制文件名,这会允许拥有“项目/配置”权限的攻击者在 Jenkins 控制器文件系统上写入和读取具有硬编码后缀的特定文件。(CVE-2022-23107)

- Jenkins Badge Plugin 1.9 及更低版本不会在创建徽标时转义描述,也不会检查是否允许使用相关协议,这就导致出现一个存储型跨站脚本 (XSS) 漏洞,而拥有“项目/配置”权限的攻击者可恶意利用此漏洞。(CVE-2022-23108)

- Jenkins HashiCorp Vault Plugin 3.7.0 及更早版本不会在管道构建日志或管道步骤描述中遮掩 Vault 凭据(适用于已安装 Pipeline: Groovy Plugin 2.85 或更高版本的情况)。(CVE-2022-23109)

- Jenkins Publish Over SSH Plugin 1.22 及更低版本不会转义 SSH 服务器名称,这就导致出现一个存储型跨站脚本 (XSS) 漏洞,而拥有“全局/管理员”权限的攻击者可恶意利用此漏洞。(CVE-2022-23110)

- Jenkins Publish Over SSH Plugin 1.22 及更低版本中存在一个跨站请求伪造 (CSRF) 漏洞,该漏洞允许攻击者使用其指定的凭据连接到其指定的 SSH 服务器。
(CVE-2022-23111)

- Jenkins Publish Over SSH Plugin 1.22 及更低版本中存在一个缺少权限检查漏洞,该漏洞允许拥有“全局/读取”访问权限的攻击者使用其指定的凭据连接到其指定的 SSH 服务器。
(CVE-2022-23112)

- Jenkins Publish Over SSH Plugin 1.22 及更低版本会验证文件名是否明确存在,这就导致出现一个路径遍历漏洞,而拥有“项目/配置”权限的攻击者可利用此漏洞发现 Jenkins 控制器文件的名称。(CVE-2022-23113)

- Jenkins Publish Over SSH Plugin 1.22 及更低版本会将其全局配置文件中未加密的密码存储在 Jenkins 控制器上,而拥有 Jenkins 控制器文件系统访问权限的用户可在此查看此密码。(CVE-2022-23114)

- Jenkins Batch Task Plugin 1.19 及更低版本中存在跨站请求伪造 (CSRF) 漏洞,该漏洞允许拥有“全局/读取”访问权限的攻击者检索日志、构建或删除批处理任务。(CVE-2022-23115)

- Jenkins ConjarSecrets Plugin 1.0.9 及更低版本实现的功能,允许攻击者控制代理进程解密通过另一种方法获取的存储在 Jenkins 中的机密信息。
(CVE-2022-23116)

- Jenkins ConjarSecrets Plugin 1.0.9 及更低版本实现的功能,允许攻击者控制代理进程解密通过另一种方法获取的存储在 Jenkins 中的机密信息。
(CVE-2022-23117)

- Jenkins Debian Package Builder Plugin 1.6.11 及更早版本的实现功能允许代理在攻击者指定的控制器路径上调用命令行 `git`,从而允许攻击者通过控制代理进程来调用控制器上的任意 OS 命令。(CVE-2022-23118)

请注意,Nessus 尚未测试此问题,而是只依靠应用程序自我报告的版本号来判断。

解决方案

将 Warnings Next Generation Plugin 升级到 9.10.3 或更高版本,将 SSH Agent Plugin 升级到 1.23.2 或更高版本,将 Metrics Plugin 升级到 4.0.2.8.1 或更高版本,将 Matrix Project Plugin 升级到 1.20 或更高版本,将 Mailer Plugin 升级到 408. 或更高版本,将 HashiCorp Vault Plugin 升级到 3.8.0 或更高版本,将 Docker Commons Plugin 升级到 1.18 或更高版本,将 Credentials Binding Plugin 升级到 1.27.1 或更高版本,将 Configuration as Code Plugin 升级到 1.55.1 或更高版本,将 Bitbucket Branch Source Plugin 升级到 746. 或更高版本,将 Badge Plugin 升级到 1.9.1 或更高版本,将 Active Directory Plugin 升级到 2.25.1 或更高版本

另见

https://jenkins.io/security/advisory/2022-01-12

插件详情

严重性: High

ID: 156930

文件名: jenkins_security_advisory_2022-01-12_plugins.nasl

版本: 1.8

类型: combined

代理: windows, macosx, unix

系列: CGI abuses

发布时间: 2022/1/21

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

配置: 启用全面检查

支持的传感器: Nessus Agent, Nessus

风险信息

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-2022-23118

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:cloudbees:jenkins, cpe:/a:jenkins:jenkins

必需的 KB 项: installed_sw/Jenkins

易利用性: No known exploits are available

补丁发布日期: 2022/1/12

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

参考资料信息

CVE: CVE-2022-20612, CVE-2022-20613, CVE-2022-20614, CVE-2022-20615, CVE-2022-20616, CVE-2022-20617, CVE-2022-20618, CVE-2022-20619, CVE-2022-20620, CVE-2022-20621, CVE-2022-23105, CVE-2022-23106, CVE-2022-23107, CVE-2022-23108, CVE-2022-23109, CVE-2022-23110, CVE-2022-23111, CVE-2022-23112, CVE-2022-23113, CVE-2022-23114, CVE-2022-23115, CVE-2022-23116, CVE-2022-23117, CVE-2022-23118

IAVA: 2022-A-0027-S, 2022-A-0084-S