Skip to content
Threat Feed
critical advisory

Authentication Bypass in mcp-atlassian HTTP Transport

The mcp-atlassian package contains an authentication bypass vulnerability (CVE-2026-77244) that allows unauthenticated network-adjacent attackers to execute tools using the operator's Jira and Confluence credentials.

CVE search metadata

CVE search record: CVE-2026-77244. Severity: critical. CVSS: 10.0. KEV: no. Product: mcp-atlassian (< 0.22.0), mcp-atlassian. Brief: Authentication Bypass in mcp-atlassian HTTP Transport. Brief link: https://feed.craftedsignal.io/briefs/2026-09-mcp-atlassian-auth-bypass/

CVE search record: CVE-2026-27825. Severity: critical. CVSS: 9.0. EPSS: 12.71%. KEV: no. Product: mcp-atlassian (< 0.22.0), mcp-atlassian. Brief: Authentication Bypass in mcp-atlassian HTTP Transport. Brief link: https://feed.craftedsignal.io/briefs/2026-09-mcp-atlassian-auth-bypass/

What's new

  • 1. added coverage for mcp-atlassian Sep 23, 01:58 via ghsa
  • 2. added coverage for mcp-atlassian (< 0.22.0) Sep 23, 01:58 via ghsa
  • 3. added coverage for mcp-atlassian (< 0.22.0) Sep 23, 01:58 via ghsa
  • 4. added detection rule: Detect Unauthorized MCP Tool Execution Attempt Sep 23, 01:58 via ghsa
  • 5. added coverage for mcp-atlassian (< 0.22.0) Sep 23, 01:57 via ghsa

The mcp-atlassian Python package is vulnerable to a critical authentication bypass (CVE-2026-77244) due to improper validation in the AtlassianOpaqueTokenVerifier utility. The implementation of verify_token() explicitly accepts any non-empty string as a valid credential. Furthermore, the mcp-atlassian HTTP transport defaults to disabled OAuth proxy authentication and fails to reject requests lacking an Authorization header.

When deployed in the standard pattern (storing JIRA_API_TOKEN or CONFLUENCE_API_TOKEN in environment variables), the MCP server fails to challenge unauthenticated requests. Instead, it proceeds to invoke Jira/Confluence tool handlers using the server-side environment variables. An attacker with network reach to the MCP server can send arbitrary requests - or no credentials at all - to perform unauthorized operations on the operator's Atlassian instance. This vulnerability is significant because it grants attackers the full API privileges of the server operator, including read and write access to all accessible Jira issues and Confluence pages.

Attack Chain

  1. Attacker performs network discovery to identify an mcp-atlassian HTTP transport instance reachable on the network (e.g., via default Docker port mappings or misconfigured cloud load balancers).
  2. Attacker crafts a JSON-RPC request targeting the /mcp endpoint with the desired tool execution parameters (e.g., jira_get_issue or jira_add_comment).
  3. The request is transmitted to the server without an Authorization header, or with a dummy "Bearer" token.
  4. UserTokenMiddleware._parse_auth_header processes the request; seeing no valid client token, it passes the request context to the internal handlers without rejection.
  5. The AtlassianOpaqueTokenVerifier receives the request; if a dummy token is provided, it is accepted by the logic that validates only that the string is non-empty.
  6. The JiraFetcher or ConfluenceFetcher detects the absence of a user-supplied token in the scope state and initiates JiraConfig.from_env().
  7. The server retrieves the operator's JIRA_API_TOKEN or CONFLUENCE_API_TOKEN from the process environment variables.
  8. The tool execution is performed against the Atlassian cloud backend using the operator's identity, resulting in data exfiltration, unauthorized modification, or persistent access creation.

Impact

Successful exploitation grants an attacker full read and write access to the operator's Jira and Confluence instances. Because all API calls are made using the operator's legitimate credentials, the attacker's actions appear as authenticated operator activity in Atlassian audit logs, facilitating anti-forensics and shifting blame to the victim. Furthermore, attackers can leverage the MCP server to pivot, exfiltrate sensitive data stored in attachments or documentation, and create persistent backdoors via Jira webhooks or automation rules.

Recommendation

  1. Upgrade the mcp-atlassian package to version 0.22.0 or later immediately to patch CVE-2026-77244.
  2. For deployments not using OAuth proxy, implement strict network-level access control (e.g., firewall rules or mTLS) to restrict access to the MCP server to authorized users only.
  3. If version 0.22.0 is not immediately available, disable public exposure of the HTTP transport by binding the service to 127.0.0.1 and utilizing a secure reverse proxy (e.g., Nginx or Traefik) that enforces authentication before forwarding traffic to the MCP server.
  4. Audit Jira and Confluence audit logs for anomalous tool execution patterns or unauthorized modification of issues and automation rules originating from the host IP of the MCP server.

Immediate actions

Upgrade mcp-atlassian to 0.22.0 or higher

IT Operations 24h

Threat Hunt

Search logs for JSON-RPC method calls to Jira/Confluence tools with missing or arbitrary Authorization headers

T1190 high high confidence hunt now

Data: Application logs from the MCP server HTTP transport

Mitigations

Bind MCP server to 127.0.0.1 and restrict access via reverse proxy

immediate IT Operations

CVE-2026-77244

Detection coverage 1

Detect Unauthorized MCP Tool Execution Attempt

high

Detects exploitation attempts against CVE-2026-77243 where a client attempts to call a tool that was not authorized via ENABLED_TOOLS or TOOLSETS configuration.

sigma tactics: initial_access techniques: T1592 sources: webserver

Detection queries are available on the platform. Get full rules →