Skip to main content

Publish to Bitbucket CVE-2025-64149

MEDIUM
Cross-Site Request Forgery (CSRF) (CWE-352)
2025-10-29 jenkinsci-cert@googlegroups.com
5.4
CVSS 3.1 · Vendor: googlegroups
View

Attack ChainAIDerived

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

  1. Access
    Obtain valid credentials ID out-of-band
  2. Delivery
    Lure authenticated Jenkins user to malicious page
  3. Exploit
    Forged request hits plugin connection endpoint
  4. Execution
    Plugin connects to attacker URL with stored credential
  5. Impact
    Capture exfiltrated credentials

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

Exploitation requires three concrete conditions drawn from the description: (1) the attacker must already possess valid Jenkins credentials IDs 'obtained through another method' - the flaw does not grant the IDs, it only abuses them; (2) a victim with an active, authenticated Jenkins session must be induced to trigger the forged request (the hallmark of CSRF, CWE-352); and (3) the Publish to Bitbucket Plugin version 0.4 or earlier must be installed. Limiting factors: dependence on a pre-obtained credential ID and on victim interaction materially reduce real-world exploitability despite the AV:N/AC:L rating, and impact is confined to disclosure/misuse of stored credentials (no availability impact).

Impact

This is a moderate-severity, low-priority issue in practice. The published CVSS 3.1 vector (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N, score 5.4) indicates network reach, low complexity, low-privilege prerequisites and partial confidentiality/integrity impact, but NO availability impact and an unchanged scope. The EPSS score is very low (0.21%, 10th percentile), the CVE is NOT on the CISA KEV list, and no public proof-of-concept is referenced - so exploitation status is 'no public exploit identified at time of analysis.' A notable internal inconsistency must be flagged: this is CWE-352 (CSRF), which by definition abuses an authenticated victim's session via tricking them, yet the vector lists UI:N (no user interaction) and PR:L (attacker holds low privileges) - for a classic CSRF one would expect UI:R and PR:N; verify the intended exploitation model with the Jenkins advisory. Additionally, the description states the attacker must already possess valid credential IDs 'obtained through another method,' which is a real precondition the CVSS AC:L rating arguably understates. Net: low-complexity in theory, but the dependency on pre-obtained credential IDs plus a niche plugin footprint makes this a patch-in-normal-cycle item, not an emergency.

Exploit ScenarioDerived

An attacker who has already learned a valid Jenkins credentials ID crafts a malicious web page that, when visited by a logged-in Jenkins user, submits a forged request causing the Publish to Bitbucket plugin to connect to an attacker-controlled URL using those stored credentials - leaking the secret to the attacker's server. No public exploit code is referenced, and success depends on the attacker first obtaining a usable credentials ID and the victim having an active Jenkins session.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 08, 2026

Cross-site request forgery in the Jenkins Publish to Bitbucket Plugin 0.4 and earlier allows an attacker to ride a victim's active, authenticated Jenkins session and make the plugin connect to an attacker-specified URL using attacker-specified Jenkins credentials IDs, with the result that credentials stored in Jenkins are captured by the attacker. Two preconditions materially constrain real-world exploitation: the attacker must already possess valid credential IDs 'obtained through another method' (the flaw abuses credentials, it does not disclose their identifiers), and a logged-in Jenkins user must be induced to trigger the forged request. No public exploit code has been identified at time of analysis, EPSS is 0.21% (10th percentile), and the issue is not confirmed actively exploited (no CISA KEV listing), making this a moderate-severity, low-priority item in practice.

RemediationAI

No fixed release version is identifiable from the data provided, so administrators should check the Jenkins Security Advisory SECURITY-3576 (https://www.jenkins.io/security/advisory/2025-10-29/#SECURITY-3576, mirrored at http://www.openwall.com/lists/oss-security/2025/10/29/2) for the current patched version of Publish to Bitbucket and upgrade as soon as it is published; the determination 'no vendor-released patch identified at time of analysis' reflects the absence of fix-version data in this input, not confirmation that no fix exists, and Jenkins typically ships remediated plugin releases alongside such advisories. If the plugin is not actively used for Bitbucket publishing, uninstalling it is the cleanest mitigation and eliminates the attack surface entirely; the trade-off is the loss of that build-pipeline functionality until a patched release is installed. Regardless of upgrade timing, rotate or revoke every Jenkins-stored credential that the plugin could reference (particularly Bitbucket/SCM credentials), since theft cannot be ruled out for any credential whose ID was known - expect job reconfiguration wherever those credential IDs are bound. Keep Jenkins' default CSRF crumb protection enabled and avoid weakening it, and restrict Jenkins controller access to trusted networks or place it behind a VPN/reverse proxy with authentication, since the attack still requires a logged-in victim to be lured into issuing the forged request - the trade-off is reduced accessibility for legitimate users and integrations. Finally, treat the pre-existing credential-ID disclosure as a separate incident: audit where credential IDs may have leaked (build logs, job configurations, API responses), as remediating this CVE does not undo that prerequisite.

Affected Packages

maven org.jenkins-ci.plugins:publish-to-bitbucket 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 root cause class is CWE-352 (Cross-Site Request Forgery): affected endpoints in the Jenkins Publish to Bitbucket Plugin 0.4 and earlier do not adequately tie a state-changing request to an authenticated user's intent, so a browser holding a valid Jenkins session cookie will silently submit the attacker's forged request. Jenkins normally defends plugin endpoints with its crumb (CSRF token) mechanism and by requiring POST for state-changing operations; endpoints that omit these protections - or that fail to enforce the appropriate permission check - become CSRF-reachable. Here the abused functionality is the plugin's ability to initiate an outbound connection to a Bitbucket-style URL while selecting a stored credential by ID; because the plugin resolves the supplied credential ID server-side and attaches the real secret to the outbound request, the attacker does not need to read the secret from Jenkins - it is effectively delivered to the attacker's endpoint. The affected component is captured by the CPE cpe:2.3:a:jenkins:publish_to_bitbucket:*:*:*:*:*:jenkins:*:* (Jenkins plugin distribution channel), i.e. the plugin bundle rather than the Jenkins core. Note that NVD's CVSS v3.1 vector scores this as PR:L (5.4), whereas our independent assessment scores it PR:N/UI:R; both models agree that impact is limited to confidentiality and integrity of stored credentials (C:L/I:L) with no availability impact, and neither describes a privilege-escalation or code-execution primitive. Coupled with the requirement that credential IDs already be known to the attacker, the realistic exposure is credential theft or reuse against whatever systems those Jenkins credentials authenticate to.

Know when Publish To Bitbucket 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 5.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
vuln.today AI 5.4 MEDIUM

As a CSRF, the attacker is unauthenticated (PR:N) but needs the victim to trigger the request (UI:R); credential capture yields limited C/I impact and no availability loss.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/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
Low
Integrity
Low
Availability
None

DescriptionCVE.org

A cross-site request forgery (CSRF) vulnerability in Jenkins Publish to Bitbucket Plugin 0.4 and earlier allows attackers to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Low
niche optional Jenkins plugin, limited to Bitbucket-publishing CI setups
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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Medium

Priority Score

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

Attack Technique

Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.

Affected Products (CPE)CVE.org

cpe:2.3:a:jenkins:publish_to_bitbucket:*:*:*:*:*:jenkins:*:*

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