Investigadores detallan un patrón de CI de GitHub Actions que evade los escáneres de seguridad habituales
Los investigadores de seguridad han identificado una debilidad en GitHub Actions que puede pasar inadvertida para las herramientas de seguridad de CI estándar porque el problema no se encuentra en un...
Los investigadores de seguridad han identificado una debilidad en GitHub Actions que puede pasar inadvertida para las herramientas de seguridad de CI estándar porque el problema no se encuentra en un único archivo de flujo de trabajo, sino en la forma en que interactúan varios flujos de trabajo.
En junio de 2026, Novee Security afirmó que revisó unos 30.000 repositorios de alto valor en npm, PyPI, crates.io y proyectos de Go, y encontró 654 casos potencialmente afectados. Más de 300 fueron confirmados como explotables. El problema, denominado Cordyceps, afectaba a canalizaciones de compilación utilizadas por importantes organizaciones, entre ellas Microsoft, Google, Apache, Cloudflare y la Python Software Foundation.
Según los investigadores, los atacantes solo necesitaban una cuenta gratuita de GitHub para comenzar a aprovechar este patrón. El peligro aparecía cuando los flujos de trabajo diseñados para solicitudes de incorporación de cambios no confiables se combinaban con flujos de trabajo con mayores privilegios que podían acceder a secretos o contar con permisos de escritura. GitHub Security Lab ha descrito vías de abuso similares como una solicitud pwn.
Cómo funciona el ataque
El informe destaca tres vías habituales para comprometer los sistemas:
- Inyección de comandos cuando se insertan directamente en comandos de shell valores controlados por el atacante.
- Inyección de código cuando los scripts del flujo de trabajo evalúan entradas no confiables como JavaScript.
- Escalada de privilegios entre flujos de trabajo cuando los datos de un trabajo con bajo nivel de confianza son consumidos por un trabajo posterior con privilegios.
Como cada archivo de flujo de trabajo puede parecer válido por sí solo, los escáneres que inspeccionan un archivo cada vez podrían no detectar el riesgo. El planteamiento de Novee es que el fallo surge de la conexión entre los flujos de trabajo, no de una única línea malformada.
Los investigadores citaron ejemplos relacionados con el repositorio Azure Sentinel de Microsoft, donde un comentario en una solicitud de incorporación de cambios podía activar la ejecución de código en CI y exponer una clave de GitHub App, y con el proyecto de ejemplo AI Agent Development Kit de Google, donde una cadena similar podía conducir a un amplio acceso a la nube. También se informó de que Apache Doris había presentado un problema relacionado que posteriormente fue corregido.
Novee afirmó no haber encontrado pruebas de que la técnica se utilizara en ataques activos. Aun así, el informe advierte que el desarrollo asistido por IA puede amplificar el problema al generar patrones de flujos de trabajo inseguros a gran escala. Entre las defensas recomendadas se incluyen utilizar pull_request en lugar de pull_request_target para contribuciones no confiables, limitar los permisos predeterminados de los tokens, fijar las acciones de terceros a identificadores SHA de confirmaciones y exigir aprobación manual antes de ejecutar trabajos con privilegios.
