Skip to main content

MCP Atlassian EUVDEUVD-2026-84763

| CVE-2026-77248 HIGH
Path Traversal (CWE-22)
2026-09-22 GitHub_M GHSA-cc5h-2pwp-pvcc
8.6
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Reach exposed streamable-HTTP MCP endpoint
  2. Delivery
    Send request without user identity
  3. Exploit
    Operator credentials applied via fallback
  4. Execution
    Call upload_attachment with sensitive file_path
  5. Persist
    Upload host file to attacker Jira/Confluence target
  6. Impact
    Retrieve attachment and exfiltrate contents

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

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

Exploitation Conditions

Requires the MCP Atlassian server (< 0.22.0) to be running the streamable-HTTP transport and reachable by the attacker over the network, AND to be configured with global/operator Atlassian (Jira/Confluence) credentials that the UserTokenMiddleware falls back to when no user identity is supplied. Under those conditions no authentication is needed and default HTTP-transport behavior is sufficient (AV:N/AC:L/PR:N/UI:N). Exploitation is LIMITED to files readable by the MCP process account, and does not apply to stdio-only deployments or deployments that require per-user identity/tokens; there is no integrity or availability impact (confidentiality-only exfiltration).

Impact

This is a genuine remote-unauthenticated arbitrary file read with real teeth, but its practical priority is bounded by product footprint rather than by exploit maturity. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N, base 8.6) is internally coherent with the description: the streamable-HTTP transport accepts requests with no user identity and silently falls back to shared operator credentials, so PR:N is legitimately earned here - unlike the sibling file-read CVEs in the same PR#1448 batch (e.g. CVE-2026-77260/77253/77247) which required a permitted caller (PR:L). The auth-bypass fallback (root flaw CVE-2026-77244) is what promotes this from an authenticated confused-deputy issue to a fully unauthenticated one. I would question the vendor's S:C: the impact is reading files within the MCP process's own authority and re-exporting them, which is arguably S:U; treating it as S:U lowers my independent estimate to ~7.5. There is NO EPSS score, NO CISA KEV listing, and NO public exploit code referenced - only a GitHub Security Advisory, PR, commit, and release. So exploitation status is 'no public exploit identified at time of analysis.' Net: the vulnerability class and unauth vector are serious and should be patched promptly wherever this MCP server is exposed over HTTP, but the absence of exploitation signals plus the niche deployment footprint means this is a targeted-opportunity risk, not a mass-exploitation emergency.

Exploit ScenarioDerived

An MCP Atlassian server (< 0.22.0) is deployed with the streamable-HTTP transport reachable on the network and configured with shared operator Jira/Confluence credentials. An unauthenticated attacker who can reach the endpoint invokes upload_attachment with file_path set to a sensitive host file (e.g. an env file, OAuth token store, or mounted secret), targeting an attacker-chosen Jira issue or Confluence page, then downloads that attachment to retrieve the file contents. No public exploit code is referenced, but the flow is trivial to reproduce given the low attack complexity.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.5% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 22, 2026

Unauthenticated arbitrary file read in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 lets a remote network caller abuse the streamable HTTP transport, which accepts requests carrying no user identity and silently falls back to the operator's global Atlassian credentials, to force the upload_attachment tool to read any file readable by the MCP process and push its contents into an attacker-chosen Jira issue or Confluence page, where the attacker can retrieve them. Exploitation requires the server to be running the streamable HTTP transport, reachable by the attacker, and configured with shared operator credentials - stdio-only deployments and deployments that enforce per-user identity/tokens are not exposed - and impact is confidentiality-only (file exfiltration), with no integrity or availability effect. There is no evidence of active exploitation (not in CISA KEV) and no public exploit identified at time of analysis; the underlying issue is a path-traversal flaw (CWE-22) fixed in version 0.22.0, and the practical risk is bounded more by who actually deploys this MCP server over the network than by exploit maturity.

RemediationAI

Upgrade to the vendor-released patched version 0.22.0 (release v0.22.0, PR 1448, commit b041733473f95119dd539542a43c280737a8e460), which replaces the unconstrained os.path.abspath handling of upload_attachment's file_path with validate_safe_path(), confining reads to the workspace and rejecting traversal and escaping absolute paths; the same release also adds SSRF redirect validation/DNS pinning, makes the configured spaces allowlist non-overridable by caller arguments, and blocks attachment downloads into the working-directory root. If immediate upgrade is not possible, the most effective compensating control is to stop exposing the streamable HTTP transport: run the server over stdio only, or bind the HTTP endpoint to loopback and place it behind an authenticating reverse proxy that injects a verified per-user identity, since removing the identity-less path defeats the operator-credential fallback but restricts legitimate multi-user/remote agent use. If HTTP transport must stay enabled, disable reuse of global operator credentials so every request must present a valid per-user token (the trade-off is that unauthenticated or misconfigured clients will fail rather than silently run as the operator), and combine this with network ACLs/firewall rules limiting the MCP port to trusted agent hosts. Additionally, run the MCP process under a dedicated least-privilege service account with a narrow, read-only filesystem view (container, chroot, or read-only bind mounts excluding secrets, SSH material, .env files, and cloud credential stores) - this reduces what the arbitrary read can lift even if the traversal is triggered, though it does not remove the flaw. To detect prior abuse, audit Jira issues and Confluence pages created by the operator account for unexpected attachments, and review MCP HTTP access logs for requests lacking a user identity; validate any existing deployments against the advisory GHSA-cc5h-2pwp-pvcc before closing out.

Affected VersionsENISA

mcp-atlassian < 0.22.0

Affected Packages

pypi mcp-atlassian fix: 0.22.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

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

Technical ContextAI · show details

MCP Atlassian is a Model Context Protocol server that exposes Atlassian Confluence and Jira operations as tools to MCP clients (AI agents/IDEs). Two flaws chain here. First, the streamable HTTP transport path does not require a caller identity: requests arriving without one are passed through UserTokenMiddleware and then fall back to the operator's global credentials, so the middleware becomes a privilege amplifier rather than a gate - any network client reaching the endpoint inherits the server's Atlassian identity. Second, the upload_attachment tool in both the Confluence (confluence/attachments.py) and Jira (jira/attachments.py) code paths takes a caller-supplied file_path, and the pre-fix code merely converted relative paths to absolute (os.path.abspath) without confining them to a workspace, so '..' sequences and absolute paths escape the working directory - the classic CWE-22 path traversal root cause, here coupled with _get_fetcher to read the file and the Atlassian upload API to stage it remotely. The 0.22.0 fix replaces the abspath conversion with validate_safe_path(file_path), which rejects traversal and escaping absolute paths before the file is read. The same pull request bundles adjacent hardening consistent with this class of bug: SSRF response hooks and DNS pinning (mount_ssrf_pinning) on the Confluence session to close validate-then-reconnect TOCTOU and redirect-based SSRF, mandatory ANDing of the configured spaces allowlist (caller-supplied spaces_filter can only narrow, never replace, the operator's boundary), and a refusal to download attachments into the working-directory root where a written file could shadow an importable module. The CPE cpe:2.3:a:sooperset:mcp-atlassian:*:*:*:*:*:*:*:* matches every release before 0.22.0. Note also the published CVSS 8.6 uses S:C (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N); our independent assessment scopes the impact to the MCP process only and rates it S:U (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N), a high-severity confidentiality-only arbitrary file read.

Know when Mcp Atlassian 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 (GitHub_M) PRIMARY 8.6 HIGH
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 7.5 HIGH

Unauthenticated network exploit via HTTP operator-cred fallback (PR:N, AV:N, AC:L); confidentiality-only file exfiltration (C:H, I:N, A:N); impact stays within the MCP process authority so S:U rather than vendor's S:C.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

2
Patch available
Sep 22, 2026 - 20:18 EUVD
CVE Published
Sep 22, 2026 - 18:49 cve.org
HIGH 8.6

DescriptionCVE.org

MCP Atlassian is a Model Context Protocol (MCP) server for Atlassian products (Confluence and Jira). Prior to 0.22.0, the streamable HTTP transport accepts requests without a user identity and falls back to operator credentials, while upload_attachment accepts an unrestricted file_path. An unauthenticated network caller can read files available to the MCP process, upload them to an attacker-selected Jira issue or Confluence page, and retrieve the contents. The advisory traces the vulnerable input and processing flow through streamable-http, UserTokenMiddleware, upload_attachment, file_path, and _get_fetcher, which identify the affected entry points, controls, and code paths. This issue is fixed in version 0.22.0.

Technical POC Analysis

The advisory describes a two-bug chain; the CVE description flattens it to CWE-22, while the GHSA text attributes it to CWE-306 (missing authentication) chained to CWE-73/CWE-22 (external control of…

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Deployments of MCP Atlassian (sooperset/mcp-atlassian) that expose the streamable HTTP transport while relying on shared operator Atlassian credentials are exposed to arbitrary file read, letting a remote caller push the contents of any file readable by the MCP process into a Jira issue or Confluence page they control. The data at risk is whatever the integration process can read - potentially API tokens, configuration files, and other secrets that grant further access to Atlassian and connected systems. No vendor-released patch is available and no public exploit has been identified at time of analysis, but the exposure is confined to a specific, identifiable deployment pattern that leadership should have located and contained promptly.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: disable the streamable HTTP transport or restrict it to trusted networks (stdio-only deployments are not exposed); enforce per-user identity/tokens so requests without user identity are rejected instead of falling back to shared operator credentials; run the MCP process under a least-privileged account with read access limited to required paths; rotate shared Atlassian operator credentials; and monitor Jira/Confluence attachment uploads and MCP host egress for exfiltration attempts.

Threat Intelligence Overview

EPSS Score
0.5%
Top 57% exploitable
Prevalence
Low
niche open-source Atlassian MCP server, limited production footprint
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

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 Yes
EPSS 0.5%
Patch available Yes
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
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

64
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +43
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

CVE-2026-77274 HIGH POC
8.8 Sep 22

Server-side request forgery in MCP Atlassian (the Model Context Protocol server for Confluence and Jira) prior to 0.22.0

CVE-2026-77243 HIGH POC
8.8 Sep 22

MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 applies its ENABLED_TOOLS and TOOLSETS least-privilege filters onl

CVE-2026-77262 HIGH POC
8.6 Sep 22

Path traversal in MCP Atlassian releases prior to 0.22.0 lets a caller of the confluence_upload_attachment MCP tool read

CVE-2026-77255 HIGH POC
8.6 Sep 22

Arbitrary local file read leading to data exfiltration affects sooperset's MCP Atlassian server (mcp-atlassian) prior to

CVE-2026-77246 HIGH POC
8.6 Sep 22

Unauthenticated server-local file exfiltration in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 allows a remote

CVE-2026-77261 HIGH POC
8.5 Sep 22

Server-side request forgery in MCP Atlassian prior to 0.22.0 lets an attacker who controls or has already compromised th

CVE-2026-77271 HIGH POC
8.3 Sep 22

MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 lets a low-privileged authenticated MCP caller write attacker-chos

CVE-2026-77267 HIGH POC
8.3 Sep 22

Server-side request forgery in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 allows a low-privileged authenticat

CVE-2026-77257 HIGH POC
8.3 Sep 22

Arbitrary local file read in MCP Atlassian (mcp-atlassian) prior to 0.22.0 allows an authenticated MCP caller who can re

CVE-2026-77260 HIGH POC
8.3 Sep 22

Arbitrary server-local file read and exfiltration in MCP Atlassian (sooperset/mcp-atlassian) prior to 0.22.0 lets an aut

CVE-2026-77247 HIGH POC
8.3 Sep 22

Path traversal in the MCP Atlassian server (mcp-atlassian) prior to 0.22.0 allows an authenticated MCP client to read fi

CVE-2026-77251 HIGH POC
8.3 Sep 22

Information disclosure in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 allows an authenticated caller of the MC

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