
Analizador sin conexión de rutas de ataque AD/Entra para JSON de SharpHound/AzureHound. Expone hallazgos priorizados sobre escalada de privilegios, credenciales y configuraciones incorrectas sin BloodHound ni Neo4j.
Un proyecto de código abierto de SquidSec
SquidOffense.com ·
GitHub
BloodBash es un analizador offline de código abierto de JSON de SharpHound y AzureHound, creado y gestionado por SquidSec. Construye un grafo, expone rutas de ataque y configuraciones erróneas de AD/Entra, e imprime hallazgos priorizados. No requiere Neo4j ni la interfaz de BloodHound.
| Organización | SquidSec |
| Sitio web | https://squidoffense.com/ |
| Versión de la aplicación | v1.4.2 |
| Último binario | |
| Licencia | MIT |
| Entorno de ejecución (código fuente) | Python 3.9+ |
Las fusiones a main compilan automáticamente binarios para Linux y Windows y publican una versión de GitHub (etiqueta v1.4.2-build.N).
BloodBash es creado y mantenido por SquidSec para la comunidad de seguridad: equipos rojos, pentesters y defensores que necesitan un análisis rápido y offline de AD/Entra sin tener que desplegar la infraestructura de BloodHound.
Ejecutables independientes de BloodBash de SquidSec: no se necesita Python, pip ni venv:
| Plataforma | Última descarga |
|---|---|
| Linux x64 | bloodbash-linux-x64 |
| Windows x64 | bloodbash-windows-x64.exe |
# Linux
curl -sL -o bloodbash \
https://github.com/DotNetRussell/BloodBash/releases/latest/download/bloodbash-linux-x64
chmod +x bloodbash
./bloodbash /path/to/json --all
# Windows (PowerShell)
Invoke-WebRequest -Uri "https://github.com/DotNetRussell/BloodBash/releases/latest/download/bloodbash-windows-x64.exe" `
-OutFile bloodbash.exe
.\bloodbash.exe C:\path\to\json --all
pipx install git+https://github.com/DotNetRussell/BloodBash
O desde un clon:
git clone https://github.com/DotNetRussell/BloodBash.git
cd BloodBash
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
Dependencias: networkx, rich, tqdm, pyyaml.
Comienza con estos 3 (apunta a un directorio o .zip de SharpHound/AzureHound):
# 1) Day-0 triage - default when you pass only the data path
bloodbash /path/to/json
# same as:
bloodbash /path/to/json --quick-wins
# 2) Just owned a user - outbound compromise dossier
bloodbash ./sharpout --from-user alice --from-user-export
# 3) Full attack analysis (large env: --fast auto on big graphs)
bloodbash /path/to/json --all --fast
# inventory ladders still opt-in:
bloodbash /path/to/json --all --inventory
Desde una copia de trabajo del código fuente, python3 BloodBash.py es equivalente a bloodbash.
# Binary / pipx
./bloodbash /path/to/json
bloodbash /path/to/json --from-user alice --from-user-export
# Multi-collection merge (low-priv + DA zip, multi-domain forest)
bloodbash ./lowpriv.zip --merge ./da.zip ./child-domain.zip --all --fast
Un directorio sin flags de verificación ejecuta el triage de quick-wins. Use --all para un análisis completo de rutas de ataque (no inventario), o --wizard para un selector interactivo.
Bajo --all y --quick-wins, las secciones de detectores vacías se suprimen para que la consola se mantenga legible. Los flags selectivos aún imprimen líneas verdes de "none found" para las verificaciones que solicitó.
Datos de ejemplo: SampleSharphoundADData/ y SampleAzurehoundData/.
bloodbash --help # start-here + cheat sheet
bloodbash --help-advanced # full flag tables + all examples
Más recetas: docs/cookbook.md.