BloodHound¶
BloodHound est un outil pour créer des graphiques à partir de collectes sur l’Active Directory. Il ne gère donc que la partie affichage. Pour faire ses relevés, il faudra utiliser d’autre logiciels tels que SharpHound ou AzureHound pour Windows ou encore BloodHoundPy utilisable sur l’ensemble des plateformes. Le projet a été créé par @_wald0, @CptJesus, et @harmj0y. Désormais, il est maintenu par l’équipe BloodHound Enterprise.
Installation de BloodHound (Analyse)¶
Pour installer BloodHound, le plus simple reste de RTFM. En cas d’absence d’internet, voici la procédure.
Pour résumer, BloodHound a besoin de Neo4j pour stocker ses items et créer ses graphiques. Neo4j est un système de gestion de base de données au code source libre basé sur les graphes, développé en Java par la société Neo technology.
Windows¶
Le processus d’installation sera quasiment le même que sur Linux. On Télécharge BloodHound, Neo4j et java.
Pour java, c’est par ici ;
Pour Neo4j, ici ;
Et enfin, Bloodhound est au même endroit.
La procédure va être assez simillaire à celle sous Linux, on installe java (suivant, suivant, terminé) ; on installe neo4j (suivant, suivant, terminé) puis on lance bloodhound (executer). Attention toutefois, la doc de BloodHound préconise de vériifer que la variable JAVA_HOME est bien paramétrée.
Linux¶
Sur une Kali - APT¶
Dans le cas où tu n’as pas besoin de la dernière version et que tu as les dépots Kali, il suffit de lancer un apt :
sudo apt update && sudo apt upgrade -y
sudo apt install bloodhound
A la main - Installer neo4j¶
Il faut donc mettre a jour les repository afin d’obtenir une version de java compatible avec Neo4j et Neo4j.
echo "deb http://httpredir.debian.org/debian stretch-backports main" | sudo tee -a /etc/apt/sources.list.d/stretch-backports.list
wget -O - https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add -
echo 'deb https://debian.neo4j.com stable latest' | sudo tee -a /etc/apt/sources.list.d/neo4j.list
sudo apt-get update
Si les dépôts sont bien à jour, il suffit désormais de lancer le téléchargement. Comme les deux dépôts sont en HTTPS, il faut auparavant disposer de apt-transport-https.
sudo apt-get install apt-transport-https
sudo apt-get install neo4j
Configurer neo4j¶
Neo4j installé, il faut encore changer son mot de passe (obligatoire) et configurer ce dernier. Pour cela, on relance neo4j :
sudo systemctl stop neo4j
sudo /usr/bin/neo4j console
Puis on se rends sur la page d’administration de ce dernier : http://localhost:7474/ avec les credentials neo4j:neo4j.
NB: Si vous désirez utliser Neo4j depuis un Windows, il faut permettre aux autres personne de se connecter dessus. Pour cela, il faut modifier le fichier de configuration /etc/neo4j/neo4j.conf et décommander la ligne #dbms.default_listen_address=0.0.0.0
Si vous prévoyez de l’utiliser régulièrement, vous pouvez relancer le service systemctl. Sinon, il est possible de le lancer uniquement a la main avec /usr/bin/neo4j console.
Lancer BloodHound depuis les sources pre-compiles¶
Si jusque la, tout fonctionne, il est désormais tant d”installer BloodHound. Pour cela, direction le github et l’on récupère les sources de son système. Pour ici, ce sera Linux-x64.
mkdir ~/Tools
wget https://github.com/BloodHoundAD/BloodHound/releases/download/4.2.0/BloodHound-linux-x64.zip
unzip BloodHound-linux-x64.zip -d ~/Tools/
mv ~/Tools/BloodHound-linux-x64 ~/Tools/BloodHound
rm ./BloodHound-linux-x64.zip
Lancer ce dernier :
~/Tools/BloodHound/BloodHound --no-sandbox
AzureHound¶
AzureHound est l’outil qui va récupérer les données sur un Cloud Azure. Je n’ai jamais eu à m’en servir (pour l’instant), donc la doc est vide.
BloodHoundPy¶
BloodHoundPy est un outil qui n’est pas fait par la même équipe que BloodHound. Son principal intérêt est qu’il peut travailler depuis n’importe quelle machine (car Python). Cependant, il semblerait qu’il y ait des différences entre SharpHound et BloodHoundPy, mais je n’ai pas vérifié.
Via apt¶
La methode la plus simple, et tout automatisée :
sudo apt update && sudo apt upgrade -y
sudo apt install bloodhound.py
Via python¶
Si tu n’as pas les dépots Kali, il faudra alors surement le faire via pyhton.
Installation de BloodHoundPy¶
pip install bloodhound
Ajout au path¶
J’ai oublié, mais c’est classique
Utilisation de BloodHoundPy¶
bloodhound-python -d support.htb -v --zip -c All -dc dc.support.htb -ns 10.10.11.174 -u support -p Ironside47pleasure40Watchful