implementing-secret-scanning-with-gitleaks
Faz seu agente detectar e prevenir segredos codificados em repositórios Git, configurando ferramentas e fluxos de trabalho.
O que ela faz
Esta ferramenta ajuda a encontrar e impedir que senhas, chaves de acesso ou outras informações sensíveis sejam acidentalmente enviadas para o seu código de programação. Ela verifica seu histórico de código e impede que novas informações sensíveis sejam adicionadas.
Quando usar
- ✓Quando você pode ter adicionado senhas ou chaves secretas ao seu código por engano.
- ✓Para impedir que senhas sejam adicionadas ao código antes mesmo de serem salvas.
- ✓Para verificar códigos antigos e encontrar senhas que já foram salvas.
Exemplo do que pedir para a IA
“Verifique meu código em busca de senhas ou chaves secretas que foram adicionadas.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta usa um programa chamado Gitleaks. Ele pode ser configurado para verificar seu código antes de você salvá-lo ou para analisar todo o histórico do seu código em busca de informações sensíveis.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill implementing-secret-scanning-with-gitleaksOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/implementing-secret-scanning-with-gitleaks/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Implementando Verificação de Segredos com Gitleaks
Quando Usar
- Quando desenvolvedores podem acidentalmente enviar chaves de API, senhas, tokens ou chaves privadas para repositórios
- Ao estabelecer barreiras de pré-commit que impedem que segredos entrem no histórico do git
- Ao verificar o histórico de repositórios existentes em busca de segredos previamente enviados que precisam ser rotacionados
- Quando requisitos de conformidade exigem a detecção de segredos em todos os repositórios de código-fonte
- Ao migrar de auditorias manuais de segredos para verificação contínua automatizada
Não use para detectar segredos em aplicações em execução ou memória (use detecção de segredos em tempo de execução), para gerenciar segredos após a detecção (use Vault ou AWS Secrets Manager), ou para verificar imagens de contêineres (use Trivy ou Grype).
Pré-requisitos
- Gitleaks v8.18+ instalado via binário, Go install ou Docker
- Framework Pre-commit instalado para integração de hook local
- Repositório Git com histórico para verificar
- Acesso à plataforma CI/CD (GitHub Actions, GitLab CI ou equivalente)
Fluxo de Trabalho
Etapa 1: Instalar e Executar Verificação Inicial do Repositório
Realize uma verificação de linha de base do repositório para identificar todos os segredos existentes no histórico do git.
# Install Gitleaks
brew install gitleaks # macOS
# or download binary from https://github.com/gitleaks/gitleaks/releases
# Scan entire git history for secrets
gitleaks detect --source . --report-format json --report-path gitleaks-report.json -v
# Scan only staged changes (for pre-commit)
gitleaks protect --staged --report-format json --report-path gitleaks-staged.json
# Scan specific commit range
gitleaks detect --source . --log-opts="HEAD~10..HEAD" --report-format json
# Scan without git history (filesystem only)
gitleaks detect --source . --no-git --report-format json
Etapa 2: Configurar Hook de Pré-commit
Configure o Gitleaks como um hook de pré-commit para impedir que segredos sejam enviados.
# .pre-commit-config.yaml
repos:
- repo: https://github.com/gitleaks/gitleaks
rev: v8.21.2
hooks:
- id: gitleaks
name: gitleaks
description: Detect hardcoded secrets using Gitleaks
entry: gitleaks protect --staged --verbose --redact
language: golang
pass_filenames: false
# Install pre-commit framework
pip install pre-commit
# Install hooks defined in .pre-commit-config.yaml
pre-commit install
# Run against all files (not just staged)
pre-commit run gitleaks --all-files
# Test the hook with a deliberate secret
echo 'AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"' >> test.txt
git add test.txt
git commit -m "test" # Should be blocked by gitleaks
Etapa 3: Integrar ao GitHub Actions
# .github/workflows/secret-scanning.yml
name: Secret Scanning
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
gitleaks:
name: Gitleaks Secret Scan
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Full history for comprehensive scanning
- name: Run Gitleaks
uses: gitleaks/gitleaks-action@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITLEAKS_LICENSE: ${{ secrets.GITLEAKS_LICENSE }} # Required for gitleaks-action v2
# Alternative: Run Gitleaks directly
- name: Install Gitleaks
run: |
wget -q https://github.com/gitleaks/gitleaks/releases/download/v8.21.2/gitleaks_8.21.2_linux_x64.tar.gz
tar -xzf gitleaks_8.21.2_linux_x64.tar.gz
chmod +x gitleaks
- name: Scan for secrets
run: |
if [ "${{ github.event_name }}" == "pull_request" ]; then
./gitleaks detect \
--source . \
--log-opts="${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }}" \
--report-format sarif \
--report-path gitleaks.sarif \
--exit-code 1
else
./gitleaks detect \
--source . \
--report-format sarif \
--report-path gitleaks.sarif \
--exit-code 1 \
--baseline-path .gitleaks-baseline.json
fi
- name: Upload SARIF
if: always()
uses: github/codeql-action/upload-sarif@v3
with:
sarif_file: gitleaks.sarif
category: gitleaks
Etapa 4: Criar Regras de Detecção Personalizadas
Crie regras específicas da organização para padrões de segredos internos.
…
Perguntas frequentes
O que são 'segredos' neste contexto?
Segredos são informações sensíveis como senhas, chaves de API, tokens de acesso ou chaves privadas que não devem ser expostas no código.
Posso usar isso para encontrar senhas em aplicativos em execução?
Não, esta ferramenta é apenas para código em repositórios. Para encontrar senhas em aplicativos em execução, você precisa de outras ferramentas.
O que é um 'hook de pre-commit'?
É uma verificação automática que roda antes que você salve (commit) seu código. Se ele encontrar algo sensível, ele impede que o código seja salvo.
Detalhes
Descrição original do autor
This skill covers implementing Gitleaks for detecting and preventing hardcoded secrets in git repositories. It addresses configuring pre-commit hooks, CI/CD pipeline integration, custom rule authoring for organization-specific secrets, baseline management for existing repositories, and remediation workflows for exposed credentials. '
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5950
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC