Segurança em CI é daquelas coisas que todo mundo concorda que é necessário mas ninguém tem pronto. Em vez de montar do zero, aqui vão 3 workflows que você copia para .github/workflows/ e ajusta uma URL.
1. Auditoria passiva semanal (headers/TLS/CORS/expostos)
name: Security audit semanal
on:
schedule: [{ cron: "0 8 * * 1" }]
jobs:
audit:
runs-on: ubuntu-latest
steps:
- uses: bryanrafaelbueno/reconpp-action@main
with:
url: "https://SEU-SITE.com"
Gera relatório Markdown por site com severidade + correção — a cada segunda-feira você vê a evolução da postura.
2. SBOM e dependências
name: SBOM
on: [push, pull_request]
jobs:
scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm audit --audit-level=high || true
- run: pip install pip-audit && pip-audit || true
3. Secret scan
- name: Secret scan
run: |
docker run --rm -v "$PWD:/code" \
trufflesecurity/trufflehog:latest filesystem /code --fail=yes || true
Isso pega chaves e credenciais commitadas antes de virar incidente.
Por que passivo importa
O audit semanal usa só leitura de cabeçalhos — sem fuzzing, sem brute force. Não vai derrubar site nem alertar seu SRE à toa. É a primeira camada que qualquer auditoria profissional verifica.
Os três workflows juntos (com os detalhes de licença e variáveis) estão no meu CI Security Kit — prontos, comentados e com o fluxo de auditoria incluído:
- Loja (Pix): https://bryanrafaelbueno.github.io/audit-br-store/
- Ferramenta grátis: https://bryanrafaelbueno.github.io/audit-br-store/header-checker.html
Segurança boa é a que roda em todo push. 🛡️
Top comments (0)