Skip to main content

Jenkins Azure CLI Plugin CVE-2025-64140

HIGH
OS Command Injection (CWE-78)
2025-10-29 jenkinsci-cert@googlegroups.com
8.8
CVSS 3.1 · Vendor: googlegroups
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate with Item/Configure rights
  2. Delivery
    Edit job using Azure CLI Plugin
  3. Exploit
    Inject arbitrary shell command
  4. Execution
    Plugin executes command on controller
  5. Impact
    Steal credentials and compromise CI/CD

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated Jenkins user holding Item/Configure permission, and the target controller must have the Azure CLI Plugin (version 0.9 or earlier) installed and used in a job configuration. The limiting factor is the Item/Configure privilege: the attacker must already be able to create or modify job configurations, so environments that tightly restrict job-configuration rights or do not use this plugin are not exposed. Exploitation is possible against default plugin behavior because the plugin performs no restriction on which commands it runs on the controller - no non-default setting is needed once the plugin is in use.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, base 8.8) indicates a network-reachable, low-complexity flaw requiring low privileges and no user interaction, yielding full confidentiality, integrity, and availability impact - consistent with arbitrary command execution on the Jenkins controller. The PR:L rating aligns with the description's requirement that the attacker hold Item/Configure permission, so this is an authenticated flaw, not an anonymous internet-facing one; the real-world population of attackers is therefore limited to users who already have job-configuration rights (a meaningful but non-trivial trust boundary in CI/CD environments). EPSS is low at 0.61% (48th percentile), there is no CISA KEV listing, and no public exploit was identified in the provided data, so despite the high CVSS the near-term mass-exploitation probability signaled by EPSS is modest. The signals are internally consistent - no contradiction between CVSS and the description - but the severity is driven by impact (controller code execution) rather than by ease of reaching the vulnerable function, which still demands an authenticated, privileged Jenkins account. This should be prioritized for patching in any Jenkins environment running the plugin because controller command execution enables full CI/CD compromise, but it is not an unauthenticated internet-wormable threat.

Exploit ScenarioDerived

An attacker who holds Item/Configure permission on a Jenkins instance (for example a developer or a compromised low-trust account) configures or edits a job that uses the Azure CLI Plugin, supplying crafted input so the plugin runs attacker-chosen shell commands directly on the Jenkins controller. Because the plugin does not restrict which commands execute, this yields arbitrary command execution in the controller's context, enabling credential theft and full pipeline compromise. No public proof-of-concept was identified at the time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.6% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 08, 2026

Arbitrary shell command execution on the Jenkins controller is possible through the Azure CLI Plugin 0.9 and earlier, which does not restrict which commands it runs. An authenticated Jenkins user holding Item/Configure permission can craft a job configuration that causes the plugin to execute attacker-chosen shell commands on the controller, yielding high confidentiality, integrity, and availability impact (CVSS 3.1 base 8.8, AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H); exploitation requires no user interaction and no non-default plugin setting. There is no evidence of active exploitation and no public exploit identified at time of analysis, and EPSS is low (0.61%, 48th percentile), though the required privilege is comparatively common in environments where job-configuration rights are broadly granted.

RemediationAI

Update the Jenkins Azure CLI Plugin to a version newer than 0.9 as directed by the Jenkins security advisory SECURITY-3538 (https://www.jenkins.io/security/advisory/2025-10-29/#SECURITY-3538); the exact patched version is not confirmed in the data provided here, so verify it against the advisory or the Jenkins plugin update center before relying on a specific number, and note that plugin updates do not require a Jenkins core restart. If immediate upgrade is not possible, the most effective control is to remove or disable the Azure CLI Plugin (Manage Plugins → Installed → Azure CLI Plugin → Uninstall/Disable) and invoke az through a pipeline step that runs on an agent with tightly scoped OS permissions instead; disabling the plugin breaks any existing job configuration that depends on it, so inventory usages first. Additionally, restrict Item/Configure permission to a minimal, trusted set of users (Matrix Authorization Strategy or Role-based Authorization Strategy), since this privilege is the sole gate on the attack - this reduces exposure without removing the underlying flaw and may disrupt normal job-authoring workflows. Where the plugin must remain, run job execution on an isolated agent rather than the controller with least-privilege OS accounts and network egress restrictions, acknowledging that this is a containment measure rather than a fix. Monitor Jenkins logs and controller process children for unexpected shell invocations originating from job configuration changes as a detection backstop.

Affected Packages

maven org.jenkins-ci.plugins:azure-cli no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in maven

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The flaw is a classic OS command injection (CWE-78) in Jenkins Azure CLI Plugin 0.9 and earlier, tracked as Jenkins SECURITY-3538 and published in the Jenkins security advisory of 2025-10-29. The plugin wraps the Azure CLI so that pipeline or freestyle jobs can invoke az commands, but it fails to constrain or validate the command string it passes to the shell on the Jenkins controller itself; the controller's shell then interprets the attacker-supplied content, allowing arbitrary commands to run with the Jenkins controller process's privileges. The CPE string cpe:2.3:a:jenkins:azure_cli:*:*:*:*:*:jenkins:*:* confirms this is the Jenkins plugin distribution rather than the Microsoft Azure CLI binary itself, an important distinction because the underlying Microsoft product is not the vulnerable component. The root-cause class is improper neutralization of special elements used in an OS command, i.e., missing allow-listing and no safe argument separation between the plugin layer and the shell, and the assessed CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, base 8.8) is consistent with network-reachable, low-complexity arbitrary command execution requiring only low privileges.

Know when Azure Cli 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

Vendor (googlegroups) PRIMARY 8.8 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 8.8 HIGH

Item/Configure permission is required so PR:L (not PR:N); reached over the network web UI with no user interaction, and controller command execution gives full C/I/A impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (googlegroups).

CVSS VectorVendor: googlegroups

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

DescriptionCVE.org

Jenkins Azure CLI Plugin 0.9 and earlier does not restrict which commands it executes on the Jenkins controller, allowing attackers with Item/Configure permission to execute arbitrary shell commands.

Executive ViewAI

Why It Matters

The Jenkins Azure CLI Plugin (0.9 and earlier) allows any Jenkins user who can configure jobs to run arbitrary shell commands on the Jenkins controller itself, giving that user the same level of control as a Jenkins administrator. Because the controller typically stores credentials, build secrets, and deployment keys for the whole engineering organization, a single misused configuration right could expose or corrupt the software delivery pipeline. Leadership should care because the exposure is not limited to one application: it is a path to the system that governs how code is built and shipped across the enterprise.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: disable or uninstall Azure CLI Plugin 0.9 and earlier; restrict Item/Configure and Job/Configure permissions to a minimal trusted group; run the Jenkins controller as an unprivileged OS account separated from build agents; move Azure CLI-dependent builds to isolated ephemeral agents; rotate controller-reachable credentials; audit and alert on job configuration changes and controller shell activity.

Threat Intelligence Overview

EPSS Score
0.6%
Top 52% exploitable
Prevalence
Low
niche Jenkins integration plugin, limited install base vs. core Jenkins
Data Quality
3 sources
Confidence: Low

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.6%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

45
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

Affected Products (CPE)CVE.org

cpe:2.3:a:jenkins:azure_cli:*:*:*:*:*:jenkins:*:*

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy