
Informationen über CVE-2026-27825 & CVE-2026-27826, entdeckt von Pluto Security, sowie ein Bash-Skript zur Identifizierung verwundbarer mcp-atlassian-Instanzen, das eine automatische Aktualisierung auf eine behobene Version ermöglicht.
Zwei kritische Schwachstellen in mcp-atlassian, einem der beliebtesten MCP-Server im Ökosystem (4.4K+ GitHub-Sterne, 4M+ Downloads).
Entdeckt vom Team bei Pluto Security.
| CVE | CVSS | Typ | Beschreibung |
|---|
| CVE-2026-27825 | 9.1 Kritisch | Beliebiger Datei-Schreibzugriff / RCE | Pfad-Traversal beim Herunterladen von Anhängen ermöglicht das Schreiben beliebiger Dateien auf das Host-Dateisystem |
| CVE-2026-27826 | 8.2 Hoch | SSRF durch Header-Injection | Nicht validierte URL-Header ermöglichen Angreifern, den MCP-Server als Proxy in interne Netzwerke zu nutzen |
Betroffene Versionen: < 0.17.0 mit HTTP-Transport (streamable-http oder sse)
Behoben in: v0.17.0
Wenn mcp-atlassian mit HTTP-Transport läuft, bindet es an 0.0.0.0 (alle Netzwerkschnittstellen) ohne Authentifizierung. Jedes Gerät im selben Netzwerk — ein geteiltes Büro-WLAN, ein Co-Working-Space, eine Cloud-VPC — kann ohne Anmeldedaten auf eines seiner 40+ Tools zugreifen.
CVE-2026-27825 ermöglicht einem Angreifer, beliebige Dateien auf dem Host zu schreiben: eine Reverse-Shell in ~/.bashrc platzieren, SSH-Schlüssel zu ~/.ssh/authorized_keys hinzufügen oder einen Cron-Job einrichten — was zu vollständiger Remote-Codeausführung führt.
CVE-2026-27826 verwandelt den MCP-Server in einen SSRF-Proxy: Der Angreifer kann Cloud-Metadata-Endpunkte (169.254.169.254) erreichen, interne Dienste scannen und das Netzwerk des Opfers kartieren — alles vom eigenen Rechner des Opfers aus.
Verwenden Sie das Update-Skript, um Ihr System zu scannen:
# Laden Sie das Skript herunter oder klonen Sie dieses Repository
# Prüfen Sie, ob Sie betroffen sind (nur lesend, nimmt keine Änderungen vor)
./update-mcp-atlassian.sh --check-only
# Zusätzlich MCP-Client-Konfigurationen scannen (Claude Desktop, Cursor, VS Code)
./update-mcp-atlassian.sh --check-only --scan
| Methode | Was geprüft wird |
|---|---|
| pip / pip3 | System- oder Virtualenv-Installationen über pip show |
| uv tool | Tools, die über uv tool install installiert wurden |
| Quellcode-Checkouts | Durchsucht ~ nach pyproject.toml-Dateien, die auf mcp-atlassian verweisen |
| Virtualenvs | Durchsucht ~ nach site-packages/mcp_atlassian-Verzeichnissen |
| Docker-Images | Images, die auf mcp-atlassian passen |
| MCP-Client-Konfigurationen | (mit --scan) Claude Desktop, Cursor, VS Code, Claude Code-Einstellungen |
=== mcp-atlassian Security Update Check ===
CVE-2026-27825 (CVSS 9.1) + CVE-2026-27826 (CVSS 8.2)
Sichere Version: >= 0.17.0
--- Suche nach mcp-atlassian-Installationen ---
[!!] pip: 0.16.1 (VERWUNDBAR) -- /usr/local/lib/python3.12/site-packages
[OK] uv-tool: 0.17.0 (sicher) -- uv tool install
2 Installation(en) gefunden: 1 verwundbar, 1 sicher, 0 unbekannt
1 verwundbare Installation(en) gefunden.
Ohne --check-only ausführen, um ein Upgrade durchzuführen.
--check-only Nur scannen, keine Änderungen vornehmen (empfohlen für den ersten Lauf)
--scan Zusätzlich MCP-Client-Konfigurationen auf mcp-atlassian-Verweise prüfen
und gefährliche Transporteinstellungen kennzeichnen (0.0.0.0, HTTP-Transport)
-h, --help Hilfe anzeigen
# Verwundbare Installationen scannen und aktualisieren
./update-mcp-atlassian.sh
Das Skript aktualisiert pip-, pip3-, uv-tool- und Virtualenv-Installationen automatisch. Für Quellcode-Checkouts und Docker-Images werden manuelle Anweisungen ausgegeben.
| Methode | Befehl |
|---|---|
| pip | pip install --upgrade "mcp-atlassian>=0.17.0" |
| uv tool | uv tool upgrade mcp-atlassian |
| Quellcode | cd mcp-atlassian && git pull && uv sync |
| Docker | docker pull ghcr.io/sooperset/mcp-atlassian:latest |
Für eine vollständige technische Dokumentation einschließlich verwundbarer Codepfade, Exploit-Abläufe, realer Angriffsszenarien und der Funktionsweise der Fixes siehe den Blogbeitrag.
Die Methode download_attachment() in confluence/attachments.py akzeptiert einen vom Benutzer bereitgestellten target_path und schreibt ohne Pfadvalidierung darauf:
# v0.16.1 — keine Pfad-Traversal-Prüfung
os.makedirs(os.path.dirname(target_path), exist_ok=True)
with open(target_path, "wb") as f: # schreibt in JEDEN Pfad
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)
Behoben in PR #987 durch Hinzufügen von validate_safe_path() — löst Symlinks auf, normalisiert Pfade, erzwingt die Begrenzung auf das Basisverzeichnis.
Die Middleware in servers/main.py vertraut den Headern X-Atlassian-Jira-Url / X-Atlassian-Confluence-Url ohne Validierung, wodurch ein Angreifer die ausgehenden Anfragen des Servers auf beliebige URLs umleiten kann.
Behoben in PR #986 durch Hinzufügen von validate_url_for_ssrf() — Schema-Allowlist, Blockierung privater IPs, DNS-Auflösungsprüfungen, Redirect-Validierung.
update-mcp-atlassian.sh Scan- & Upgrade-Skript (macOS / Linux)
README.md Diese Datei
-xdev, um das Durchlaufen von Netzwerk-Mounts zu vermeiden--check-only ist vollständig schreibgeschütztApache 2.0