Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as permitted MCP caller
-
DeliveryInvoke upload_attachment with file_path to server secret
-
ExploitServer reads out-of-workspace file
-
ExecutionBytes uploaded to Atlassian issue/page
-
ImpactRetrieve attachment to exfiltrate credentials
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 (1) the MCP server deployed in HTTP or multi-user mode - not the single-user stdio mode - so the client-to-server filesystem boundary actually exists and is meaningful; (2) a permitted/authenticated MCP caller able to invoke the jira_upload_attachment or confluence_upload_attachment tools (PR:L); and (3) shared operator credentials so the caller's uploads land in an Atlassian space the caller can read back. The specific attacker-controlled input is the file_path argument, which pre-fix was only run through os.path.abspath() rather than confined to the workspace, letting absolute or traversal paths escape CWD. Limiting factors: exploitation is confined to files readable by the MCP process, yields disclosure (and incidental write of stolen bytes into Atlassian) but no code execution or availability impact, and single-user local stdio deployments are not meaningfully exposed. |
| Impact | This is a genuine-but-conditional risk, not a top-tier emergency. The vendor CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N, 7.1 HIGH) is internally consistent with the description: network-reachable, low-complexity, but requiring a permitted (authenticated) caller - PR:L is correct because the attacker must already be an authorized MCP client, and exploitation only crosses a security boundary in HTTP or multi-user deployments. No EPSS score, no CISA KEV listing, and no public POC are present in the input, so all three exploitation-likelihood signals are absent - status is 'no public exploit identified at time of analysis.' The impact is primarily confidentiality (C:H) with only incidental integrity (I:L, from writing the exfiltrated bytes into an Atlassian attachment) and no availability impact, which matches a file-disclosure primitive rather than RCE. Real-world priority is dampened by two structural gates: the affected product is a niche open-source MCP server, and the dangerous path only opens when the server runs in a shared-credential HTTP/multi-user mode rather than the common single-user stdio mode. There is no conflict between the CVSS vector and the description; the main caveat is that severity hinges entirely on deployment topology, which raw CVSS cannot capture. |
| Exploit ScenarioDerived | An MCP server for Confluence/Jira is deployed in HTTP or multi-user mode with shared operator credentials. A permitted-but-untrusted caller invokes jira_upload_attachment or confluence_upload_attachment with file_path set to a server-local path such as an OAuth token file, .env, or a mounted Kubernetes secret; the server reads those bytes and uploads them to Atlassian, where the caller reads them back. No public exploit code is identified, but the code path is documented in the fixing PR #1448 diff. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 22, 2026
MCP Atlassian server versions prior to 0.22.0 allow an authenticated MCP caller to read arbitrary files from the server host by supplying an absolute or traversal path to the file_path argument of the jira_upload_attachment or confluence_upload_attachment tools, whose bytes are then uploaded into Atlassian and can be read back by the same caller. Exploitation is conditional: it requires the server to be deployed in HTTP or multi-user mode (not single-user stdio), a permitted caller able to invoke the upload tools (CVSS PR:L), and shared operator credentials so the exfiltrated content lands where the attacker can retrieve it; impact is confidentiality-focused (C:H) with limited integrity effect (I:L) and no availability impact. No public exploit code has been identified at time of analysis and the issue is not confirmed actively exploited (CISA KEV), though EPSS context was not provided; the vendor-released fix is version 0.22.0.
RemediationAI
Vendor-released patch: upgrade MCP Atlassian to version 0.22.0 or later, which replaces os.path.abspath() handling of file_path with validate_safe_path() so absolute and traversal paths escaping the workspace are rejected; confirm the upgrade against the release notes at https://github.com/sooperset/mcp-atlassian/releases/tag/v0.22.0 and the advisory https://github.com/sooperset/mcp-atlassian/security/advisories/GHSA-vc25-24vv-fxxm. If upgrading is not immediately possible, the most effective compensating control is to avoid exposing the server over HTTP or in multi-user mode and instead run it in single-user stdio mode, where the cross-boundary filesystem exposure is not meaningful; this removes the attack path at the cost of the shared/multi-tenant functionality. Alternatively, restrict who can invoke the jira_upload_attachment and confluence_upload_attachment tools and require distinct per-user Atlassian credentials rather than shared operator credentials, so an attacker cannot read back exfiltrated attachment bytes - the trade-off is loss of the shared-credential deployment model and added credential management overhead. Additional containment: run the MCP process under a dedicated least-privilege OS account or container with no mounted secrets, config files, or service credentials readable by that identity, and mount only the intended upload workspace, which reduces blast radius but adds operational complexity. Note that the same upstream fix also hardens the Confluence CQL spaces filter and SSRF/DNS-rebinding handling, so partial backports of only the path validation may leave those related weaknesses in place.
Affected VersionsENISA
Affected Packages
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 bridges MCP clients to Atlassian Confluence and Jira APIs. The vulnerability is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory, i.e. path traversal): the upload_attachment paths in src/mcp_atlassian/jira/attachments.py and src/mcp_atlassian/confluence/attachments.py accepted a caller-supplied file_path and, prior to the fix, merely normalized it with os.path.abspath() when relative instead of confining it to a workspace root. Because abspath resolves but does not restrict, absolute paths such as /etc/... or traversal sequences escaping the current working directory were honored, letting the MCP process read any file its own OS user could read and transmit those bytes to Atlassian as an attachment. The upstream fix replaces abspath normalization with validate_safe_path(), which rejects traversal and absolute paths that escape the CWD. The same pull request (sooperset/mcp-atlassian#1448, commit b041733473f95119dd539542a43c280737a8e460) bundles related hardening: SSRF redirect hooks and DNS pinning against rebinding in the Confluence client, an enforced spaces allowlist in CQL search so a caller-supplied spaces_filter can only narrow and never replace the operator's filter, and a refusal to download attachments into the working-directory root to prevent overwriting importable modules (GHSA-6vmq). The affected package is CPE cpe:2.3:a:sooperset:mcp-atlassian:*:*:*:*:*:*:*:* (all releases before 0.22.0), with the vulnerable entry points explicitly traced through jira_upload_attachment, confluence_upload_attachment, file_path, and the server-local filesystem.
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
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N
Network-reachable MCP tool needs an authenticated permitted caller (PR:L); arbitrary server-file read gives C:H, incidental write to Atlassian gives I:L, no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
MCP Atlassian is a Model Context Protocol (MCP) server for Atlassian products (Confluence and Jira). Prior to 0.22.0, Jira and Confluence attachment upload tools accept arbitrary local filesystem paths and send the selected bytes to Atlassian. In HTTP or multi-user deployments, a caller can cross the client-to-server filesystem boundary and disclose configuration, credentials, mounted secrets, or other files readable by the MCP process. The advisory traces the vulnerable input and processing flow through jira_upload_attachment, confluence_upload_attachment, file_path, and server-local filesystem, which identify the affected entry points, controls, and code paths. This issue is fixed in version 0.22.0.
Technical POC Analysis
CWE-22 (Improper Limitation of a Pathname to a Restricted Directory).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Organizations running self-hosted MCP Atlassian server releases older than 0.22.0 may expose files from the underlying server host to anyone holding a valid MCP caller account, because the Jira and Confluence attachment-upload tools accept a caller-supplied file path without adequate validation. The exposure requires an HTTP or multi-user deployment plus shared operator credentials, but where those conditions hold the result is direct disclosure of configuration, secrets, or other sensitive files resident on that host. Leadership should care because the affected service typically holds the most privileged Atlassian and infrastructure credentials in the environment, and the risk is concentrated in a small number of internally operated deployments that can be identified and remediated quickly.
Apply vendor patch (upgrade to MCP Atlassian server 0.22.0 or later). Until the upgrade is completed, restrict or disable the jira_upload_attachment and confluence_upload_attachment tools, limit MCP caller access to fully trusted identities, rotate shared operator credentials, and avoid running the server in multi-user mode.
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
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
More in Mcp Atlassian
View allServer-side request forgery in MCP Atlassian (the Model Context Protocol server for Confluence and Jira) prior to 0.22.0
MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 applies its ENABLED_TOOLS and TOOLSETS least-privilege filters onl
Path traversal in MCP Atlassian releases prior to 0.22.0 lets a caller of the confluence_upload_attachment MCP tool read
Unauthenticated arbitrary file read in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 lets a remote network calle
Arbitrary local file read leading to data exfiltration affects sooperset's MCP Atlassian server (mcp-atlassian) prior to
Unauthenticated server-local file exfiltration in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 allows a remote
Server-side request forgery in MCP Atlassian prior to 0.22.0 lets an attacker who controls or has already compromised th
MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 lets a low-privileged authenticated MCP caller write attacker-chos
Server-side request forgery in MCP Atlassian (sooperset/mcp-atlassian) before 0.22.0 allows a low-privileged authenticat
Arbitrary local file read in MCP Atlassian (mcp-atlassian) prior to 0.22.0 allows an authenticated MCP caller who can re
Arbitrary server-local file read and exfiltration in MCP Atlassian (sooperset/mcp-atlassian) prior to 0.22.0 lets an aut
Path traversal in the MCP Atlassian server (mcp-atlassian) prior to 0.22.0 allows an authenticated MCP client to read fi
EUVD-2026-84742
GHSA-vc25-24vv-fxxm
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB