La codificación Vibe y la brecha de la aplicación Tea: Por qué la seguridad no puede ser una idea de último momento
Por qué la gobernanza, la visibilidad y las medidas de seguridad son importantes en el desarrollo de aplicaciones modernas
Conclusiones:
- La seguridad debe ser prioritaria desde el principio: los MVPs (producto mínimo viable) apresurados y el desarrollo externalizado a menudo descuidan medidas de seguridad críticas, lo que conduce a vulnerabilidades.
- Las configuraciones incorrectas de API son un vector común de violación: ambas brechas de la aplicación Tea fueron causadas por políticas deficientes de autenticación y autorización.
- El "vibe coding" es arriesgado para aplicaciones de producción: el desarrollo rápido y no estructurado puede funcionar para prototipos, pero no para aplicaciones que manejan datos sensibles.
Las recientes brechas de datos de la aplicación de citas Tea son ejemplos clásicos de prácticas deficientes de desarrollo, seguridad y operaciones (DevSecOps). Esta aplicación es una plataforma de seguridad de citas solo para mujeres que permite a las suscriptoras compartir sus experiencias en una comunidad privada. La app ofrece varias herramientas, incluyendo un chat grupal y la posibilidad de calificar y reseñar a hombres mediante un proceso similar a una reseña de Yelp. Dejando de lado las preocupaciones de privacidad, la app utilizaba inteligencia artificial (IA) y una identificación fotográfica oficial del gobierno (u otra verificada) como carnets de conducir para asegurar que la suscriptora fuera mujer.
Este proceso de verificación, junto con la función de chat grupal y mensajería personal, son las razones por las que estamos aquí. Según el fundador, la aplicación original de Tea fue creada por un equipo de dos desarrolladores contratados a través de Toptal, y supongo que las filtraciones se deben a que no se preocuparon por la seguridad durante la fase de producto mínimo viable (MVP).
Ambas brechas, la fuga de la base de datos (DB) original Firebase y la posterior fuga de chats, ocurrieron debido al problema estándar que afecta a las interfaces de programación de aplicaciones (APIs), tal como lo describe el Open Worldwide Application Security Project (OWASP). Concretamente, ambas fueron causadas por políticas de autenticación y autorización defectuosas. La primera es una fuga de datos estándar de Firebase, que ocurre cuando las políticas de seguridad no se configuran manualmente, algo que se ha sabido ampliamente desde hace mucho tiempo. La segunda es más grave: cualquier usuario podría usar su clave de API para descargar los chats de otros usuarios. El equipo de desarrollo no identificó ni solucionó estos problemas a pesar de que la aplicación era un objetivo de alto perfil para ser explotado. El equipo probablemente debería dedicar algo de tiempo a revisar este documento de OWASP para mejorar sus procesos de seguridad.
La codificación de "vibe" está de moda, no solo en las comunidades de programación, sino también en los círculos de gestión de productos. Muchas empresas ahora intentan crear gestores de productos (PM) de infraestructura completa que manejen todo, desde los requisitos hasta la creación de aplicaciones y, presumiblemente, se queden despiertos por la noche como soporte de producción. El consenso general, con el cual coincido, es que esto es una mala idea. Si bien un PM técnico podría crear una prueba de concepto (PoC) o un prototipo, el código de producción de calidad ‘vibe’ —no, gracias.
La aplicación Tea muestra por qué esto es una mala idea. Incluso si no sabemos si la aplicación fue codificada con vibe, fue un fundador no técnico que subcontrató el desarrollo original a freelancers. Las alucinaciones no solo afectan las respuestas, también pueden afectar la seguridad. ¿La IA que está utilizando comprende conceptos básicos de seguridad? Si le preocupa lanzar una aplicación funcional a cualquier coste, ¿será comprensible el código? Y cuando afronte código heredado, ¿cómo identificará y resolverá problemas? Solucionar y arreglar código heredado escrito por un ser humano es sumamente doloroso, incluso cuando añaden comentarios diciendo “¡No elimines esta variable de entorno!”
Comentario de Francois Chollet sobre el código heredado de la IA generativa
Francios Chollet, creador de la biblioteca de aprendizaje profundo Keras, pone esto en un contexto mucho mejor en el tuit anterior. El punto es que los ingenieros de software estarán arreglando el desorden generado por la IA del "código de pizza de espagueti con fusilli de pesto y hamburguesa de queso". Hoy en día, la gente está obligada a mantener código añadido de hace años, usando una base de datos Access cuya contraseña se ha olvidado hace mucho tiempo. O los artículos habituales que hablan de cómo los programadores experimentados de Common Business-Oriented Language (COBOL) que pueden entender la lógica empresarial son muy valorados porque nadie más puede entender y arreglar los sistemas heredados.
O como dice un meme:
Meme de programación basado en The Office, a través de Reddit
En general, la automatización es algo bueno. Si puedes hacer tu trabajo más rápido y pasar a cosas más productivas, eso es algo positivo. Sin embargo, el problema surge cuando las herramientas de automatización carecen de medidas de seguridad adecuadas. Dada la situación actual de proliferación de herramientas de seguridad que apenas se comunican entre sí, esto es un gran desafío. Es necesario contar con gobernanza, seguida de visibilidad, y a continuación la aplicación de guardrails, y necesitabas tener todo esto en su lugar hace unos años. La seguridad ya es un problema difícil de resolver, y el auge de la automatización impulsada por la IA generativa empeorará esto. Las aplicaciones de código bajo o sin código son como becarios a los que se les da las llaves para despliegues en producción.
Ya hemos pasado por esto antes y seguimos repitiendo los mismos errores. Common Vulnerabilities and Exposures (CVE)-2025-53773 es una vulnerabilidad de inyección de comandos en Copilot que permite a un atacante ejecutar código localmente. Esto es similar a los riesgos de inyección de comandos descritos por OWASP, que han existido desde los principios de la seguridad web. U observa este ejemplo que está menos centrado en la programación: agentes de IA que trabajan con Notion. Estos agentes no tienen las medidas de seguridad adecuadas de control de acceso basado en roles (RBAC) y pueden acceder a la información de todo el conjunto de datos. Los prompts correctos pueden poner la información incorrecta en manos de un atacante. La investigación ha mostrado riesgos de exfiltración por inyección de comandos, y desde entonces Notion ha anunciado medidas de seguridad adicionales.
La gobernanza y la seguridad son más importantes que nunca. Establecer la gobernanza y las directrices adecuadas es fundamental, al igual que la defensa en profundidad para sus aplicaciones existentes.
Captura de pantalla del intento bloqueado de acceso a OpenAI
Informe sobre brechas de seguridad del correo electrónico 2025
Principales hallazgos sobre la experiencia y el impacto de las brechas de seguridad del correo electrónico en organizaciones de todo el mundo
Suscríbase al blog de Barracuda.
Regístrese para recibir Threat Spotlight, comentarios de la industria y más.
Informe sobre perspectivas de clientes MSP 2025
Una perspectiva global sobre lo que las organizaciones necesitan y desean de sus proveedores de servicios gestionados de ciberseguridad.