Active Directory (Analyse des permissions avec Bloodhound)

Logo Bloodhound

Environnement

  • Ubuntu 18.04
  • Windows Serveur 2016 avec Active Directory

Installation

Installer OpenJDK JRE 8 :

apt install openjdk-8-jre

Définir la variable d'environnement JAVA_HOME :

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/

Installer NodeJS :

curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
apt install -y nodejs

Installer Electron :

npm install -g electron-packager

Installer Neo4j Community Edition :

wget -O - https://debian.neo4j.org/neotechnology.gpg.key | sudo apt-key add -
echo 'deb https://debian.neo4j.org/repo stable/' | sudo tee /etc/apt/sources.list.d/neo4j.list
apt update
apt install neo4j

Télécharger et compiler Bloodhound :

git clone https://github.com/adaptivethreat/Bloodhound
cd Bloodhound
npm install
npm run linuxbuild

Exécuter Neo4j :

sudo neo4j console

Ouvrir un navigateur à l'adresse http://localhost:7474/ et se conencter à l'interface de Neo4j (Username: neo4j / Password: neo4j).

Optionnel : modifier le mot de passe par défaut lorsque c'est proposé.

Exécuter Bloodhound :

cd BloodHound-linux-x64/
./Bloodhound

Extraction des données de l'AD

Copier le script Powershell Bloodhound/Ingestors/SharpHound.ps1 sur un poste Windows du domaine.

Lancer une console Powershell et exécuter le script pour collecter les données dans l'AD :

. .\SharpHound.ps1
Invoke-BloodHound -CollectionMethod All

Copier sur le poste GNU/Linux le fichier zip créé par SharpHound et le glisser/déposer dans la fenêtre Bloodhound pour importer les données et commencer à les exploiter.

Sources

https://github.com/BloodHoundAD/BloodHound/wiki/

https://debian.neo4j.org/

https://www.pentestpartners.com/security-blog/bloodhound-walkthrough-a-tool-for-many-tradecrafts/

https://beta.hackndo.com/bloodhound/

https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/abusing-active-directory-with-bloodhound-on-kali-linux