El error de Travis CI revela los secretos de miles de proyectos de código abierto

Travis CI

El proveedor de integración en curso, Travis CI, solucionó una vulnerabilidad de seguridad fatal que expuso claves de API, tokens de acceso y credenciales, lo que potencialmente expuso a las organizaciones que usan la tienda de fuente pública al riesgo de nuevos ataques.

Este problema, rastreado como CVE-2021-41077, aborda el acceso no autorizado y el saqueo de datos de entornos secretos asociados con un proyecto público de código abierto durante el proceso de desarrollo de software. El problema supuestamente duró durante la ventana de ocho días entre el 3 y el 10 de septiembre.

A Felix Lange de Etherea se le atribuyó el descubrimiento de la fuga del 7 de septiembre, con Péter Szilágyi de la empresa. Señala que “cualquiera podría filtrarlos y obtener un movimiento lateral de hasta 1000 [organizations]. «

Travis CI es una solución alojada de CI/CD (abreviatura de integración continua e implementación continua) que se utiliza para crear y probar proyectos de software alojados en sistemas de almacenamiento de código fuente como GitHub y Bitbucket.

«El comportamiento requerido (si el cliente creó localmente .travis.yml y lo agregó a git) es que Travis realice la compilación de una manera que impida el acceso público a datos secretos del entorno específicos del cliente, como claves de firma, datos de acceso y tokens de API «Significa la descripción de la vulnerabilidad. «Sin embargo, durante ese intervalo de 8 días, los datos secretos podrían revelarse a un actor no autorizado que falsificó el repositorio público e imprimió los archivos durante el proceso de compilación».

En otras palabras, un repositorio público derivado de otro podría enviar una solicitud de descarga que podría obtener las variables de entorno secretas establecidas en el repositorio ascendente original. Travis CI señala en su propia documentación que «las variables de entorno encriptadas no están disponibles para descargar solicitudes de bifurcaciones debido al riesgo de seguridad de exponer dicha información a un código desconocido».

También reconoció el riesgo de detección derivado de una solicitud de descarga externa: “Una solicitud de descarga enviada desde la bifurcación de un repositorio ascendente podría manipularse para detectar variables de entorno. El administrador del repositorio ascendente no debería tener protección contra este ataque, ya que cualquiera que bifurque el repositorio en GitHub puede enviar solicitudes de descarga».

Szilágyi también instó a Travis CI a minimizar el incidente y no reconocer la «gravedad» del problema, al tiempo que instó a GitHub a prohibir a la empresa debido a sus deficientes procesos de seguridad y detección de vulnerabilidades. “Después de tres días de presión de muchos proyectos [Travis CI] solucionaron el problema silenciosamente el día 10., Szilágyi tuiteó: «Sin análisis, sin informe de seguridad, sin autopsia, sin advertencia de ninguno de sus usuarios de que sus secretos podrían haber sido robados».

La empresa de plataformas con sede en Berlín, DevOps, emitió un breve «boletín de seguridad» el 13 de septiembre instando a los usuarios a girar sus llaves regularmente, luego de un segundo anuncio en sus foros comunitarios que indicaba que no encontró evidencia de que el error haya sido explotado por partes malintencionadas.

«Debido a la manera extremadamente irresponsable [Travis CI] han manejado esta situación y su posterior negativa a advertir a sus usuarios sobre secretos potencialmente escapados, solo podemos aconsejar a todos que se alejen de inmediato e indefinidamente de Travis «, agregó Szilágyi.

Continua leyendo