Palavra-chave `shell` do GitHub Actions: Flexibilidade inesperada e implicações de segurança
2025-04-08
A palavra-chave `shell` no GitHub Actions permite especificar o shell para um determinado bloco de execução. No entanto, isso é muito mais flexível do que a documentação sugere. Ele suporta não apenas shells predefinidos como bash e pwsh, mas qualquer executável no `$PATH` do sistema. Isso significa que você pode executar código C usando um compilador C, ou até mesmo modificar dinamicamente o `$GITHUB_PATH` para alterar o comportamento do shell. Embora isso ofereça flexibilidade, também introduz riscos de segurança, pois gravações de arquivos podem implicar execução. Isso contrasta com a prática inesperada do GitHub de realizar pesquisas de `$PATH` mesmo para seus valores de shell "conhecidos".
Desenvolvimento