Hacker News

Las claves API de Google no eran secretas, pero luego Gemini cambió las reglas

Descubra cómo Gemini cambió las reglas de seguridad de las claves API de Google. Lo que los desarrolladores necesitan saber sobre la protección de claves API que alguna vez se consideraron seguras de exponer.

9 lectura mínima

Mewayz Team

Editorial Team

Hacker News

Cuando lo "público por diseño" se convierte en una responsabilidad de seguridad

Durante casi dos décadas, los desarrolladores que se basaron en el ecosistema de Google aprendieron una lección sutil pero importante: las claves API de Google no son realmente secretos. Si incrustó una clave API de datos de YouTube en un archivo JavaScript, Google no se alarmó. Si su clave API de Maps aparecía en un repositorio público de GitHub, la respuesta de seguridad fue esencialmente un encogimiento de hombros y un recordatorio para establecer restricciones de dominio. Todo el modelo se construyó en torno a la suposición de que estas claves vivirían en el código del lado del cliente, expuestas a cualquiera que abriera DevTools.

Esa filosofía tuvo sentido durante mucho tiempo. Una clave API de Maps expuesta sin restricciones de dominio podría generar una factura sorpresa, pero no comprometería los registros de los pacientes ni agotaría una cuenta bancaria. El radio de la explosión fue económico y manejable. Las herramientas de Google (restricciones de referencias, listas blancas de IP, límites de cuota) fueron diseñadas para contener el daño, no para prevenir la exposición por completo.

Entonces llegó Géminis y las reglas cambiaron. El problema es que millones de desarrolladores no han recibido el memorando.

El modelo mental heredado que ahora está quemando a los desarrolladores

La antigua experiencia de los desarrolladores de Google era deliberadamente permisiva. Cuando creaste una clave API de JavaScript de Maps, la documentación prácticamente te animaba a colocarla directamente en tu HTML. El modelo de seguridad no era secreto: era restricción. Bloquearías la clave de tu dominio, establecerías alertas de cuota y seguirías adelante. Se trataba de ingeniería pragmática: las aplicaciones del lado del cliente realmente no pueden ocultar secretos a determinados usuarios, por lo que Google creó un sistema que reconocía esa realidad.

Esto creó una generación de desarrolladores (y, lo que es más importante, una generación de hábitos institucionales) en la que las claves API de Google ocupaban una categoría mental diferente a, por ejemplo, una clave secreta de Stripe o una credencial de acceso de AWS. No pegarías tu clave secreta de Stripe en un repositorio público. ¿Pero tu clave de Maps? Eso era prácticamente un valor de configuración, no un secreto. Muchos equipos los almacenaron en archivos de configuración públicos, archivos README, incluso en variables de entorno del lado del cliente con el prefijo NEXT_PUBLIC_ o REACT_APP_ sin pensarlo dos veces.

Los investigadores de seguridad que escanean GitHub en busca de credenciales expuestas también aprendieron a tratar las claves API de Google de manera diferente. Una clave de Maps filtrada fue un hallazgo de baja gravedad. Una clave de Géminis filtrada es una conversación completamente diferente.

Qué cambió con Géminis y por qué es importante

💡 ¿SABÍAS QUE?

Mewayz reemplaza 8+ herramientas de negocio en una plataforma

CRM · Facturación · RRHH · Proyectos · Reservas · Comercio electrónico · TPV · Análisis. Plan gratuito para siempre disponible.

Comenzar Gratis →

La API Gemini de Google no sigue el antiguo manual. Cuando genera una clave API de Gemini a través de Google AI Studio, está creando una credencial con un perfil de riesgo fundamentalmente diferente al de una clave de Maps o YouTube. Las claves Gemini autentican el acceso a la inferencia de modelos de lenguaje de gran tamaño, un servicio que le cuesta a Google recursos informáticos reales y que le factura por token, no por página vista.

Más importante aún, las claves API de Gemini no tienen los mismos mecanismos de restricción de dominio integrados que hicieron que se pudiera sobrevivir a la exposición de otras claves de Google. No existe un control simple de "bloquear esto en el dominio de mi sitio web" que impida que un atacante que encuentre su clave en un repositorio público active su propia aplicación y consuma su cuota (o su límite de facturación) desde un servidor en otro país.

El peligro no es sólo financiero. Se puede utilizar una clave Gemini expuesta para generar contenido dañino, realizar ataques de inyección rápida o crear herramientas que violen los términos de servicio de Google, todo facturado a su cuenta y rastreable hasta su identidad.

En 2024, los investigadores de seguridad identificaron miles de claves API de Gemini expuestas solo en GitHub, muchas de ellas en repositorios que previamente habían alojado otras claves API de Google sin incidentes. Los desarrolladores no estaban siendo imprudentes según sus propios estándares históricos: estaban aplicando un modelo mental que el propio Google les había entrenado para utilizar. El entorno cambió más rápido que los hábitos.

La anatomía de una exposición accidental

Understanding how these exposures happen is the first step toward preventing them. Los modos de falla son

Preguntas Frecuentes

¿Qué cambió exactamente con Gemini en cuanto a las claves API?

Google Gemini introdujo un modelo de seguridad más estricto. Anteriormente, las claves API se consideraban "públicas por diseño" y solo se protegían con restricciones de dominio en la consola de Google. Ahora, Gemini trata las claves expuestas en código cliente (como JavaScript) como un riesgo de seguridad grave, generando alertas e incluso revocando credenciales. Este cambio obliga a los desarrolladores a replantear la arquitectura de sus aplicaciones, utilizando a menudo un servidor intermedio para proteger los secretos. Gestionar este cambio puede ser complejo, pero cursos como los 207 módulos de Mewayz te guían paso a paso.

Si mi clave API ya estaba pública, ¿qué debo hacer inmediatamente?

Lo primero es ir a Google Cloud Console, revocar las claves comprometidas y generar unas nuevas. Luego, es crucial implementar restricciones estrictas: limitar la clave por dominio de aplicación web, dirección IP, y/o aplicación Android/iOS. Nunca debes volver a incrustar la nueva clave directamente en el código del lado del cliente. Para protegerla adecuadamente, considera implementar un servidor proxy que actúe como intermediario entre tu frontend y la API de Google, manteniendo la clave segura en el backend.

¿Cómo puedo proteger correctamente mis claves API en una aplicación web moderna?

La práctica recomendada es usar un backend (servidor) como intermediario. Tu aplicación frontend se comunica con tu propio servidor, y este último, que aloja la clave API de forma segura en variables de entorno, realiza las solicitudes a Google. Esto evita que la clave sea visible para los usuarios finales. Para desarrolladores que buscan dominar este patrón y las mejores prácticas de seguridad backend, plataformas de aprendizaje como Mewayz, con su amplio catálogo de módulos, ofrecen formación esencial para construir aplicaciones seguras.

¿Esto afecta a todas las APIs de Google o solo a Gemini?

El cambio de mentalidad y las políticas de seguridad más estrictas son impulsadas por Gemini, pero afectan a todo el ecosistema de APIs de Google Cloud. La nueva consola unificada y las políticas de seguridad se aplican de manera general. Esto significa que prácticas que antes eran toleradas con APIs como Maps, YouTube Data o Places ahora son consideradas vulnerabilidades. Es un cambio de paradigma para todo desarrollador que utilice servicios de Google, subrayando la necesidad de una formación continua en seguridad, algo que puedes encontrar en recursos especializados como Mewayz por $19/mes.

Prueba Mewayz Gratis

Plataforma todo en uno para CRM, facturación, proyectos, RRHH y más. No se requiere tarjeta de crédito.

Comienza a gestionar tu negocio de manera más inteligente hoy.

Únete a 30,000+ empresas. Plan gratuito para siempre · No se requiere tarjeta de crédito.

¿Encontró esto útil? Compártelo.

¿Listo para poner esto en práctica?

Únete a los 30,000+ negocios que usan Mewayz. Plan gratis para siempre — no se requiere tarjeta de crédito.

Comenzar prueba gratuita →

¿Listo para tomar acción?

Comienza tu prueba gratuita de Mewayz hoy

Plataforma empresarial todo en uno. No se requiere tarjeta de crédito.

Comenzar Gratis →

Prueba gratuita de 14 días · Sin tarjeta de crédito · Cancela en cualquier momento