dotsagent.io
Lingua:Italiano

L'agente Supabase MCP divulga token tramite un ticket di supporto

Un prompt injection in un ticket di supporto ha indotto l'agente di Cursor, connesso a Supabase MCP tramite la chiave service_role, a leggere una tabella di token di integrazione e a divulgarne il contenuto.

Cosa è successo

Nel luglio 2025, General Analysis ha dimostrato un attacco ai danni di uno sviluppatore che utilizzava Cursor con il server Supabase MCP. L'attaccante ha inviato un ticket di supporto contenente istruzioni rivolte all'agente. Quando ha elaborato il ticket, l'agente ha seguito quelle istruzioni.

L'agente era connesso tramite la chiave service_role, che ignora la sicurezza a livello di riga. Ha letto una tabella di token di integrazione e ne ha divulgato il contenuto all'attaccante.

Perché ha funzionato

Simon Willison l'ha definita una trifecta letale da manuale: dati privati protetti da una chiave che ignora la sicurezza a livello di riga, testo non attendibile inviato dai clienti e un canale che permette ai dati di uscire. Eliminare uno qualsiasi dei tre elementi interrompe l'attacco.

Cosa fare

  • Non fornire mai a un agente la chiave service_role; connettilo con accesso in sola lettura e limitato a un singolo progetto.
  • Tieni gli agenti che leggono testo inviato dai clienti lontani dai dati di produzione.
  • Richiedi l'approvazione manuale per ogni chiamata a uno strumento del database.
  • Considera i contenuti di ticket e moduli come input non attendibile.

Usa credenziali con privilegi minimiInterrompi la trifecta letaleRichiedi l'approvazione per le azioni rilevanti

Segui la checklist di sicurezza →

Fonti

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