
titus v1.2.8
Escáner de secretos de alto rendimiento. CLI, biblioteca Go, extensión de Burp Suite y extensión de Chrome. 487 reglas de detección con validación de credenciales en vivo.
Titus: Escáner de secretos de alto rendimiento
Titus es un escáner de secretos de alto rendimiento que detecta credenciales, claves de API y tokens en código fuente, archivos e historial de git. Incluye 487 reglas de detección que cubren cientos de servicios y tipos de credenciales, extraídas de NoseyParker y Kingfisher. Titus funciona como CLI, biblioteca de Go, extensión de Burp Suite y extensión de navegador Chrome — todas comparten el mismo motor de detección y conjunto de reglas.
Diseñado para ingenieros de seguridad, pentesters y equipos de DevSecOps, Titus combina la coincidencia de expresiones regulares acelerada por Hyperscan/Vectorscan con validación de credenciales en vivo para encontrar y verificar secretos filtrados en todo tu código base.
Tabla de contenidos
- ¿Por qué Titus?
- Instalación
- Inicio rápido
- Opciones de escaneo
- Puntuación de hallazgos
- Biblioteca de Go
- Extensión de Burp Suite
- Extensión de navegador
- Compilar desde el código fuente
- Contribuir
- Licencia
¿Por qué Titus?
- Escaneo de secretos rápido: coincidencia de expresiones regulares acelerada por Hyperscan/Vectorscan cuando está disponible, con un fallback en Go puro para portabilidad en cualquier plataforma.
- Amplia cobertura de detección de credenciales: 487 reglas detectan claves de API, tokens y credenciales de AWS, GCP, Azure, GitHub, Slack, bases de datos, sistemas CI/CD y cientos de servicios más.
- Validación de secretos en vivo: los secretos detectados se verifican contra sus API de origen para confirmar si están activos, lo que reduce los falsos positivos y prioriza la remediación.
- Puntuación de severidad basada en riesgo: cada hallazgo recibe una puntuación numérica (0–100) y un nivel de severidad (info → critical). Las puntuaciones se ajustan mediante metadatos estáticos de las reglas, contexto de accesibilidad del código y llamadas a API en vivo que miden el radio de impacto real de una credencial — para que los hallazgos más peligrosos siempre aparezcan primero.
- Escaneo de imágenes de contenedores: escanea imágenes Docker y OCI directamente desde cualquier registro, tarball o directorio de layout OCI — sin necesidad de un daemon o binario de Docker.
- Múltiples interfaces para cada flujo de trabajo: escanea desde la CLI, intégralo como biblioteca de Go, escanea pasivamente el tráfico HTTP en Burp Suite o escanea páginas web en Chrome durante pruebas de seguridad de aplicaciones.
- Extracción de archivos binarios: extrae y escanea secretos de documentos de Office, PDFs, archivos comprimidos (zip, tar, 7z), aplicaciones móviles (APK, IPA), extensiones de navegador y más.
Instalación
Descarga un binario precompilado desde la página de Releases, o compila desde el código fuente:```bash make build
El binario estará en `dist/titus`.
## Inicio 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
Los resultados se escriben en un almacén de datos (titus.ds por defecto) y se imprimen en la consola.
Opciones de escaneo
Escaneo de GitHub y GitLab
Escanea repositorios públicos directamente por URL — no se requiere 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 escaneos a nivel de organización o de usuario, utilice los 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
Los tokens son opcionales para repositorios públicos. Configure GITHUB_TOKEN o GITLAB_TOKEN (o use --token) para acceder a repositorios privados y obtener límites de tasa de API más altos.
Escaneo de imágenes Docker / OCI
Escanee imágenes de contenedores directamente — sin daemon de docker, sin necesidad del binario docker. Titus extrae imágenes directamente de cualquier registro OCI a través de HTTPS (usando credenciales de ~/.docker/config.json), o lee imágenes desde un tarball local de docker save o un directorio de diseño de imagen OCI. Luego escanea los metadatos del manifiesto/configuración de la imagen y cada archivo regular en cada capa, incluidos los archivos de capas inferiores eliminados por capas posteriores (ya que los secretos pueden permanecer recuperables desde el historial de la imagen).```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/
La autenticación utiliza tu configuración existente de Docker / Podman (`~/.docker/config.json`, `${XDG_RUNTIME_DIR}/containers/auth.json`). Los registros privados que necesiten un inicio de sesión nuevo deben autenticarse primero con `docker login` (o `podman login`, o `crane auth login`) — titus no solicita credenciales.
### Visualización de los resultados del escaneo
Usa `report` para volver a leer los hallazgos de un escaneo 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
También puedes controlar el formato de salida en el momento del escaneo con --format:```bash
titus scan path/to/code --format json
### Validación de secretos detectados