DEV Community

Bryan Rafael
Bryan Rafael

Posted on

CI de segurança em 10 minutos: workflows prontos (audit semanal + SBOM + secret scan)

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"
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode

3. Secret scan

- name: Secret scan
  run: |
    docker run --rm -v "$PWD:/code" \
      trufflesecurity/trufflehog:latest filesystem /code --fail=yes || true
Enter fullscreen mode Exit fullscreen mode

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:

Segurança boa é a que roda em todo push. 🛡️

Top comments (0)