dotsagent.io
Sprache:Deutsch

Supabase-MCP-Agent gibt Tokens über ein Support-Ticket preis

Eine Prompt Injection in einem Support-Ticket veranlasste den mit Supabase MCP verbundenen Agenten von Cursor, mit dem service_role-Schlüssel eine Tabelle mit Integrationstokens auszulesen und deren Inhalt preiszugeben.

Was passiert ist

Im Juli 2025 demonstrierte General Analysis einen Angriff auf einen Entwickler, der Cursor mit dem Supabase-MCP-Server verwendete. Der Angreifer reichte ein Support-Ticket mit Anweisungen für den Agenten ein. Als der Agent das Ticket verarbeitete, befolgte er diese Anweisungen.

Der Agent war mit dem service_role-Schlüssel verbunden, der die Row-Level-Security umgeht. Er las eine Tabelle mit Integrationstokens aus und gab deren Inhalt an den Angreifer weiter.

Warum es funktioniert hat

Simon Willison bezeichnete dies als ein Lehrbuchbeispiel für die lethal trifecta: private Daten hinter einem Schlüssel, der die Row-Level-Security ignoriert, nicht vertrauenswürdiger Kundentext und ein Weg, über den Daten nach außen gelangen können. Fehlt eines dieser drei Elemente, scheitert der Angriff.

Was zu tun ist

  • Geben Sie einem Agenten niemals den service_role-Schlüssel. Verbinden Sie ihn schreibgeschützt und beschränkt auf ein einzelnes Projekt.
  • Halten Sie Agenten, die Kundentexte lesen, von Produktionsdaten fern.
  • Verlangen Sie für jeden Aufruf eines Datenbank-Tools eine manuelle Freigabe.
  • Behandeln Sie Inhalte aus Tickets und Formularen als nicht vertrauenswürdige Eingaben.

Anmeldedaten mit minimalen Rechten verwendenDie tödliche Triade durchbrechenFolgenreiche Aktionen bestätigen lassen

Sicherheits-Checkliste durcharbeiten →

Quellen

  1. generalanalysis.com/blog/supabase-mcp-blog
  2. simonwillison.net/2025/Jul/6/supabase-mcp-lethal-trifecta/