Sicherheit
MCP absichern: das Risiko, das ihr anbindet
Jeder MCP-Server und Connector vergrößert die Angriffsfläche eures Agenten. Wie Tool Poisoning und die tödliche Dreifaltigkeit funktionieren, was hilft.
Ihr hängt Claude an euer GitHub, dazu Gmail, Slack und die Datenbank. Ein paar Klicks, und der Agent kann Tickets lesen, Code reviewen und die Zusammenfassung ins Team posten. Genau das ist der Sinn von MCP: ein Stecker, der überall passt. Nur öffnet jeder dieser Stecker auch eine Tür, und die Türen kennen sich untereinander nicht.
Der Grundlagenartikel erklärt, wie MCP technisch funktioniert. Hier geht es um die andere Seite: Was passiert eigentlich, wenn ihr eurem Agenten Zugriff auf echte Dienste gebt, und warum das mehr Risiko ist als die Summe der einzelnen Anbindungen.
Das Grundmuster: die tödliche Dreifaltigkeit
Der Sicherheitsforscher Simon Willison hat für das Kernproblem einen Begriff geprägt, der sich durchgesetzt hat: die tödliche Dreifaltigkeit, im Original "lethal trifecta". Drei Fähigkeiten, die einzeln harmlos sind und zusammen gefährlich werden.
Ein Agent, der eure privaten Daten sieht (Punkt 1), dabei fremde Inhalte verarbeitet (Punkt 2, etwa eine E-Mail, ein Issue, eine Webseite) und irgendwie nach außen kommunizieren kann (Punkt 3), lässt sich über eine versteckte Anweisung im fremden Inhalt umlenken. Er nutzt dann seine legitimen Rechte, um eure Daten dorthin zu schicken, wo der Angreifer sie abgreift. Das ist keine Lücke im Code, sondern eine Eigenschaft der Kombination. Und MCP macht diese Kombination zum Normalfall, weil es dazu einlädt, Tools aus verschiedenen Quellen zu mischen.
Ein realer Fall: das GitHub-MCP-Leck
Wie konkret das wird, hat Invariant Labs im Mai 2025 am offiziellen GitHub-MCP-Server gezeigt. Der Ablauf:
Herausgekommen sind unter anderem Namen privater Repos, Umzugspläne und Gehaltsdaten des Nutzers, alles öffentlich lesbar im automatisch erzeugten Pull Request. Zwei Dinge sind daran wichtig. Erstens war das kein Bug im MCP-Server, sondern die tödliche Dreifaltigkeit in Reinform: private Daten, fremder Inhalt, Kanal nach außen. Zweitens funktionierte der Angriff über verschiedene Modelle und Clients hinweg. Auch ein gut ausgerichtetes Modell wie Claude Opus fällt darauf herein, weil es die versteckte Anweisung nicht von einer echten Aufgabe unterscheiden kann. Es gibt dafür keinen einfachen Patch.
Wenn der Server selbst der Angreifer ist
Beim GitHub-Fall kam die Anweisung von außen. Es geht aber auch direkter: Der MCP-Server, den ihr einbindet, kann selbst bösartig sein. Invariant Labs hat dafür drei Angriffsklassen beschrieben, die inzwischen Standardvokabular sind.
| Angriff | Wie er funktioniert | Warum ihr ihn übersehen könnt |
|---|---|---|
| Tool Poisoning | Versteckte Anweisungen stehen in der Tool-Beschreibung, die das Modell liest, aber die Oberfläche nicht anzeigt | Ihr seht einen harmlosen Tool-Namen, das Modell sieht die Schadanweisung |
| Rug Pull | Beim Einrichten liefert der Server eine saubere Version, später tauscht er sie still gegen eine bösartige | Ihr habt das Tool einmal geprüft und freigegeben, danach nie wieder |
| Tool Shadowing | Ein bösartiger Server verändert das Verhalten eines Tools von einem anderen, vertrauenswürdigen Server | Das manipulierte Tool sieht aus wie immer, leitet aber nebenbei Daten um |
Der gemeinsame Nenner: Ein MCP-Client lädt oft mehrere Server in denselben Kontext. Ein einziger schlechter Server unter fünf guten reicht, um die anderen zu kapern. In einer Demo genügte ein präparierter Server, um über ein vertrauenswürdiges E-Mail-Tool alle ausgehenden Mails still an den Angreifer zu kopieren.
Connectors bewegen sich, während ihr wegschaut
Selbst wenn ein Server heute sauber ist, bleibt er es nicht zwangsläufig. Die Sicherheitsfirma PromptArmor hat kommerzielle Connectors über sechs Wochen beobachtet, The Register hat darüber berichtet. Von 2.517 Connectors änderten sich in dieser Zeit 931, also gut ein Drittel. Dabei kamen 1.686 neue Tools dazu und 1.127 Tool-Beschreibungen wurden umgeschrieben, meist ohne dass jemand die Freigabe erneut geprüft hätte.
Ein Beispiel aus dem Bericht zeigt die Richtung. Der Dropbox-Connector wuchs im Beobachtungszeitraum so:
| Dropbox-Connector | Start | Ende |
|---|---|---|
| Tools gesamt | 8 | 24 |
| Tools mit Schreibrechten | 3 | 10 |
| Destruktive Tools (löschen etc.) | 0 | 4 |
Ihr habt also einen Connector mit acht harmlosen Lese-Tools freigegeben und betreibt sechs Wochen später einen mit vier Tools, die Daten löschen können. Dazu kommt ein zweiter Effekt: Laut der Analyse rufen zwei von fünf Connectors ihrerseits weitere KI-Dienste auf. Wenn euer Agent etwa Zooms Connector nutzt und dabei eine Anfrage mit sensiblen Daten übergibt, kann Zooms KI diese Daten an eigene Subdienstleister weiterreichen. Für DACH-Teams ist das direkt ein DSGVO-Thema: Die Daten verlassen eure Kontrolle und oft auch die Rechtsordnung, in der ihr sie glaubtet.
Was wirklich hilft
Die schlechte Nachricht zuerst: Gegen Prompt Injection gibt es kein Tool, das die Lücke schließt. Die gute: Ihr müsst die tödliche Dreifaltigkeit nur auseinanderhalten und den Schaden begrenzen. Sieben Hebel, grob nach Wirkung sortiert:
- Die Trifecta trennen. Gebt einem Agenten nicht gleichzeitig Zugriff auf private Daten, fremde Inhalte und einen Kanal nach außen. Wer öffentliche Issues verarbeitet, sollte in derselben Session keinen Schreibzugriff auf private Repos haben. Zwei getrennte, enger geschnittene Agenten sind sicherer als einer, der alles kann.
- Least Privilege, ernst gemeint. Startet mit Read-Only. Schreib- und erst recht Löschrechte nur, wo eine Aufgabe sie wirklich braucht. Prüft bei jedem Connector, welche Tools er tatsächlich mitbringt, nicht nur, was sein Name verspricht.
- Destruktive Aktionen brauchen einen Menschen. Löschen, Pushen, Mails senden, Geld bewegen: Solche Schritte gehören hinter eine explizite Freigabe, nicht in den Autopilot.
- Server festnageln und wiederholt prüfen. Gegen Rug Pulls hilft nur, Versionen zu pinnen und Änderungen an Tools und Beschreibungen aktiv zu beobachten, statt einmal beim Einrichten zu vertrauen. Bevorzugt Server von bekannten Herausgebern.
- Ausgehenden Verkehr begrenzen. Ein Agent, der nur mit den Diensten sprechen darf, die er braucht, kann Daten schlechter irgendwohin abfließen lassen. Egress-Kontrolle ist wirksamer als jede Allowlist im Prompt.
- Identität statt Sammel-Account. Der Agent sollte mit den Rechten der Person laufen, die ihn nutzt, nicht mit einem Service-Account, der an alles kommt. Das begrenzt den Schaden auf das, was diese eine Person ohnehin darf. Wie große Plattformen das umsetzen, steht im Artikel zum Context Layer.
- Alles protokollieren. Wenn etwas schiefgeht, müsst ihr rekonstruieren können, welches Tool wann mit welcher Berechtigung was getan hat. Ohne Audit-Log ist ein autonomer Agent eine Blackbox.
Für die Authentifizierung gilt OAuth 2.1 mit kurzlebigen Tokens und rollenbasiertem Zugriff als Stand der Technik, Microsoft hat die MCP-Risiken und passenden Gegenmaßnahmen ausführlich dokumentiert. Für den produktiven Einsatz ist das Pflicht, nicht Kür. Wie so eine Absicherung an lauffähigem Code aussieht, zeigt unser Praxis-How-to MCP-Server absichern: OAuth mit Spring AI.
Fazit
MCP ist zu Recht erfolgreich, weil es Integration billig macht. Das ist zugleich die Falle: Jede billige Anbindung vergrößert den Radius, in dem ein einziger manipulierter Inhalt Schaden anrichten kann. Die tödliche Dreifaltigkeit ist der Kompass dafür. Wer private Daten, fremde Inhalte und einen Kanal nach außen bewusst auseinanderhält, dem Agenten nur die nötigen Rechte gibt und seine Server im Blick behält, senkt das Risiko von einem offenen Scheunentor auf eine Tür mit Schloss. Ganz abschließen lässt sie sich nicht, aber man entscheidet, wer durchkommt.
Quellen6
- The Register - Connecting AI agents to outside services explodes the risk radiustheregister.com
- Simon Willison - The lethal trifecta for AI agentssimonwillison.net
- Invariant Labs - MCP Security Notification: Tool Poisoning Attacksinvariantlabs.ai
- Invariant Labs - GitHub MCP Exploited: Accessing private repositoriesinvariantlabs.ai
- Simon Willison - GitHub MCP Exploitedsimonwillison.net
- Microsoft - Understanding and mitigating security risks in MCP implementationstechcommunity.microsoft.com