Ataque Megalodon: Miles de Repositorios de GitHub Comprometidos en un Ataque Masivo a Pipelines CI/CD
Investigadores de ciberseguridad han descubierto una campaña automatizada masiva, denominada **Megalodon**, que inyectó código malicioso en miles de repositorios de **GitHub**. El ataque comprometió pipelines CI/CD, permitiendo el robo a gran escala de credenciales y secretos sensibles.

### Backdoor Masivo en Repositorios de GitHub
**Megalodon** realizó 5.718 commits maliciosos en 5.561 repositorios de **GitHub** en una ventana de seis horas. Según un informe de **SafeDep**, el atacante utilizó cuentas desechables e identidades de autor falsificadas (build-bot, auto-ci, ci-bot, pipeline-bot) para inyectar flujos de trabajo de **GitHub Actions** que contenían payloads bash codificados en base64.
Estos payloads exfiltran secretos de CI, credenciales de la nube, claves SSH, tokens OIDC y secretos de código fuente a un servidor C2 en 216.126.225[.]129:8443.
### Objetivos de Exfiltración de Datos
El malware recopila una amplia gama de datos sensibles, que incluyen:
* Variables de entorno de CI, /proc/*/environ y entorno PID 1
* Credenciales de **Amazon Web Services (AWS)**
* Tokens de acceso de **Google Cloud**
* Credenciales de rol de instancia obtenidas consultando puntos finales de **AWS IMDSv2**, metadatos de **Google Cloud** y **Microsoft Azure Instance Metadata Service (IMDS)**
* Claves privadas SSH
* Configuraciones de Docker y Kubernetes
* Tokens de Vault
* Credenciales de Terraform
* Historial de shell
* Claves API, cadenas de conexión de bases de datos, JWTs, claves privadas PEM y tokens de nube que coinciden con más de 30 patrones de expresiones regulares de secretos
* URL de solicitud de token OIDC de **GitHub Actions** y token
* GITHUB_TOKEN, tokens de GitLab CI/CD y tokens de Bitbucket
* Archivos .env, credentials.json, service-account.json y otros archivos de configuración
### Paquetes Afectados y Cronología del Ataque
Uno de los paquetes afectados es `@tiledesk/tiledesk-server`, que incluye un payload bash codificado en Base64 dentro de un archivo de flujo de trabajo de **GitHub Actions**. El ataque ocurrió el 18 de mayo de 2026, entre las 11:36 a. m. y las 5:48 p. m. UTC.
El atacante rotó entre cuatro nombres de autor (build-bot, auto-ci, ci-bot, pipeline-bot) y siete mensajes de commit, todos imitando el mantenimiento rutinario de CI. Se utilizaron PATs o claves de despliegue comprometidas para enviar los commits maliciosos.
### Variantes de Payload: SysDiag y Optimize-Build
Se observaron dos variantes de payload:
* **SysDiag**: Una variante masiva que agrega un nuevo flujo de trabajo activado en cada push y pull request.
* **Optimize-Build**: Una variante dirigida que se activa solo en `workflow_dispatch`, un disparador de **GitHub Actions** que permite a los usuarios ejecutar manualmente un flujo de trabajo bajo demanda.
El enfoque dirigido, como se vio en el compromiso de **Tiledesk**, se centra en los runners de CI/CD en lugar de las instalaciones de paquetes npm.

### Era de Ataques a la Cadena de Suministro
Una vez que el propietario del repositorio fusiona el commit malicioso, el malware se ejecuta dentro de sus pipelines CI/CD, propagándose aún más y permitiendo el robo a gran escala de credenciales y secretos.
Según Moshe Siman Tov Bustan de **OX Security**, este ataque marca el comienzo de una nueva era de ataques a la cadena de suministro, siguiendo incidentes anteriores como el compromiso de **GitHub** por parte de **TeamPCP**.
### Superficie de Ataque en Expansión de TeamPCP
El desarrollo se produce mientras **TeamPCP** ha armado la cadena de suministro de software interconectada para corromper cientos de herramientas de código abierto, abriéndose camino a través de varios ecosistemas y extorsionando a las víctimas para obtener ganancias. **GitHub**, propiedad de **Microsoft**, se ha convertido en la última adición a la larga lista de víctimas del grupo, que también incluye a **TanStack**, **Grafana Labs**, **OpenAI** y **Mistral AI**.
Los ataques de **TeamPCP** han alimentado una explotación cíclica de proyectos populares de código abierto, donde un compromiso alimenta al siguiente, permitiendo que el malware se propague como la pólvora de manera similar a un gusano. El grupo también parece estar motivado financiera y geopolíticamente, con conexiones a **BreachForums** y otros grupos de extorsión como **LAPSUS$** y **VECT**, y el despliegue de malware wiper al detectar máquinas ubicadas en Irán e Israel.
### Respuesta y Esfuerzos de Mitigación de NPM
Las consecuencias de la racha de ataques de **TeamPCP** y el **gusano Mini Shai-Hulud** han llevado a **npm** a invalidar tokens de acceso granulares con acceso de escritura que eluden la autenticación de dos factores (2FA). **NPM** también insta a los usuarios a cambiar a Trusted Publishing para reducir la dependencia de dichos tokens.
### Paquetes NPM Maliciosos que Suplantan a Polymarket
En un incidente separado, una cuenta desechable llamada "polymarketdev" publicó nueve paquetes **npm** maliciosos que suplantaban a las herramientas CLI de comercio de **Polymarket** en una ventana de 30 segundos para robar las claves privadas de Ethereum/Polygon de las víctimas a través de un hook postinstall. Los paquetes incluyen:
* polymarket-trading-cli
* polymarket-terminal
* polymarket-trade
* polymarket-auto-trade
* polymarket-copy-trading
* polymarket-bot
* polymarket-claude-code
* polymarket-ai-agent
* polymarket-trader
Tras la instalación, un script postinstall muestra un aviso falso de incorporación de billetera que pide al usuario que pegue su clave privada, afirmando que permanece cifrada. El script luego envía la clave sin procesar en texto plano a un **Cloudflare** Worker. Esto resalta la creciente sofisticación de los atacantes para aprovechar la ingeniería social para comprometer las credenciales de los usuarios.