Termin vereinbaren

MCP Pentesting Vorgehen und Nachweisführung

Wir prüfen MCP-Deployments strukturiert entlang der OWASP MCP Top 10 – von der Enumeration über die Testausführung bis zur belastbaren Nachweisführung. Die Liste liegt als Version v0.1 (Beta) vor und dient dabei als Strukturierungsrahmen, nicht als Prüfnorm mit Konformitätsaussage.

Ein MCP-Pentest prüft nicht einen Endpunkt, sondern ein Zusammenspiel: den MCP-Server, den Client beziehungsweise Host und das Gateway dazwischen. Klassische API- und Webapp-Tests setzen deterministisches Verhalten voraus – gleiche Eingabe, gleiche Ausgabe. MCP bricht diese Annahme, weil Tools laut Spezifikation modellgesteuert sind, mit delegierten Nutzerrechten arbeiten und ausdrücklich beliebige Datenzugriffs- und Ausführungspfade eröffnen. Eine empirische Studie über 1.899 Open-Source-MCP-Server fand acht ausgeprägte Schwachstellenklassen, von denen nur drei mit klassischen Software-Schwachstellen überlappen – vertraute Werkzeuge und Testfälle allein greifen hier zu kurz.

Das Wichtigste im Überblick

01

Scoping und Inventar

Am Anfang steht die Festlegung des Prüfgegenstands: Transport (stdio, Streamable HTTP oder der abgekündigte HTTP+SSE-Weg), Protokollrevision und die drei Parteien Server, Client/Host und Gateway. Erst die Revision entscheidet, welche Angriffsklassen überhaupt existieren – Session-Hijacking über den Mcp-Session-Id-Header etwa gibt es in der Revision 2026-07-28 nicht mehr, dafür kommen State-Handles und die Header-Body-Validierung hinzu. Wir katalogisieren jeden Server, jedes Tool samt vollständiger Definition, jedes Credential und jedes darüber erreichbare Zielsystem, und wir legen vorab schriftlich fest, mit welchen Testidentitäten und Scopes gearbeitet wird, denn tools/list darf je präsentierter Autorisierung variieren. Auch die Prüfwerkzeuge gehören ins Scoping: Der MCP Inspector – das offizielle Testwerkzeug des Projekts – war mit CVE-2025-49596 selbst Gegenstand einer kritischen Schwachstelle, die erst mit Version 0.14.1 behoben wurde; er ist deshalb mitzuversionieren und im Bericht auszuweisen.

02

Identität und Berechtigungen (MCP07, MCP02)

Hier prüfen wir gegen normative Vorgaben statt gegen Geschmack: Ein Tool-Aufruf ohne oder mit ungültigem Token muss mit 401 und korrektem WWW-Authenticate-Header enden, und die Discovery-Kette muss vorhanden und korrekt verlinkt sein. Dabei ist zu unterscheiden: Protected Resource Metadata nach RFC 9728 ist für MCP-Server verpflichtend, beim Autorisierungsserver genügt wahlweise RFC 8414 oder OpenID Connect Discovery 1.0 – wer nur auf RFC 8414 prüft, produziert bei OIDC-Servern einen Fehlbefund. Für OAuth-URLs erwartet die Spezifikation HTTPS außerhalb von Loopback-Adressen. Zentraler Testfall ist die Audience-Prüfung, denn die Spezifikation verbietet Token-Passthrough ausdrücklich – ein Server darf keine Token akzeptieren, die nicht für ihn ausgestellt wurden. Bei Proxy-Architekturen kommt der Confused-Deputy-Pfad hinzu: eigene Consent-Seite je Client, exakter String-Vergleich der redirect_uri ohne Wildcards, kryptografisch erzeugter und einmalig verwendeter state-Parameter. Ergänzend prüfen wir die Scope-Minimierung: Wildcard- oder Omnibus-Scopes, gebündelte Privilegien und Server, die dem Scope-Claim im Token vertrauen, ohne selbst zu autorisieren.

03

Tool-Definitionen: Poisoning, Shadowing, Rug Pull (MCP03)

Tool-Beschreibungen, Parameterdokumentation und JSON-Schemata sind ein Instruktionskanal, den das Modell autoritativ liest und den der Mensch in der Oberfläche in der Regel nie vollständig sieht. Wir erzeugen zuerst eine Baseline: Jede Definition aus tools/list, resources/list und prompts/list wird feldweise gehasht und dient als Referenz für spätere Vergleiche. Darauf folgen drei Prüfungen – die Gegenüberstellung von im Client sichtbarem Text und tatsächlich an das Modell übergebener Beschreibung, der kontrollierte Rug-Pull-Test in der Testumgebung (ändert sich eine bereits freigegebene Definition, muss der Host erneut zustimmen oder die Änderung melden) und der Shadowing-Test mit zwei parallel verbundenen Servern, die gleichnamige oder funktional überlappende Tools anbieten. Die Klasse ist praktisch belegt: Bei CVE-2025-54136 in Cursor wurden Änderungen an bereits freigegebenen MCP-Konfigurationen ohne erneute Zustimmung wirksam.

04

Indirekte Prompt Injection über Tool-Ausgaben (MCP06)

Nicht nur die Beschreibung, auch die Rückgabeseite ist Angriffsfläche: Die Spezifikation verpflichtet Server ausdrücklich dazu, Tool-Ausgaben zu bereinigen (MUST), und empfiehlt Clients, Tool-Ergebnisse vor der Übergabe an das Modell zu validieren (SHOULD) – die schwächere Vorgabe auf der Client-Seite ist im Befundwortlaut abzubilden. Wir inventarisieren zunächst alle Kanäle, über die Fremdinhalte in den Kontext gelangen – Tool-Antworten, abgerufene Seiten und Dokumente, Repository-Inhalte, Tickets, Postfächer, persistiertes Memory – und bringen je Kanal einen harmlosen, eindeutig zurückverfolgbaren Marker ein, um zu beobachten, ob der Agent ihn als Anweisung oder als Datum behandelt. Geprüft wird dabei eine architektonische Kernfrage: Gibt es eine Herkunftstrennung zwischen Instruktion und Daten, oder landet beides im selben Kontextfenster? Liegen bei einem Agenten Zugriff auf sensible Daten, Verarbeitung nicht vertrauenswürdiger Inhalte und die Möglichkeit zur Außenkommunikation gleichzeitig vor – die Lethal Trifecta nach Simon Willison –, ist der Befund bereits architektonisch begründbar, auch ohne erfolgreiche Einzeldemonstration.

05

Transport, Ausführung und Lieferkette (MCP05, MCP04, MCP09)

Am Transport gelten harte Vorgaben: Server müssen den Origin-Header eingehender Verbindungen validieren, lokal laufende Instanzen sollen an 127.0.0.1 binden statt an 0.0.0.0 – sonst genügt eine besuchte Webseite, um per DNS-Rebinding mit einem lokalen Server zu sprechen. Wir prüfen die serverseitige Validierung gegen das deklarierte Schema, den Umgang mit URLs im OAuth-Discovery-Pfad (private und Link-Local-Bereiche, Redirect-Ketten, DNS-Rebinding als TOCTOU-Szenario) sowie Sandboxing und Egress-Kontrolle der Tool-Ausführung; bereits der Nachweis, dass eine Eingabe ungeprüft in einen Interpreter gelangt, ist der Befund. Auf der Lieferkettenseite gleichen wir Registry-Eintrag, Repository und Maintainer ab und prüfen Version-Pinning, Signaturen und Freigabe-Gates für Updates – Labels wie „official“ oder „verified“ sind kein Vertrauensnachweis, wie CVE-2025-6514 im weit verbreiteten Paket mcp-remote gezeigt hat (betroffen sind die Versionen 0.0.5 bis 0.1.15, behoben in 0.1.16). Dazu kommt die Suche nach Schatten-Servern über Repository- und Endpoint-Scans, wiederholte Netzscans mit Differenzbericht sowie die Auswertung am Gateway, weil dort gemessen wird, welche Server ein Agent tatsächlich kontaktiert – und nicht nur, welche in der Konfiguration stehen.

06

Telemetrie, Nachweisführung und Bericht (MCP08)

Die härteste Frage kommt zum Schluss: Lässt sich nachträglich rekonstruieren, welcher Agent zu welchem Zeitpunkt welches Tool mit welchen Parametern im Auftrag welcher Identität aufgerufen hat? Wir führen dafür eine definierte, harmlose Aktionsfolge durch – Verbindung, Tool-Auflistung, mehrere Aufrufe, ein abgelehnter Aufruf – und versuchen anschließend, genau diese Folge allein aus den Protokollen zu rekonstruieren; ein sauberer Negativbefund ist hier ein vollwertiges Ergebnis, weil er alle übrigen Befunde im Betrieb unbeweisbar macht. Im Bericht trennen wir zwei Beweiskategorien: Konfigurations- und Architekturbefunde sind deterministisch belegbar, verhaltensbasierte Befunde sind es nicht – für sie geben wir Wiederholungen, Trefferquote sowie Modell, Client und Version an. Jeder Befund wird zusätzlich der Ebene zugeordnet, auf der er liegt (Protokoll und Transport, Autorisierung, Tool-Definition, Client/Host, Agentenebene), weil sich Gegenmaßnahme und Verantwortlicher je Ebene unterscheiden.

Standards & Quellen

Die Inhalte dieser Seite basieren auf den folgenden öffentlich verfügbaren Leitfäden und Studien.

OWASP Foundation · 2026

OWASP Top 10 for Model Context Protocol, Version v0.1 (Beta)

Incubator-Projekt in Roadmap-Phase 3 („Beta Release and Pilot Testing“), ausdrücklich als Living Document geführt, CC BY-NC-SA 4.0. Kein Zertifizierungsschema und kein Testleitfaden: Die Liste liefert Risikobeschreibungen, das Prüfvorgehen leiten wir aus normativen Quellen ab. MCP06 wird je nach Ansicht als „Intent Flow Subversion“ oder als „Prompt Injection via Contextual Payloads“ geführt.

Model Context Protocol · 2026

Model Context Protocol – Security Best Practices und Authorization Specification

Liefert die normativen MUST/SHOULD-Anforderungen, gegen die wir prüfen: Confused Deputy, Token-Passthrough-Verbot, SSRF bei der OAuth-Metadaten-Discovery, Session- und State-Handle-Behandlung, Origin-Validierung, Scope-Minimierung. Aktuelle Revision 2026-07-28; ältere Revisionen bringen andere Angriffsklassen mit und sind im Scoping zu benennen.

OWASP GenAI Security Project · 2026

A Practical Guide for Secure MCP Server Development

Februar 2026. Enthält die Review-Checkliste „MCP Security Minimum Bar“ mit fünf Domänen: Identität, Authentisierung und Policy-Durchsetzung, strikte Isolation und Lifecycle-Kontrolle, vertrauenswürdiges und kontrolliertes Tooling, schemagetriebene Validierung sowie gehärtetes Deployment mit fortlaufender Überwachung. Wir nutzen die Checkliste als Soll-Maßstab für Konfigurations- und Architekturbefunde.

National Security Agency (NSA) · 2026

Cybersecurity Information Sheet – Model Context Protocol (MCP): Security Design Considerations for AI-Driven Automation, Ver. 1.0

Mai 2026, U/OO/6030316-26. Benennt fehlende Audit-Logs als eigenständiges Sicherheitsproblem, fordert die Protokollierung jedes Tool- und Modellaufrufs mit Parametern und dahinterstehender Identität samt Weitergabe an ein SIEM und empfiehlt, das Netz auf offene MCP-Server zu scannen, um unauthentifizierte, verwundbare oder nicht freigegebene Instanzen vor einem Angreifer zu finden.

Invariant Labs · 2025

MCP Security Notification: Tool Poisoning Attacks

Erstbeschreibung von Tool Poisoning, Rug Pull und Tool Shadowing, einschließlich der Asymmetrie zwischen der Darstellung in der Oberfläche und der Beschreibung, die das Modell erhält. Die empfohlene Gegenmaßnahme – Versions-Pinning mit Prüfsummen über Tool-Definitionen – ist zugleich die Grundlage unseres Baseline-und-Diff-Vorgehens.

Wang et al. (arXiv) · 2025

MCPTox: A Benchmark for Tool Poisoning Attack on Real-World MCP Servers (arXiv:2508.14925)

Benchmark über 45 reale MCP-Server, 353 echte Tools und 20 LLM-Agenten: Die Erfolgsraten schwanken stark, die Ablehnungsraten bleiben durchgängig unter drei Prozent. Beleg dafür, dass Befunde auf Prompt-Ebene als Trefferquote über mehrere Läufe je Modell und Client zu berichten sind statt als binäres „verwundbar/nicht verwundbar“.

MCP-Deployment offensiv prüfen lassen

Wir testen Ihre MCP-Server, Clients und Gateways entlang der OWASP MCP Top 10 und der normativen Vorgaben der Spezifikation – mit reproduzierbaren Nachweisen, Zuordnung je Ebene und Re-Test. Sprechen Sie uns für Scoping und Aufwandsabschätzung an.