Severity by source
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Network-reachable but needs an authenticated script author (PR:L) and a suitable classpath gadget (AC:H); successful escape yields full controller code execution (C/I/A:H).
Primary rating from Vendor (jenkins).
CVSS VectorVendor: jenkins
Lifecycle Timeline
3DescriptionCVE.org
Jenkins Script Security Plugin 1402.v94c9ce464861 and earlier does not reject Groovy AST transformation annotations carrying an extensions member, allowing attackers able to run sandboxed Groovy scripts to execute code outside the sandbox if a suitable script is present on the classpath of the component that evaluates the script.
Articles & Coverage 2
AnalysisAI
Sandbox escape in Jenkins Script Security Plugin 1402.v94c9ce464861 and earlier allows users permitted to run sandboxed Groovy scripts to execute arbitrary code outside the sandbox. The plugin fails to reject Groovy AST transformation annotations that carry an 'extensions' member, so an attacker can point that member at a suitable class already on the evaluating component's classpath and have it run outside sandbox restrictions. No public exploit identified at time of analysis, and SSVC exploitation status is 'none'; EPSS is low at 0.39%.
Technical ContextAI
The plugin implements the Groovy sandbox that underpins Jenkins Pipeline, Job DSL, and other Script Console-adjacent features, using a Groovy compiler transformation to intercept and vet method calls. Groovy supports local AST (Abstract Syntax Tree) transformation annotations, and such annotations can specify an 'extensions' member naming additional transformation classes to load and execute at compile time. Because the plugin did not reject annotations bearing this 'extensions' member, an attacker-supplied script could reference a transformation class present on the classpath, causing code to run during compilation before or outside the sandbox's runtime interception. This is a classic CWE-693 Protection Mechanism Failure: the sandbox exists but a bypass path around it was left open. The single affected component is cpe:2.3:a:jenkins_project:jenkins_script_security_plugin, which is a dependency of dozens of other Jenkins plugins.
RemediationAI
Upgrade the Jenkins Script Security Plugin to the fixed release published with advisory SECURITY-3793 (https://www.jenkins.io/security/advisory/2026-06-24/#SECURITY-3793); the advisory is the authoritative source for the exact patched version, which is a version later than 1402.v94c9ce464861 (verify the precise build number in the advisory before deploying, as it is not independently confirmed in this dataset). As an interim compensating control until patching, restrict who can author or run Groovy scripts by tightening the 'Overall/Administer' and script approval permissions so that only trusted administrators can submit sandboxed scripts, and require manual script approval rather than allowing arbitrary sandboxed submissions - the trade-off is added friction for legitimate pipeline authors. Reducing the number of unnecessary plugins on the controller's classpath also shrinks the pool of usable gadget classes, at the cost of removing functionality. Avoid exposing the Jenkins controller directly to untrusted networks.
Sandbox bypass in the Jenkins Script Security Plugin (1402.v94c9ce464861 and earlier) lets users who can supply sandboxe
Jenkins Script Security Plugin versions up to and including 1399.ve6a_66547f6e1 expose classpath enumeration to any user
Same weakness CWE-693 – Protection Mechanism Failure
View allSame technique Information Disclosure
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-38761
GHSA-cfj9-2vgr-hpxp