Open-Source Code Analysis

Segredos no Código

Repositórios públicos frequentemente contêm credenciais, chaves de API e informações sensíveis expostas acidentalmente.


🎯 O que é?

Definição

Análise de código open-source é o processo de examinar repositórios públicos em busca de vulnerabilidades, credenciais vazadas e informações sensíveis.

O que Procurar?

TipoExemplos
CredenciaisSenhas, tokens de API
ConfiguraçõesArquivos .env, config.yml
ChavesAWS, Azure, GCP credentials
Informações internasIPs, hostnames, endpoints
VulnerabilidadesCódigo inseguro, dependências

🛠️ Ferramentas

Arsenal para Análise de Código

FerramentaDescrição
GitLeaksDetecta segredos em repositórios Git
TruffleHogBusca credenciais em histórico Git
git-secretsPrevine commits com segredos
GitrobReconhecimento em organizações GitHub
GitHub SearchBusca avançada nativa

💻 GitHub Dorks

Buscas Avançadas no GitHub

Buscando Credenciais

# Senhas em arquivos .env
filename:.env password

# Chaves AWS
"AKIA" filename:credentials

# Tokens de API
"api_key" OR "apikey" extension:json

# Configurações de banco de dados
"DB_PASSWORD" extension:env

Buscando por Organização

# Arquivos de uma empresa
org:empresa filename:.env

# Repositórios específicos
user:desenvolvedor password

🔍 Processo de Análise

Metodologia

1. Identificar repositórios do alvo
   ↓
2. Clonar repositórios relevantes
   ↓
3. Executar ferramentas de scan
   ↓
4. Analisar histórico de commits
   ↓
5. Verificar branches não principais
   ↓
6. Documentar descobertas

📊 Exemplo com TruffleHog

# Instalar
pip install truffleHog
 
# Escanear repositório
trufflehog git https://github.com/alvo/repo
 
# Escanear apenas histórico recente
trufflehog git https://github.com/alvo/repo --since-commit HEAD~100

⚠️ Considerações Éticas

Atenção

  • Use apenas para reconhecimento autorizado
  • Reporte credenciais expostas de forma responsável
  • Não utilize credenciais encontradas
  • Documente para o relatório de pentest