/

CVE-2026-77255

Severity:

HIGH RISK

(8.6)

Path Traversal (CWE-22) in MCP Atlassian Jira Server

CVE-2026-77255

Analyzed

Vulnerability type

Category:

Path Traversal

CWE:

CWE-22, CWE-441

Impact:

Arbitrary Local File Read and Data Exfiltration

Severity:

HIGH RISK

(8.6)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

A path traversal vulnerability in MCP Atlassian allows a caller to cause the Jira update_issue workflow to read arbitrary local files and attach them to Jira issues. The risk arises when attachment paths are accepted and passed to upload handling without validating that they remain within an approved workspace, potentially enabling sensitive-data exfiltration through the server.

Affected context

The issue affects MCP Atlassian deployments using Jira issue updates with attachments when caller-controlled attachment values are converted into local file paths. Risk is present where the server can access sensitive files and the attachment workflow does not enforce workspace or path-boundary validation before reading and uploading them.

Exploit preconditions

  • Attack surface: The MCP Jira update_issue operation and its attachment-handling workflow
  • Required access: Ability to invoke the affected MCP operation and provide attachment references
  • Trigger point: Processing of the attachments argument through upload_attachment and file_path
  • Why exploitation is possible: Caller-controlled paths are used to read local files without sufficient validation that they remain within an authorized workspace
  • Environmental dependency: The server process must have read access to the targeted files and permission to attach content to a Jira issue

Why this happens

The underlying bug is insufficient path validation at a file-access boundary. The attachment argument is converted into a local path and routed to upload logic without reliably constraining it to an approved directory or rejecting traversal outside that boundary. This maps primarily to CWE-22: Improper Limitation of a Pathname to a Restricted Directory, with CWE-441: Unintended Proxy or Intermediary ('Confused Deputy') describing how the MCP server performs privileged file access on behalf of the caller.

Potential impact

  • An attacker may read sensitive local files accessible to the MCP server
  • File contents could be uploaded to Jira and exfiltrated through an authorized integration
  • Credentials, configuration data, source code, or tokens could be exposed
  • The server may act as a confused deputy across trust boundaries
  • Downstream Jira users or systems could receive unauthorized attachments

General mitigation guidance

Mitigation should focus on enforcing a strict trust boundary between caller-provided attachment references and local filesystem access.

Common defensive patterns include:

  • Accepting only workspace-relative identifiers or server-managed file handles rather than arbitrary paths
  • Canonicalizing paths before access and verifying that they remain under an approved, non-sensitive directory
  • Rejecting traversal components, symbolic-link escapes, device files, and unexpected path formats
  • Applying allowlists for permitted attachment locations and file types
  • Separating file selection from file upload authorization
  • Running the MCP server with least-privilege filesystem permissions and minimal access to secrets
  • Avoiding implicit file reads when a caller supplies attachment metadata
  • Logging and authorizing attachment access independently from Jira issue updates

How teams detect issues like this

Detection approaches can include:

  • Static analysis for user-controlled values flowing into filesystem APIs, path joins, or upload functions
  • Code review checks for canonicalization performed after file access, or for missing directory-boundary validation
  • Data-flow tracing from MCP tool arguments through update_issue, attachment handlers, and file-reading operations
  • Tests covering traversal sequences, absolute paths, symbolic links, alternate path representations, and sensitive locations
  • Runtime monitoring for unusual file reads followed by outbound Jira attachment uploads
  • Policy enforcement requiring approved workspace roots and denying server access to credential and system directories
  • Neutral automated code-review rules that flag filesystem access based on untrusted tool parameters

Sources

SourceLink
github.comgithub.com/sooperset/mcp-atlassian/commit/b041733473f95119dd539542a43c280737a8e460
github.comgithub.com/sooperset/mcp-atlassian/pull/1448
github.comgithub.com/sooperset/mcp-atlassian/releases/tag/v0.22.0
github.comgithub.com/sooperset/mcp-atlassian/security/advisories/GHSA-2xj6-xx86-cwwc

Frequently asked

questions

It can be triggered through the MCP interface when an attacker or untrusted caller can invoke the affected Jira operation. Exploitability still depends on the server being able to read the targeted local file and upload content to Jira.

Direct filesystem login is not necessarily required. The important prerequisite is access to the MCP operation that accepts the attachment input, combined with the server's filesystem permissions.

Treat attachment references as untrusted input, restrict them to canonical paths beneath an approved workspace, and prefer server-managed file identifiers over caller-supplied local paths.

Apply least-privilege filesystem permissions, enforce path-boundary checks before every read, separate file access authorization from upload authorization, and test tool inputs for traversal and confused-deputy behavior.

Find out what's already
exploitable in your codebase.