Hackers reescribieron el historial de GitHub y ocultaron el malware "OverLord" en una popular librería de Reac

Hackers reescribieron el historial de GitHub y ocultaron el malware "OverLord" en una popular librería de Reac

Una sola línea en package.json convirtió una compilación normal en la ejecución de una cadena maliciosa; la manipulación solo quedó registrada en el registro del push forzado y el paquete en npm no resultó afectado.

image

Actores maliciosos sustituyeron un commit en el repositorio de GitHub de la popular biblioteca React antd-img-crop y ocultaron en el código un instalador del programa espía OverLord. La cadena maliciosa se activa durante la compilación del proyecto y pone en peligro contraseñas, monederos de criptomonedas y claves de desarrolladores. El paquete oficial de npm no se vio afectado.

El ataque fue descubierto por especialistas de SafeDep. El 31 de octubre de 2026, desde la cuenta del responsable del proyecto se forzó el envío al repositorio del commit 2aa8504. La entrada replicaba la versión 4.30.0, conservando el autor, la fecha 12 de marzo y el mensaje. La biblioteca antd-img-crop se usa para recortar imágenes en Ant Design y recibe alrededor de 98 000 descargas por semana a través de npm.

En el commit falso apareció el hook "prebuild": "node scripts/prebuild.js". Al ejecutar el comando habitual npm run build, primero se lanzaba el script malicioso. Después se descargaba un instalador falso deepfake_guard, seguido de JavaScript cifrado que se descifraba y ejecutaba directamente en memoria. La dirección del servidor de mando del malware se resolvía a través de GitLab, usándolo como un directorio oculto.

La carga útil final de OverLord funciona en macOS, Linux y Windows. El programa roba contraseñas y cookies de navegadores, claves SSH, archivos .env, .npmrc y .gitconfig, así como el contenido del llavero de macOS. Estaban en riesgo las extensiones MetaMask, Phantom y Rabby y alrededor de 34 monederos de escritorio. Para obtener secretos adicionales, el malware muestra una falsa solicitud de contraseña del sistema.

Tras la infección, OverLord intenta persistir en el sistema haciéndose pasar por programas de Google. En macOS se crea el LaunchDaemon com.google.UpdateSupporter, en Linux aparece el servicio google-agent.service y en Windows se usa la tarea GoogleUpdateSupporterNode. Además de robar información, el programa ofrece al atacante acceso remoto al equipo.

Los investigadores identificaron otros dos posibles vectores de infección. El primero está relacionado con un portal de empleo falso que imitaba a la empresa real de criptomonedas Amber Group. El sitio reemplazaba un comando en el portapapeles esperando que el visitante lo pegara en el terminal. El segundo vector, según las sospechas, pasaba por una extensión de VS Code o Cursor llamada google-dev-tools.google-update-support, que el malware eliminaba tras ejecutarse.

El esquema recuerda a la campaña Contagious Interview, cuyos participantes atraen a desarrolladores con ofertas de empleo falsas y proyectos infectados. Sin embargo, la similitud de los métodos no prueba la implicación de un grupo concreto. En la infraestructura se detectaron los dominios icagllmbt[.]space, registrado el 12 de octubre, y buildwithknexus[.]xyz, registrado el 5 de agosto y ya no disponible.

Los rastros del ataque aparecieron ya el 21 de agosto, cuando la misma cuenta añadió un cargador similar al tema de Hugo llamado hugo-paper. El código malicioso fue eliminado solo el 21 de octubre. SafeDep considera que la cuenta del responsable sigue comprometida. Los detalles de la investigación fueron publicados por Kunal Singh el 3 de noviembre de 2026.

Los desarrolladores pueden detectar la sustitución por dos señales. Los commits que antes tenían firma digital pierden el distintivo Verified, y en el registro de actividad del repositorio queda constancia de un force-push. Ataques similares a desarrolladores muestran por qué ni siquiera un proyecto conocido debe considerarse seguro sin verificar el historial de cambios y los scripts de compilación.