GitHub se ha convertido en un recurso vital para programadores y desarrolladores, albergando una amplia base de conocimientos y proyectos de código abierto. Sin embargo, el sitio está sufriendo actualmente un ataque automatizado que implica la clonación y creación de grandes cantidades de repositorios maliciosos.
Metodología del ataque
Un atacante desconocido logró crear e implementar un proceso automatizado que bifurca y clona repositorios existentes, agregando su propio código malicioso oculto bajo siete capas de ofuscación. Estos repositorios fraudulentos son difíciles de diferenciar de sus homólogos legítimos.
El flujo de la campaña es simple:
- Clonar repositorios existentes, como TwitterFollowBot, WhatsappBOT, discord-boost-tool y Twitch-Follow-Bot
- Infectarlos con cargadores de malware
- Subirlos nuevamente a GitHub con nombres idénticos
- Bifurcar automáticamente cada uno miles de veces
- Promocionarlos de forma encubierta en la web a través de foros, Discord, etc.
Impacto y consecuencias
Los desarrolladores que utilizan cualquiera de los repositorios maliciosos descomprimen una carga útil y un archivo ejecutable. El código consiste principalmente en una versión modificada del BlackCap-Grabber de código abierto, recopilando cookies de autenticación y credenciales de inicio de sesión antes de cargarlos en un servidor controlado por el atacante.
Una vez que un desarrollador hace uso de un repositorio afectado, una carga útil oculta comienza a descomprimir siete capas de ofuscación, incluido el código Python malicioso y un ejecutable binario. Luego, el código se pone a trabajar recopilando datos confidenciales y detalles de inicio de sesión antes de cargarlos en un servidor de control.
Monitoreo y respuesta
Los equipos de investigación y datos del proveedor de seguridad Apiiro han estado monitoreando el resurgimiento del ataque desde sus inicios relativamente menores en mayo del año pasado. Aunque la compañía dice que GitHub ha estado eliminando rápidamente los repositorios afectados, a su sistema de detección automatizada todavía le faltan muchos de ellos, y las versiones cargadas manualmente todavía se escapan de la red.
Dada la escala actual del ataque, que según los investigadores asciende a millones de repositorios cargados o bifurcados, incluso una tasa de error del 1% todavía significa potencialmente miles de repositorios comprometidos todavía en el sitio.
Factores de éxito
El ataque fue inicialmente de pequeña escala cuando se documentó por primera vez, con varios paquetes detectados en el sitio con las primeras versiones del código malicioso. Gradualmente ha ido ganando tamaño y sofisticación. Los investigadores han identificado varias razones potenciales para el éxito de la operación hasta el momento, incluido el tamaño general de la base de usuarios de GitHub y la creciente complejidad de la técnica.
Lo realmente intrigante aquí es la combinación de sofisticados métodos de ataque automatizados y la simple naturaleza humana. Los atacantes han dependido en gran medida de la ingeniería social para confundir a los desarrolladores y obligarlos a elegir el código malicioso en lugar del real y difundirlo involuntariamente, agravando el ataque y haciéndolo mucho más difícil de detectar.
Tal como están las cosas, este método parece haber funcionado notablemente bien. Aunque GitHub aún no ha comentado directamente sobre el ataque, sí emitió una declaración general asegurando a sus usuarios que «Tenemos equipos dedicados a detectar, analizar y eliminar contenido y cuentas que violan nuestras Políticas de Uso Aceptable. Empleamos revisiones manuales y detección a escala que utilizan el aprendizaje automático y evolucionan y se adaptan constantemente a los ataques adversarios».
Los peligros de volverse popular, al parecer, se han manifestado aquí. Aunque GitHub sigue siendo un recurso vital para los desarrolladores de todo el mundo, su naturaleza de código abierto y su enorme base de usuarios parecen haberlo dejado algo vulnerable.