Por segunda vez en menos de un año, la plataforma Travis CI para desarrollo y prueba de software ha expuesto datos de usuarios que contienen tokens de autenticación que podrían dar acceso a cuentas de desarrolladores en GitHub, Amazon Web Services y Docker Hub.
Los investigadores de Aqua Security descubrieron que «decenas de miles de tokens de usuario» están expuestos a través de la API Travis CI que ofrece acceso a más de 770 millones de registros con varios tipos de credenciales pertenecientes a usuarios de nivel gratuito.
Enumeración de números de registro
Mientras investigaban los posibles riesgos de seguridad derivados del uso de los servicios de integración continua (CI), los investigadores se centraron en la plataforma Travis y descubrieron una llamada a la API que permitía obtener registros en texto claro cuando se usaba el número de registro correcto.
Los investigadores descubrieron que Travis CI no aplicó suficientes protecciones para los números de registro y pudieron ejecutar un script de enumeración para recuperar las cadenas «de cero a infinito».
“Esto no es fácil con otros proveedores porque requieren que se mencione en la URL una identificación de aplicación o una identificación de cliente (o ambas), lo que dificulta la ejecución de la enumeración en los registros” – Aqua Security
Los investigadores encontraron una segunda llamada a la API en un sistema de API documentado que permitía el acceso a otro conjunto de registros de texto claro que antes no estaban disponibles.
Usando los dos métodos, los investigadores de Aqua Security dicen que pudieron encontrar registros que datan de enero de 2013 a mayo de 2022. Determinaron que el rango de registros válidos estaba entre 4,2 millones y 774 millones.
Después de analizar una muestra de 8 millones de registros, los investigadores encontraron alrededor de 73 000 cadenas confidenciales en forma de tokens, secretos y varias credenciales asociadas con servicios en la nube como GitHub, Amazon Web Services (AWS) y Docker Hub.
Aqua Security señala que algunos de los datos en los registros históricos estaban ofuscados. Sin embargo, el esfuerzo fue insuficiente, dicen los investigadores, ya que Travis CI permite a los desarrolladores usar varias convenciones de nomenclatura para información confidencial.
“Sin embargo, existen muchas convenciones para imprimir secretos, contraseñas y tokens en los registros, y la mayoría de ellos permanecieron en texto claro. Por ejemplo, descubrimos que, en muchos casos, «github_token» estaba enmascarado y no revelaba ningún secreto. Sin embargo, encontramos alrededor de 20 variaciones de este token que no fueron enmascaradas por Travis CI” – Aqua Security
Aqua Security compartió sus hallazgos con Travis CI con la esperanza de encontrar una solución. Sin embargo, el servicio de CI respondió que el problema fue «por diseño» y dejó los datos expuestos.
La exposición de registros de usuarios parece ser un problema recurrente para Travis CI, ya que se han publicado informes sobre este tipo de riesgo en 2015, 2019 y 2021 .
Fuente: https://www.bleepingcomputer.com