GitHub ha desplegado en los últimos meses una serie de mejoras en npm y GitHub Actions dirigidas a interrumpir las técnicas de ataque a la cadena de suministro que durante el último año han afectado a cientos de proyectos open source. Los ataques suelen dirigirse a cuentas de mantenedores o a flujos de Actions para introducir malware capaz de exfiltrar credenciales y propagarse a otros proyectos.
En la fase de compromiso inicial, GitHub ha activado protección preventiva para cuentas npm de alto impacto, que pasan a modo lectura durante 72 horas tras un cambio de correo o uso de un código 2FA. En GitHub Actions, se han endurecido los valores por defecto de checkout en pull_request_target para evitar la ejecución de código de forks no confiables, se ha añadido control sobre quién puede disparar flujos y se ha limitado la caché a flujos de menor confianza para impedir que un ataque escale a credenciales privilegiadas.
Para cortar la exfiltración de credenciales, la publicación confiable en npm ya es compatible con CircleCI y se ha presentado en previsualización técnica un firewall de red para Actions que registra el tráfico saliente. Por último, el staging publishing y los próximos cambios en npm v12 dificultan la propagación rápida de malware al desacoplar las credenciales de CI/CD de las de publicación en el registro.
