Así es como casi hackean a Mercedes-Benz, y también te podría pasar a ti
Ayer se hacía eco de una noticia en la que se indicaba que el gigante fabricante de coches alemán, Mercedes-Benz, podría haber expuesto absolutamente todo su código fuente en Internet, abriendo la puerta a que cualquiera podría haberlo descargado, distribuirlo por la red, e incluso vendérselo a otras empresas. Pero, ¿cómo ha sido esto posible? ¿Qué ha pasado exactamente?
Un despiste de un empleado de Mercedes-Benz
Un investigador de seguridad (por suerte, del «lado bueno») de la firma RedHunt Labs alertó que, durante un escaneo rutinario, encontró el token de acceso en un repositorio público que tenía el empleado a nivel personal. Este token es una alternativa más segura al clásico usuario/contraseña a la hora de acceder a un servidor desde cualquier lugar (por ejemplo, desde casa). Este en concreto permitía al empleado conectarse al GitHub Enterprise Server de Mercedez-Benz para trabajar con el código.
Este token era de uso no monitorizado, y tenía privilegios absolutos dentro del servidor de código de la compañía. En concreto, dentro de los servidores se encontraban todos los códigos fuentes del software de los vehículos, cadenas de conexión, claves de acceso a la nube, planos, documentos de diseño, contraseñas, claves API y otra información interna crítica. Además, también se encontraron claves de acceso a Microsoft Azure y Amazon Web Services.
Además de todo lo anterior, este fallo de seguridad también podría haber dañado la reputación del fabricante, lo cual podría haber afectado a la cotización y a futuras inversiones.
Error ya corregido
No caben dudas de que se trata de un error humano, aseguran los propios responsables de la firma. El cómo ha podido pasar es un misterio. Lo más probable es que este trabajador tuviera sus propios repositorios en casa y, al hacer un commit del código, se subió, sin querer, este token de acceso.
En estos momentos, la firma está analizado si alguien más ha podido tener acceso a sus servidores usando este token, puesto que llevaba en GitHub, al alcance de todos, desde septiembre de 2023. Eso sí, cuando se ha preguntado al fabricante sobre si tenían constancia de que alguien pudiera haber accedido sin permiso a los datos (tanto propios, como de terceros), la firma alemana se ha negado a dar explicaciones. Esperemos que sea porque realmente no ha habido acceso no autorizado y no porque intente mantener oculto el hackeo.
Después de analizar el caso con detenimiento, y siguiendo sus propios protocolos, la empresa anuncia que tomará medidas para evitar que esto vuelva a ocurrir en el futuro. Y la primera de estas medidas es su propio programa de recompensas para aquellos que encuentren fallos de seguridad.
A pesar de todo, hay varias cuestiones en el aire. ¿Por qué un empleado tenía un token sin monitorización y con acceso ilimitado a todo el servidor? O bien tenía un puesto de responsabilidad muy alto dentro de Mercedes-Benz, o una mala configuración de los tokens por parte de la empresa.
Ya ha ocurrido otras veces
No es la primera vez que, dentro de un código de GitHub, se publican datos confidenciales que podrían dar lugar a ataques informáticos. Por ejemplo, muchos desarrolladores que suben códigos incluyen en su código las claves API de prueba de sus proyectos, con las cuales cualquiera podría autenticarse dentro de ellas. Sin ir más lejos, otro ejemplo muy sonado ocurrió en octubre de 2022, cuando se descubrió que Toyota llevaba 5 años exponiendo la clave de GitHub, desde la que se podía acceder a información confidencial de los clientes.
También se han encontrado en repositorios contraseñas privadas, cookies de sesión, y otro tipo de ficheros privados que no deberían formar parte del código pero que, por despiste del programador, acaban allí. Por ello, es de vital importancia asegurarse de que configuramos bien Git y GitHub, todo el código que se sube a la plataforma está siempre limpio y revisar muy bien los commits para asegurarse de que no viaja ningún fichero que no debería cuando sincronizamos el fichero.