highCVSS 8.8Vulnerability

CVE-2026-77243

### Summary `ENABLED_TOOLS` and `TOOLSETS` filters are enforced at `tools/list` time only. `tools/call` dispatches from the full unfiltered tool registry (73 tools). Any user with access to the server endpoint that knows a tool name can invoke it directly. Tool names are not secret since mcp-atlassian is open source. Any direct JSON-RPC call bypasses the restriction entirely. `READ_ONLY_MODE` is **not** affected: it has dual enforcement at list time (`_list_tools_mcp`) and call time `@check_write_access decorator`. The developers applied the correct pattern to `READ_ONLY_MODE` but not to `ENABLED_TOOLS` or `toolsets` - confirming this is an implementation oversight. ### Impact Any user with access to the MCP server's HTTP endpoint can invoke any of the 73 registered tools regardless of `ENABLED_TOOLS` or `TOOLSETS` configuration - including write and delete operations on Jira issues, Confluence pages, etc. Operators deploying mcp-atlassian via Streamable HTTP rely on `ENABLED_TOOLS` to enforce least-privilege access; the bypass invalidates that model entirely. The security impact concentrates in multi-user / HTTP-transport deployments, where the tool filter is a trust boundary between clients. In a single-user stdio deployment there is no second principal to defend against. ### Details In `src/mcp_atlassian/servers/main.py`, AtlassianMCP overrides `_list_tools_mcp` and applies the `TOOLSETS` and `ENABLED_TOOLS` filters before returning the tool list to clients. The `_call_tool_mcp` handler is not overridden. FastMCP's default `_call_tool_mcp` resolves the tool from the local tool manager / mounted servers, the full unfiltered inventory, so the filters never apply at call time. ### Proof of Concept All calls are issued against the HTTP transport, with `ENABLED_TOOLS=jira_search` configured - only `jira_search` should be reachable. Step 1 - negative control: tools/list correctly filters by ENABLED_TOOLS: ``` req → tools/list ← { "tools": [ { "name": "jira_se

Properties

ghsa_id
GHSA-3r68-hf9h-887v
summary
MCP Atlassian: ENABLED_TOOLS / Toolset authorization bypass
severity
high
cvss_score
8.8
cve_id
CVE-2026-77243
cvss_vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
signal_observed_at
2026-09-23T04:35:57+00:00
is_ghsa_only
false
ghsa_published
2026-09-22T20:34:55Z
source_url
https://github.com/advisories/GHSA-3r68-hf9h-887v
ghsa_updated
2026-09-22T20:34:56Z

Related Entities (4)

AFFECTS (1)

[Software]pip/mcp-atlassian

HAS_WEAKNESS (1)

[Weakness]Missing Authorization

REPORTED_BY (1)

[Source]GitHub Advisory Database

VULNERABLE_TO (1)

[Software]pip/mcp-atlassian

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-77243 (CVSS 8.8) — Ninja Signal Threat Intelligence | Ninja Signal