El 10 de noviembre de 2026, la campaña wfx-loot utilizó credenciales robadas de 4.837 cuentas de GitHub para explorar 61.764 repositorios y comprobar cuáles permitían modificar código. El actor abrió pull requests tituladas «docs: dependency audit notes» y el 92% seguía abierto, según Aikido.
Cuando disponía de permisos de escritura, el atacante modificaba workflows de GitHub Actions, añadía uno nuevo en una rama temporal o introducía un hook de instalación de npm para ejecutar un script de shell de unas 1.500 líneas. Los investigadores confirmaron el robo de secretos en al menos 1.835 objetivos.
El código recopilaba tokens y variables de GitHub Actions, credenciales de AWS, Azure y Google Cloud, así como secretos de Git, SSH, GPG, Docker, Kubernetes, npm, PyPI, Vault y Terraform. También buscaba credenciales de OpenAI, Anthropic, Gemini, Hugging Face, Cursor y GitHub Copilot, además de claves privadas, archivos .env, historiales de shell, memoria de procesos y artefactos de workflows.
La campaña podía intercambiar tokens OIDC de GitHub por sesiones temporales en AWS, Azure y GCP. En AWS, el script podía encadenar roles IAM para crear credenciales de larga duración, mientras que en GCP permitía suplantar identidades mediante credenciales de cuentas de servicio. Cuando los permisos lo permitían, también podía establecer persistencia modificando políticas de identidad y confianza en la nube.
Los datos recogidos se comprimían y se exfiltraban mediante peticiones HTTP POST a dos endpoints controlados por el atacante. Después, el actor revertía los cambios y eliminaba ejecuciones y registros de workflows en menos de un minuto. La publicación automatizada también introdujo código en Packagist, en digitalelvis/neuronai-studio 3.14.3, y en dos versiones del módulo de Go github.com/onuragtas/docker-env, v1.0.278 y v1.0.280.
Aikido detectó cuentas pertenecientes a organizaciones Fortune 100, la US General Services Administration, el gobierno francés, Nextcloud y WebdriverIO. Unas 50 parecían disponer además de permisos de publicación en ecosistemas y registros de software de código abierto como npm, PyPI, Go, crates y Packagist.
Los responsables de repositorios deben buscar la rama «wfx-docs», las pull requests utilizadas para las sondas y saltos en la numeración de ejecuciones de workflows. Si se confirma la ejecución del payload, Aikido recomienda considerar comprometidos todos los secretos y roles cloud disponibles para esos workflows y rotarlos de inmediato.
Fuente: BleepingComputer.