Jenkins 修复 15 个漏洞,其中包括远程代码执行漏洞
sec随谈
sec随谈
sec随谈
2026年10月29日 09:18
北京
去阅读
内容摘要
Jenkins 项目在 2026 年 10 月 28 日的安全公告中修复了 15 个漏洞,其中有几个可导致 Jenkins 控制器上的远程代码执行。按 Jenkins 的评级,13 个为高危,2 个为中危。
只有低级别权限的攻击者就可能执行代码、读写文件或接管管理员账户。其中一个竞态条件漏洞甚至能让未经认证的攻击者在初始化设置期间创建管理员账户。请立即升级到 Jenkins 2.588 或 LTS 2.580.2。
为何值得关注
Jenkins 控制器上存有构建密钥、凭据和流水线代码,控制器一旦被远程执行代码,整个软件供应链都可能暴露。这些漏洞中有许多只需要 Overall/Read 权限,对已经拥有普通账户的攻击者来说,利用门槛很低。
值得一提的是,15 个问题中有 13 个由 Anthropic 的开源安全项目(OSS program)报告或联合报告,另外 2 个来自欧盟委员会赞助的 Jenkins 漏洞赏金计划。
严重程度
按公告中给出的 CVSS 3.1 向量:
- 远程代码执行、文件读写和代理节点路径遍历类漏洞:8.8 分。
- 设置向导竞态条件漏洞:8.1 分,因为利用时需要精确把握时机。
- 两个中危问题:4.3 分。
攻击原理
反序列化与远程代码执行漏洞
CVE-2026-117612 针对 XStream 反序列化。根据官方公告,相关转换器\"不会对 resolves-to 属性引用的类应用反序列化过滤器\",这会\"让攻击者在反序列化过程中实例化任意类型,可能导致远程代码执行\"。
同样,CVE-2026-117614 能在旧版代理节点配置中绕过启动命令审批。公告警告,拥有 Agent/Configure 权限的用户可以借此\"在 Jenkins 控制器 JVM 的上下文中执行任意代码\"。
文件读写漏洞
另有几个漏洞会滥用控制器的文件系统:
- CVE-2026-117615:复制重命名后的项目时会跟随符号链接,可导致任意文件读取。
- CVE-2026-117616:代理节点名称中存在路径遍历,可覆盖 config.xml 文件。
- CVE-2026-117617:构建产物解压过程中存在竞态条件,可在控制器上任意位置写入文件。
账户接管漏洞
- CVE-2026-117618:利用设置向导中的竞态条件。公告解释,该漏洞\"允许未经认证的攻击者在初始账户被替换期间创建管理员账户\"。
- CVE-2026-117620:攻击者在\"管理旧数据\"(Manage Old Data)功能中植入一条警告。管理员一旦按照警告进行操作,攻击者就能覆盖其他用户的密码。
- CVE-2026-117619:被盗的 API 令牌被撤销后,仍能借助\"记住我\"Cookie 继续使用。
XSS 与信息泄露
有 4 个漏洞属于跨站脚本(XSS),其中 2 个可以由已被攻陷的代理节点触发。此外,两个中危问题会泄露 HTTP 代理设置和 JENKINS\_HOME 中的文件名。
受影响版本
- Jenkins 每周版 2.587 及更早版本
- Jenkins LTS 2.580.1 及更早版本
补丁与缓解措施
请升级到 Jenkins 2.588 或 LTS 2.580.2。这两个版本还新增了 XStream 类型权限控制和更严格的集合类型检查。如果新检查导致兼容性问题,公告列出了可以逐项关闭这些检查的 Java 系统属性。
打补丁之前,建议先做两件事:
- 检查哪些用户持有 Overall/Read 和 Configure 权限。
- 启用内容安全策略(CSP)防护。公告称,在 Jenkins 2.539 及 LTS 2.541.1 或更新版本上,CSP 可以缓解其中几个 XSS 问题。
参考链接:
https://www.jenkins.io/security/advisory/2026-10-28/
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论