dotsagent.io
Idioma:Español

El agente de Supabase MCP filtra tokens a través de un ticket de soporte

Una prompt injection en un ticket de soporte hizo que el agente de Cursor, conectado a Supabase MCP con la clave service_role, leyera una tabla de tokens de integración y filtrara su contenido.

Qué ocurrió

En julio de 2025, General Analysis demostró un ataque contra un desarrollador que usaba Cursor con el servidor Supabase MCP. El atacante envió un ticket de soporte con instrucciones dirigidas al agente. Cuando el agente procesó el ticket, siguió esas instrucciones.

El agente estaba conectado con la clave service_role, que omite la seguridad a nivel de fila. Leyó una tabla de tokens de integración y filtró su contenido al atacante.

Por qué funcionó

Simon Willison lo describió como un caso de libro de la tríada letal: datos privados protegidos por una clave que ignora la seguridad a nivel de fila, texto no confiable de clientes y una vía para exfiltrar datos. Eliminar cualquiera de los tres elementos impide el ataque.

Qué hacer

  • No des nunca a un agente la clave service_role; conéctalo con acceso de solo lectura y limitado a un único proyecto.
  • Mantén a los agentes que leen texto de clientes alejados de los datos de producción.
  • Exige aprobación manual para cada llamada a una herramienta de base de datos.
  • Trata el contenido de tickets y formularios como entrada no confiable.

Usa credenciales con privilegios mínimosRompe la trifecta letalExige aprobación para las acciones con consecuencias

Sigue la lista de comprobación de seguridad →

Fuentes

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