Un grupo de investigadores de seguridad de OrchidFiles ha descubierto un ataque masivo que afecta a GitHub y que ha conseguido inyectar malware en miles de repositorios. Han presentado su informe en una publicación con fecha de 18 de junio. Allí explican cómo han utilizado esta estrategia para distribuir troyanos y comprometer seriamente la seguridad y privacidad de los usuarios.
Esta actividad maliciosa ha puesto de manifiesto importantes deficiencias en la detección y monitorización automatizadas de repositorios en la que es una de las plataformas más utilizadas a nivel global. Además, demuestra hasta qué punto esto puede suponer un peligro importante para los usuarios.
Problemas en repositorios de GitHub
Desde OrchidFiles detectaron este problema después de que uno de sus investigadores viera que había una versión clonada de su propio repositorio de GitHub en los resultados de búsqueda. Este clon, según informa, tenía metadatos, historial y atribución de colaboradores idénticos.
En ese repositorio incluía un nuevo enlace en su archivo README que apuntaba a un archivo ZIP externo. Tras investigar, se dieron cuenta de que no se trataba de algo aislado, sino que formaba parte de miles de repositorios que, de forma similar, estaban afectados. Concretamente, 10.000 repositorios comprometidos.
Ese archivo ZIP contenía generalmente cuatro archivos: un script de comandos, un ejecutable, un archivo secundario con un nombre aleatorio y una biblioteca lua51.dll.
Los investigadores indican que escáneres de seguridad como VirusTotal no detectaron virus, aunque la carga del propio archivo ZIP activó alertas de troyanos, lo que indicaba un intento de evadir los mecanismos de escaneo basados en URL.
El investigador creó un script de detección personalizado con el objetivo de cuantificar el alcance. En vez de escanear los más de 500 millones de repositorios que se estima que hay, se centró en la actividad reciente, identificando aquellos con confirmaciones frecuentes. El filtrado inicial redujo 16 millones de eventos de confirmación durante cinco días a aproximadamente 3.000 repositorios que presentaban actualizaciones periódicas.
El análisis final identificó unos 40.000 repositorios sospechosos, de los cuales exactamente 10.000 coincidían con el patrón de distribución del malware.
| Archivo | Función Sospechosa | Riesgo Asociado |
|---|---|---|
| Script de comandos | Inicia la cadena de ejecución | Ejecución de código arbitrario |
| Ejecutable | Payload principal | Robo de credenciales y tokens |
| lua51.dll | Biblioteca de scripting | Extiende capacidades maliciosas |
| Archivo aleatorio | Datos adicionales / cifrado | Ofuscación / datos exfiltrados |
Cómo funciona y cuál es el impacto
Los atacantes pueden aprovecharse de una configuración débil y así ganar acceso a un repositorio. Eso les permite introducir un archivo o modificar alguno, con un cambio que parezca inofensivo. El propietario puede aceptar ese cambio y eso activa el malware. A partir de ahí, el malware puede detectar credenciales, claves de acceso, tokens de autenticación o configuraciones sensibles. Eso incluso permitiría que llegue a otros proyectos.
Esto puede afectar a muchos usuarios y empresas que utilicen un proyecto de código abierto. No se trata de una infección aislada, sino que puede tener un impacto mucho mayor.
Para evitar problemas, es fundamental siempre utilizar buenas contraseñas, habilitar la autenticación en dos pasos y no cometer errores a la hora de descargar archivos o instalar aplicaciones. Es clave que tengas tus equipos bien protegidos y para ello también es fundamental actualizarlos y contar con programas de seguridad que ayuden a detectar y eliminar amenazas en forma de malware.
