Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain job-config edit access
-
DeliveryInject malicious classpath entry
-
ExploitAdmin copies item or updates via REST/CLI
-
ExecutionClasspath auto-approved without review
-
PersistArbitrary code runs in controller JVM
-
ImpactFull Jenkins controller compromise
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Code injection prevention, sandbox exec
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Two conditions must combine: (1) the attacker must be able to define script-security classpath entries in an item/job configuration, i.e. hold job-configure access on a controller running Script Security Plugin 1415.v9a_f9b_3a_c253d or earlier; and (2) a user with Overall/Administer permission must then either copy that item or update its configuration through the REST API or CLI, which is the specific action that auto-approves the classpath without manual review. Exploitation is LIMITED by this required privileged interaction (UI:R) and by the attacker needing pre-existing config-edit privileges (PR:L) - it is not a single-actor unauthenticated exploit; installations where only administrators can author jobs, or where admins do not copy jobs / drive config via REST/CLI, are effectively not exposed. |
| Impact | This is a genuine remote-code-execution flaw (CWE-94) in a near-ubiquitous Jenkins plugin, but its practical risk is gated by a confused-deputy precondition rather than the raw 8.0 CVSS score implying. The vendor vector CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H is internally consistent with the description: PR:L reflects that the attacker must already have enough access to define classpath entries in an item configuration, and UI:R reflects that a separate privileged user with Overall/Administer must perform the triggering action (copying the item, or updating its config via the REST API or CLI), which is what auto-approves the malicious classpath. No EPSS score, no SSVC decision data, and no KEV or POC signal are present in the input, so per precision rules this is 'no public exploit identified at time of analysis' - not active exploitation. The realistic priority is high for organizations running multi-user Jenkins controllers where lower-privileged users can edit job configs and admins routinely copy jobs or drive config changes over API/CLI, but it is materially lower where only administrators can define jobs. No signals conflict; the main limitation is the two-actor dependency, not any data contradiction. |
| Exploit ScenarioDerived | A lower-privileged Jenkins user who can edit a job configuration inserts a malicious script-security classpath entry pointing at attacker-controlled JAR/Groovy code, which normally would require explicit administrator approval. An administrator later copies that job, or pushes its configuration through the REST API or CLI, and the plugin silently auto-approves the classpath - causing the attacker's code to execute in the Jenkins controller JVM. No public proof-of-concept is identified in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 16, 2026
Arbitrary code execution in Jenkins Script Security Plugin 1415.v9a_f9b_3a_c253d and earlier: when a user with job-configure privileges defines classpath entries in an item configuration, those entries are silently auto-approved the moment a user holding Overall/Administer permission copies that item or updates its configuration through the REST API or CLI. The result is code execution inside the Jenkins controller JVM (CWE-94, CVSS 8.0), but exploitation is a two-actor, confused-deputy scenario: the attacker needs pre-existing config-edit rights (PR:L) and must wait for a privileged user to perform the copy or API/CLI update (UI:R), so installations where only administrators author jobs and never copy them or drive configuration through REST/CLI are effectively unexposed. No public exploit code or confirmed active exploitation was identified at time of analysis.
RemediationAI
Patch availability was not confirmed in the provided data: the referenced Jenkins Security Advisory 2026-09-16 (SECURITY-3897, https://www.jenkins.io/security/advisory/2026-09-16/#SECURITY-3897) is the authoritative source for the fixed Script Security Plugin release, and administrators should upgrade to the exact version listed there via the Jenkins Update Center and then restart the controller so the new plugin classloader is active. Until that upgrade is applied, compensating controls on the controller are: remove or tighten the Job/Configure (and equivalent Item/Configure) permission so that only trusted accounts can define classpath entries in item configurations, which directly removes precondition (1) but breaks self-service Pipeline authoring for non-admins; where self-service is required, keep job configuration authoring restricted to a small trusted group and audit existing item configurations for unexpected classpath entries before any copy or REST/CLI-driven update; and operationally treat item copy and REST/CLI configuration updates as privileged operations, since they are the trigger that auto-approves the classpath - restricting the Jenkins CLI port and the remote API (or disabling the CLI over HTTP and requiring authenticated API tokens with narrowly scoped permissions) reduces precondition (2) at the cost of breaking existing automation that drives job configuration programmatically. As a detection measure, review Jenkins audit logs for job-copy events and REST/CLI configuration updates that coincide with new classpath entries, and re-run Script Security approval review on any newly approved classpath entries so that the automatic approval is reversed and a human signs off.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Jenkins Script Security Plugin implements the Groovy sandbox and the script approval mechanism that decides which methods, fields, and classpath elements untrusted Pipeline/Job DSL scripts may touch; classpath entries are a particularly sensitive category because a crafted JAR or directory on the classpath lets a script load attacker-controlled classes and escape the sandbox entirely. The flaw is a logic error in the approval path (CWE-94, improper control of code generation) rather than a memory-safety bug: instead of routing the classpath entries of a copied or API/CLI-updated item through the normal manual approval queue, the plugin assumes the entries were already reviewed and automatically marks them approved. This is a classic confused-deputy pattern, where an admin's trusted action (copy item, REST/CLI configuration update) launders an untrusted attacker-supplied value into the approved state. The affected component is identified by CPE cpe:2.3:a:jenkins_project:jenkins_script_security_plugin:*, applying to the Jenkins controller JVM where the plugin is installed; the CVSS:3.1 vector AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H reflects that the attack is network-reachable and low-complexity but requires authenticated, low-privileged config access plus the victim admin's interaction, with full confidentiality, integrity, and availability impact confined to the Jenkins controller scope.
Know when Jenkins Script Security Plugin gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
Attacker needs config-edit access (PR:L) and a privileged admin action (UI:R) to trigger auto-approval; resulting code execution in the controller JVM yields full C:H/I:H/A:H at that authority (S:U).
Primary rating from Vendor (jenkins).
CVSS VectorVendor: jenkins
Lifecycle Timeline
3DescriptionCVE.org
Jenkins Script Security Plugin 1415.v9a_f9b_3a_c253d and earlier automatically approves the classpath entries in an item configuration when a user with Overall/Administer permission copies the item, or updates that configuration through the REST API or CLI, allowing attackers able to define classpath entries to execute arbitrary code in the context of the Jenkins controller JVM.
Articles & Coverage 2
Executive ViewAI
A high-severity flaw in the Jenkins Script Security Plugin (versions 1415.v9a_f9b_3a_c253d and earlier) allows code to run inside the Jenkins controller - the central system that orchestrates our software build and deployment pipeline - and no vendor patch is currently available. Exploitation requires a user who already holds job-configuration rights to plant a malicious classpath entry, plus a privileged administrator to unknowingly trigger approval by copying that job or updating it via the REST API or CLI, making this a privilege-escalation path that can convert limited CI/CD access into full control of the controller. Because the Jenkins controller typically holds credentials, source code, and deployment keys, a successful compromise could disrupt releases and expose sensitive systems; only environments where administrators exclusively author jobs and never copy configurations or drive changes through API/CLI are effectively unexposed.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict Job/Configure and Overall/Administer permissions to a minimal trusted set of administrators; prevent privileged administrators from copying item configurations authored by other users or from driving configuration changes through the REST API or CLI; review and re-baseline the Script Security Plugin approval list to identify and remove silently auto-approved classpath entries; enable Jenkins audit logging for configuration and script-approval changes and alert on anomalies; and monitor the Jenkins security advisory feed for the fixed plugin version and apply it immediately on release.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Sandbox escape in the Jenkins Script Security Plugin 1415.v9a_f9b_3a_c253d and earlier lets an authenticated user who ho
Arbitrary code execution in Jenkins Script Security Plugin 1415.v9a_f9b_3a_c253d and earlier allows an authenticated att
Sandbox escape in the Jenkins Script Security Plugin (1415.v9a_f9b_3a_c253d and earlier) allows authenticated users with
Sandbox escape leading to arbitrary code execution inside the Jenkins controller JVM affects Script Security Plugin 1415
Sandbox bypass in the Jenkins Script Security Plugin (1402.v94c9ce464861 and earlier) lets users who can supply sandboxe
Sandbox escape in the Jenkins Script Security Plugin (1415.v9a_f9b_3a_c253d and earlier) allows an authenticated Jenkins
Sandbox escape in Jenkins Script Security Plugin 1415.v9a_f9b_3a_c253d and earlier allows an authenticated Jenkins user
Sandbox escape in Jenkins Script Security Plugin 1402.v94c9ce464861 and earlier allows users permitted to run sandboxed
Arbitrary code execution in the Jenkins Script Security Plugin (versions up to and including 1415.v9a_f9b_3a_c253d) lets
Improper use of the @DataBoundConstructor annotation in Jenkins Script Security Plugin versions ≤1412.v7737b_3405f86 ena
Jenkins Script Security Plugin 1412.v7737b_3405f86 and earlier allows any low-privileged authenticated Jenkins user to d
Jenkins Script Security Plugin versions up to and including 1399.ve6a_66547f6e1 expose classpath enumeration to any user
EUVD-2026-80751
GHSA-433w-6m38-6gf6
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB