
titus v1.2.8
Scanner de segredos de alto desempenho. CLI, biblioteca Go, extensão Burp Suite e extensão Chrome. 487 regras de detecção com validação de credenciais ao vivo.
Titus: Scanner de Segredos de Alto Desempenho
Titus é um scanner de segredos de alto desempenho que detecta credenciais, chaves de API e tokens em código-fonte, arquivos e histórico do git. Ele vem com 487 regras de detecção cobrindo centenas de serviços e tipos de credenciais, extraídas do NoseyParker e do Kingfisher. O Titus funciona como CLI, biblioteca Go, extensão do Burp Suite e extensão do navegador Chrome — todos compartilhando o mesmo mecanismo de detecção e conjunto de regras.
Criado para engenheiros de segurança, testadores de penetração e equipes de DevSecOps, o Titus combina correspondência de regex acelerada por Hyperscan/Vectorscan com validação de credenciais em tempo real para encontrar e verificar segredos vazados em toda a sua base de código.
Índice
- Por que o Titus?
- Instalação
- Início Rápido
- Opções de Escaneamento
- Pontuação de Achados
- Biblioteca Go
- Extensão do Burp Suite
- Extensão de Navegador
- Compilando a partir do Código-Fonte
- Contribuindo
- Licença
Por que o Titus?
- Escaneamento rápido de segredos: Correspondência de regex acelerada por Hyperscan/Vectorscan quando disponível, com um fallback em Go puro para portabilidade em qualquer plataforma.
- Ampla cobertura de detecção de credenciais: 487 regras detectam chaves de API, tokens e credenciais para AWS, GCP, Azure, GitHub, Slack, bancos de dados, sistemas de CI/CD e centenas de outros serviços.
- Validação de segredos em tempo real: Os segredos detectados são verificados junto às suas APIs de origem para confirmar se estão ativos, reduzindo falsos positivos e priorizando a remediação.
- Pontuação de severidade baseada em risco: Cada achado recebe uma pontuação numérica (0–100) e um nível de severidade (info → crítico). As pontuações são ajustadas por metadados estáticos de regras, contexto de acessibilidade do código e chamadas de API em tempo real que medem o raio de impacto real de uma credencial — assim, os achados mais perigosos sempre aparecem primeiro.
- Escaneamento de imagens de contêiner: Escaneie imagens Docker e OCI diretamente de qualquer registro, tarball ou diretório de layout OCI — sem necessidade de daemon ou binário do Docker.
- Múltiplas interfaces para cada fluxo de trabalho: Escaneie pela CLI, incorpore como biblioteca Go, escaneie passivamente o tráfego HTTP no Burp Suite ou escaneie páginas web no Chrome durante testes de segurança de aplicações.
- Extração de arquivos binários: Extraia e escaneie segredos de documentos do Office, PDFs, arquivos compactados (zip, tar, 7z), aplicativos móveis (APK, IPA), extensões de navegador e muito mais.
Instalação
Baixe um binário pré-compilado na página de Releases ou compile a partir do código-fonte:```bash make build
O binário estará em `dist/titus`.
## Início Rápido```bash
# Scan a file for secrets
titus scan path/to/file.txt
# Scan a directory for leaked credentials
titus scan path/to/directory
# Scan a public GitHub repository (no token needed)
titus scan github.com/org/repo
# Scan a public GitLab project (no token needed)
titus scan gitlab.com/namespace/project
# Scan git history for secrets in past commits
titus scan --git path/to/repo
# Scan a Docker / OCI image (pulled from a registry — no docker daemon required)
titus scan --docker alpine:latest
# Validate detected secrets against source APIs
titus scan path/to/code --validate
Os resultados são gravados num datastore (titus.ds por predefinição) e impressos na consola.
Opções de Análise
Análise de GitHub e GitLab
Analise repositórios públicos diretamente por URL — não é necessário token de API:```bash
Scan a GitHub repository
titus scan github.com/kubernetes/kubernetes
Scan a GitLab project
titus scan gitlab.com/gitlab-org/cli
Full URLs work too
titus scan https://github.com/org/repo titus scan https://gitlab.com/namespace/project.git
Para varredura em toda a organização ou em todo o usuário, use os subcomandos dedicados:```bash
# Scan all public repos in a GitHub org
titus github --org kubernetes
# Scan all repos in a GitHub org with a token (private repos + higher rate limits)
titus github --org kubernetes --token $GITHUB_TOKEN
# Scan all repos for a GitHub user
titus github --user octocat
# Scan all projects in a GitLab group
titus gitlab scan --group mygroup --token $GITLAB_TOKEN
# Scan a single repo with git history (finds deleted secrets)
titus github owner/repo --git
Tokens são opcionais para repositórios públicos. Defina GITHUB_TOKEN ou GITLAB_TOKEN (ou use --token) para acesso a repositórios privados e limites de taxa de API mais altos.
Verificação de Imagens Docker / OCI
Verifique imagens de contêiner diretamente — sem daemon do docker, sem necessidade do binário docker. O Titus extrai imagens diretamente de qualquer registro OCI via HTTPS (usando credenciais de ~/.docker/config.json), ou lê imagens de um tarball local de docker save ou de um diretório de layout de imagem OCI. Em seguida, verifica os metadados do manifesto/configuração da imagem e cada arquivo regular em cada camada, incluindo arquivos de camadas inferiores excluídos por camadas posteriores (já que segredos podem permanecer recuperáveis do histórico da imagem).```bash
Pull from a registry and scan
titus scan --docker alpine:latest titus scan docker://ghcr.io/owner/repo:tag
Scan an image saved to a tarball:
docker save my-app:latest -o my-app.tar
podman save my-app:latest -o my-app.tar
titus scan --docker ./my-app.tar
Scan an OCI image layout directory:
docker buildx build --output type=oci,dest=./img/ .
skopeo copy docker://my-app:latest oci:./img:latest
titus scan --docker ./img/
A autenticação usa sua configuração existente do Docker / Podman (`~/.docker/config.json`, `${XDG_RUNTIME_DIR}/containers/auth.json`). Registries privados que precisam de um novo login devem primeiro ser autenticados com `docker login` (ou `podman login`, ou `crane auth login`) — o titus não solicita credenciais.
### Visualizando Resultados de Scan
Use `report` para reler os achados de um scan anterior:```bash
# Human-readable summary of detected secrets
titus report
# JSON output for programmatic processing
titus report --format json
# SARIF output for CI/CD integration with GitHub Advanced Security
titus report --format sarif
# Report from a specific datastore
titus report --datastore path/to/titus.ds
Você também pode controlar o formato de saída no momento da varredura com --format:```bash
titus scan path/to/code --format json
### Validando Segredos Detectados