
Scanner di segreti ad alte prestazioni. CLI, libreria Go, estensione Burp Suite ed estensione Chrome. 487 regole di rilevamento con validazione delle credenziali in tempo reale.
Titus è uno scanner di segreti ad alte prestazioni che rileva credenziali, chiavi API e token in codice sorgente, file e cronologia git. Include 487 regole di rilevamento che coprono centinaia di servizi e tipi di credenziali, tratte da NoseyParker e Kingfisher. Titus funziona come CLI, libreria Go, estensione per Burp Suite ed estensione per browser Chrome — tutte condividono lo stesso motore di rilevamento e lo stesso set di regole.
Progettato per ingegneri della sicurezza, penetration tester e team DevSecOps, Titus combina il matching regex accelerato da Hyperscan/Vectorscan con la validazione delle credenziali in tempo reale per trovare e verificare i segreti trapelati in tutto il tuo codebase.
Scarica un binario precompilato dalla pagina Releases oppure compila dal sorgente:```bash make build
Il binario sarà in `dist/titus`.
## Avvio rapido```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
I risultati vengono scritti in un datastore (titus.ds per impostazione predefinita) e stampati sulla console.
Scansiona i repository pubblici direttamente tramite URL — nessun token API richiesto:```bash
titus scan github.com/kubernetes/kubernetes
titus scan gitlab.com/gitlab-org/cli
titus scan https://github.com/org/repo titus scan https://gitlab.com/namespace/project.git
Per la scansione a livello di organizzazione o di utente, utilizzare i sottocomandi dedicati:```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
I token sono opzionali per i repository pubblici. Imposta GITHUB_TOKEN o GITLAB_TOKEN (oppure usa --token) per l'accesso ai repository privati e limiti API più elevati.
Scansiona direttamente le immagini dei container — nessun daemon docker, nessun binario docker richiesto. Titus estrae le immagini direttamente da qualsiasi registry OCI tramite HTTPS (usando le credenziali da ~/.docker/config.json), oppure legge le immagini da un tarball locale docker save o da una directory di layout di immagini OCI. Successivamente scansiona i metadati del manifest/config dell'immagine e ogni file regolare in ogni layer, inclusi i file dei layer inferiori eliminati dai layer successivi (poiché i segreti possono rimanere recuperabili dalla cronologia dell'immagine).```bash
titus scan --docker alpine:latest titus scan docker://ghcr.io/owner/repo:tag
titus scan --docker ./my-app.tar
titus scan --docker ./img/
L'autenticazione utilizza la tua configurazione Docker / Podman esistente (`~/.docker/config.json`, `${XDG_RUNTIME_DIR}/containers/auth.json`). I registry privati che richiedono un nuovo login devono prima essere autenticati con `docker login` (o `podman login`, o `crane auth login`) — titus non richiede le credenziali.
### Visualizzazione dei Risultati della Scansione
Usa `report` per rileggere i risultati di una scansione precedente:```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
Puoi anche controllare il formato di output al momento della scansione con --format:```bash
titus scan path/to/code --format json
### Convalida dei Segreti Rilevati