Claves de API de Google 'inofensivas' ahora exponen datos privados de Gemini AI
El cambio en las reglas del juego de Google Cloud
Durante años, exponer una clave de API de Google Maps en el código JavaScript de una web se consideraba una práctica de bajo riesgo, ya que estas claves eran simples identificadores con restricciones de cuota. Sin embargo, la integración masiva de Gemini AI en el ecosistema de Google Cloud ha transformado este escenario: claves que antes eran inofensivas ahora actúan como llaves maestras para acceder a modelos de lenguaje potentes y datos privados.
Investigadores de TruffleSecurity han descubierto que casi 3,000 claves de API activas están expuestas públicamente en sitios de organizaciones financieras, empresas de seguridad e incluso en la propia infraestructura de Google. El problema radica en la escalada de privilegios implícita que ocurrió cuando Google permitió que las mismas credenciales de proyectos antiguos dieran acceso a la API de Gemini sin una notificación clara de seguridad para los desarrolladores.
Riesgos financieros y de privacidad
Un atacante que obtenga una de estas claves puede realizar llamadas a la API de Gemini a nombre de la víctima. Dado que los modelos de lenguaje modernos (LLMs) tienen costes asociados por token y ventanas de contexto amplias, un actor malintencionado podría generar cargos de miles de dólares al día en una sola cuenta. Más allá del coste, el acceso permite interactuar con los datos privados que el proyecto tenga vinculados a los servicios de IA de Google.
TruffleSecurity demostró que muchas de estas claves han estado en el código fuente de páginas públicas durante años. Con el lanzamiento de Gemini, estas claves 'despertaron' con nuevos permisos peligrosos sin que los equipos de DevOps o seguridad se dieran cuenta del cambio en la superficie de ataque.
¿Por qué importa para desarrolladores?
Para cualquier desarrollador que trabaje con JavaScript, integración de APIs o arquitecturas Cloud, este incidente subraya que la sensibilidad de un secreto no es estática. Lo que hoy es un identificador público de un widget de mapas, mañana puede ser una credencial de acceso a datos críticos si el proveedor de servicios decide consolidar sus sistemas de autenticación.
Este caso resalta la importancia de utilizar herramientas de escaneo de secretos como TruffleHog en los flujos de CI/CD. No basta con confiar en que una clave 'no sirve para nada malo'; la mejor práctica es nunca exponer claves de API directamente en el frontend, utilizando en su lugar proxies de backend o mecanismos de autenticación efímeros (como tokens de Firebase restringidos por dominio).
Acciones recomendadas
- Auditoría de Google Cloud: Revisa qué servicios están habilitados en tus proyectos. Si no usas Gemini, desactiva la 'Generative Language API'.
- Restricciones de API: Configura restricciones de IP, de referente HTTP o de aplicación para cada clave en la consola de Google Cloud.
- Rotación de secretos: Si has detectado claves expuestas en tu historial de Git o en producción, rótalas inmediatamente.
- Monitorización de cuotas: Establece alertas de presupuesto para detectar picos inusuales en el consumo de APIs.
Google ha comenzado a implementar medidas proactivas para bloquear el acceso a Gemini desde claves que se detecten como filtradas, pero la responsabilidad última de la rotación y el aseguramiento recae en el desarrollador.
Fuente original: BleepingComputer