Grave brecha de Trivy en Github Actions amenaza tus secretos, tokens, credenciales e incluso tus artefactos, qué debes hacer y saber
la ironía de la seguridad: las github actions de trivy secuestradas (otra vez)
En un giro del destino que haría que cualquier SRE se sirviera un trago fuerte, Trivy —el escáner de vulnerabilidades estándar de la industria mantenido por Aqua Security— ha sido comprometido por segunda vez en un mes. Parece que la herramienta diseñada para encontrar brechas en tu infraestructura era, en sí misma, una brecha bastante grande.
Esto no es solo un pequeño error en un archivo README. Estamos hablando de un ataque a la cadena de suministro (supply chain attack) a gran escala, donde se secuestraron 75 etiquetas de versión (tags) para distribuir un infostealer diseñado para succionar cada secreto en tu pipeline de CI/CD.
el segundo acto de una tragedia en la cadena de suministro
El la brecha afectó a dos GitHub Actions principales: aquasecurity/trivy-action y aquasecurity/setup-trivy. Estas son el pan de cada día en los pipelines de DevOps modernos, utilizadas para escanear imágenes de contenedores y configurar el entorno de Trivy.
Según investigadores de Socket, un atacante logró realizar un force-push en 75 de las 76 etiquetas de versión en el repositorio trivy-action. Al sobrescribir las etiquetas existentes (como v0.1.0, v0.2.0, etc.), el atacante se aseguró de que cualquiera que apuntara a estas versiones "estables" descargara automáticamente un payload malicioso.
Es un ataque clásico de "Tag Poisoning" (envenenamiento de etiquetas), demostrando una vez más que, en el mundo de Git, un tag es tan permanente como una promesa de año nuevo.
cómo ocurrió el atraco: tag poisoning 101
El atacante no necesitó explotar un zero-day en Git. Simplemente utilizó credenciales válidas —probablemente un Personal Access Token (PAT) o un token de automatización— obtenidas de una brecha anterior.
la mecánica del ataque
- Reutilización de credenciales: Los atacantes aprovecharon secretos robados durante el incidente "hackerbot-claw" a finales de febrero de 2026.
- Force-Push de etiquetas: En lugar de crear un nuevo release sospechoso, el atacante reescribió la historia. Actualizaron las etiquetas existentes para que apuntaran a commits maliciosos.
- Ejecución: Cuando se ejecutaba un flujo de trabajo de GitHub Actions, este obtenía la etiqueta "envenenada", ejecutando un infostealer basado en Python en el runner.
# Lo que pensabas que estabas ejecutando:
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@v0.28.0 # Esta etiqueta fue secuestrada
# Lo que realmente estaba pasando:
# El runner descarga el commit malicioso asociado con v0.28.0
# y ejecuta el infostealer de Python embebido.
el payload: una aspiradora digital de secretos
El código malicioso no fue sutil. Una vez activo en un runner de GitHub, realizaba un barrido sistemático del entorno para robar:
- Credenciales de nube: Claves de AWS, Azure y GCP.
- Tokens de Kubernetes: Porque, ¿por qué no apoderarse de todo el clúster?
- Claves SSH y configuraciones de Git: Para movimiento lateral.
- Billeteras de criptomonedas: Específicamente apuntando a pares de claves de validadores de Solana (un pequeño bono para los hackers).
Si la exfiltración principal a scan.aquasecurtiy[.]org (noten la sutil falta de ortografía) fallaba, el script tenía un plan de respaldo: creaba un repositorio público llamado tpcp-docs bajo la propia cuenta de GitHub de la víctima y volcaba allí los datos robados. Eso es añadir sal a la herida.
la causa raíz: una lección sobre "contención incompleta"
Aqua Security admitió que esta segunda ola fue el resultado directo de una "contención incompleta" del primer incidente. Aunque rotaron los secretos, el proceso no fue "atómico". En el lapso entre la revocación y la rotación, los atacantes capturaron los nuevos tokens.
Es un recordatorio aleccionador para los SRE: si no quemas la casa completa después de una brecha, las termitas simplemente se mudarán a la siguiente viga.
atribución: conozcan a teampcp
El payload se autoidentificó como el "TeamPCP Cloud stealer". TeamPCP (también conocido como DeadCatx3 o ShellForce) es un grupo ya conocido en círculos de seguridad. Se especializan en vulnerar infraestructura para el robo de datos y extorsión. Aunque las "falsas banderas" siempre son una posibilidad en la atribución, las TTP (Tácticas, Técnicas y Procedimientos) coinciden estrechamente con el trabajo conocido del grupo.
cómo detener la hemorragia
Si estás usando Trivy en tus pipelines, detén lo que estés haciendo y verifica tus versiones.
1. Usa versiones seguras
Asegúrate de estar utilizando los siguientes lanzamientos (o posteriores):
2. Fija por SHA, no por etiqueta
Esta es la lección más importante. Las etiquetas son mutables; los hashes SHA-256 no lo son. Al fijar tus GitHub Actions a un hash de commit específico, eliminas el riesgo de secuestro de etiquetas.
# NO hagas esto:
uses: aquasecurity/trivy-action@v0.28.0
# HAZ esto (hash de ejemplo):
uses: aquasecurity/trivy-action@1234567890abcdef1234567890abcdef12345678
3. Rótalo todo
Si ejecutaste una versión comprometida (específicamente la v0.69.4 del binario o las etiquetas de la action secuestradas), asume que todos tus secretos están comprometidos. Rota tus claves de AWS, PATs de GitHub y tokens de Kubernetes de inmediato.
4. Filtrado de red
Bloquea los siguientes indicadores de compromiso (IoCs) a nivel de firewall o proxy:
- Dominio:
scan.aquasecurtiy[.]org - IP:
45.148.10[.]212
Para más detalles técnicos, puedes seguir la discusión en curso en el GitHub oficial de Aqua Security.
Fuente: The Hacker News
Referencia del autor: Basado en reportes de The Hacker News e investigaciones de Socket, Wiz y StepSecurity.
Más contenido:
Vulnerabilidad alta en GitHub Actions: hackerbot-claw usa tu CI/CD como una plataforma de "pwn-as-a-service"
Una campaña de ataque autónoma, rastreada como "hackerbot-claw", está acechando actualmente repositorios públicos. ¿Su misión? Encontrar workflows de GitHub Actions inseguros y convertirlos en puertas de enlace para la ejecución de código arbitrario y la exfiltración de credenciales.
Leer más →
High severity Github Actions exploit: hackerbot-claw uses your ci/cd as a "pwn-as-a-service" platform
overview It turns out that automating your workflows also makes it incredibly easy for attackers to automate your demise. An autonomous attack campaign, tracked as "hackerbot-claw," is currently prowling public repositories. Its mission? Finding insecure GitHub Actions workflows and turning them into gateways for arbitrary code execution and