
Legion est un outil open source de test de pénétration réseau, facile à utiliser, super-extensible et semi-automatisé, qui aide à la découverte, la reconnaissance et l'exploitation de systèmes d'information.
Le dépôt Legion est en cours de déplacement vers https://github.com/hackman238/legion. Toutes les futures versions, mises à jour, etc. se feront à partir de là. De grandes améliorations arrivent ! Ce dépôt sous cette organisation ne sera plus maintenu.

Legion, un fork de Sparta de SECFORCE, est un framework de test de pénétration réseau open source, facile à utiliser, très extensible et semi-automatisé qui aide à la découverte, la reconnaissance et l'exploitation de systèmes d'information.
Installez NMAP 7.93 en utilisant ce qui suit :
sudo apt install snapd -y
sudo systemctl enable --now snapd.apparmor
sudo systemctl start snapd
sudo snap install nmap
sudo mv /usr/bin/nmap /usr/bin/nmap-7.92
sudo ln -s /snap/bin/nmap /usr/bin/nmap
Vérifiez ensuite la version avec :
nmap -v
Mettez à jour le profil apparmor :
vi /var/lib/snapd/apparmor/profiles/snap.nmap.nmap
Allez à la ligne 300, créez une nouvelle ligne et ajoutez :
owner @{HOME}/.local/share/legion/tmp/** rw,
/etc/ssl/kali.cnf r,
Redémarrez
Le script runIt (docker/runIt.sh) prend en charge :
Il est possible d'exécuter l'image Docker sur n'importe quelle distribution Linux, cependant, différentes distributions ont différentes contraintes à surmonter pour qu'une application Docker puisse se connecter au serveur X. Tout le monde est invité à essayer de comprendre ces contraintes et à créer une PR pour runIt.
Nous ne pouvons garantir un fonctionnement correct que sur Ubuntu 20.04 avec l'installation traditionnelle pour le moment. Bien que cela devrait fonctionner sur ParrotOS, Kali et autres, tant que Legion n'est pas empaqueté et placé dans les dépôts de chacune de ces distributions, c'est un jeu de chaises musicales en ce qui concerne les mises à jour de la plateforme qui modifient et cassent les dépendances. Un paquet natif existe et est inclus par défaut sur Kali.
Deux méthodes d'installation disponibles :
Il est préférable d'utiliser la méthode Docker plutôt qu'une installation traditionnelle. En raison de toutes les exigences de dépendances et des complications qui surviennent dans des environnements différents d'une installation propre et par défaut.
NOTE : Les versions Docker de Legion ne fonctionneront probablement pas si elles sont exécutées en tant que root ou sous un X root !
La méthode Docker inclut la prise en charge de divers environnements, choisissez celui qui vous convient.
Suppose que Docker et X11 sont installés et configurés (y compris l'exécution de commandes Docker en tant qu'utilisateur non root).
Il est essentiel de suivre toutes les instructions pour exécuter en tant qu'utilisateur non root. En sauter une seule entraînera des complications pour que Docker communique avec le serveur X.
Voir les instructions détaillées pour configurer Docker ici et activer l'exécution de conteneurs en tant qu'utilisateurs non root et accorder les droits SSH au groupe Docker ici.
Dans le terminal :
git clone https://github.com/GoVanguard/legion.git
cd legion/docker
chmod +x runIt.sh
./runIt.sh
Suppose que Docker et X11 sont installés et configurés.
Remplacez X.X.X.X par l'adresse IP du X11 distant en cours d'exécution.
Dans le terminal :
git clone https://github.com/GoVanguard/legion.git
cd legion/docker
chmod +x runIt.sh
./runIt.sh X.X.X.X
Suppose que :
Voir les instructions Docker détaillées ici
Remplacez X.X.X.X par l'adresse IP avec laquelle Xming s'est enregistré. Faites un clic droit sur Xming dans la barre d'état système -> Voir le journal et cherchez l'IP à côté de "XdmcpRegisterConnection: newAddress"
Dans le terminal :
git clone https://github.com/GoVanguard/legion.git
cd legion/docker
sudo chmod +x runIt.sh
sudo ./runIt.sh X.X.X.X
Pourquoi ? Ne faites pas ça. :)
Pas encore dans le script runIt.sh. Possible de configurer avec socat.
Voir les instructions ici
Pour installer les composants Docker généralement nécessaires et configurer l'environnement pour Docker, dans un terminal, exécutez :
sudo apt-get update
sudo apt-get install -y docker.io python3-pip -y
sudo groupadd docker
pip install --user docker-compose
Pour permettre aux utilisateurs non root d'exécuter des commandes Docker, dans un terminal, exécutez :
sudo usermod -aG docker $USER
sudo chmod 666 /var/run/docker.sock
sudo xhost +local:docker
L'ordre est important pour des raisons de réservation de ports. Si vous avez déjà WSL, HyperV ou Docker Desktop installés, veuillez désinstaller ces fonctionnalités avant de continuer.
netsh int ipv4 add excludedportrange protocol=tcp startport=2375 numberofports=1
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
dism.exe /Online /Enable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux
Veuillez utiliser l'image Docker lorsque c'est possible ! Il devient très difficile de prendre en charge toutes les différentes plates-formes et leurs particularités.
Suppose qu'Ubuntu, Kali ou Parrot Linux est utilisé avec Python 3.6 installé.
Dans le terminal :
git clone https://github.com/GoVanguard/legion.git
cd legion
sudo chmod +x startLegion.sh
sudo ./startLegion.sh
Pour exécuter tous les cas de test, exécutez ce qui suit dans le répertoire racine :
python -m unittest
La configuration des ports sélectionnés et des actions terminales associées peut être facilement modifiée en éditant le fichier legion.conf.
[StagedNmapSettings] définit quels ports seront scannés dans un ordre séquentiel ainsi que les scripts NSE qui seront appelés.
[SchedulerSettings] définit quelles actions se produiront automatiquement en fonction des résultats du scan de ports.
sudoedit /root/.local/share/legion/legion.conf
Legion est sous licence GNU General Public License v3.0. Consultez le fichier LICENSE pour plus d'informations.
smbenum.sh est crédité à Bernardo Damele A.G.curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install -y docker-ce python-pip -y
sudo apt autoremove
sudo usermod -aG docker $USER
pip install --user docker-compose
echo "export DOCKER_HOST=tcp://localhost:2375" >> ~/.bashrc && source ~/.bashrc
docker images