
Un framework basé sur les microservices pour l'étude de la sécurité réseau et des techniques de test d'intrusion.

Docker Security Playground est une application qui vous permet de :
Le flux de travail d'installation recommandé pour DSP consiste à utiliser une VM Kali :
Voici les étapes pour installer DSP sur une VM Kali. Suivez des étapes similaires pour les autres distributions Linux, mais assurez-vous d'installer toutes les dépendances.
sudo apt update && sudo apt install -y docker.io docker-compose nodejs npm git
Note (problème de clé Kali 2025).
Si vous rencontrez le problème suivant lors de l'installation :
Fetched 34.0 kB in 1s (58.4 kB/s) Warning: Failed to fetch http://http.kali.org/kali/dists/kali-rolling/InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ED65462EC8D5E4C5 Warning: Some index files failed to download. They have been ignored, or old ones used instead.Vous devez ajouter la clé manquante :
wget https://http.kali.org/kali/pool/main/k/kali-archive-keyring/kali-archive-keyring_2025.1_all.deb sudo dpkg -i kali-archive-keyring_2025.1_all.deb rm kali-archive-keyring_2025.1_all.deb
sudo systemctl enable docker
sudo groupadd docker
sudo usermod -aG docker $USER
docker ps
Vérifiez également que docker compose fonctionne :
docker compose --version # ou docker-compose --version pour les versions plus anciennes
Vérifiez aussi l'installation de npm et nodejs :
node -v
npm -v
Il est possible d'exécuter DSP sur un hôte M1 en activant Rosetta, mais je recommande vivement de créer une VM Kali avec UTM ou VMware Fusion, de suivre les étapes d'installation précédentes et d'installer le paquet binfmt-misc pour exécuter les images x86 sur l'architecture ARM.
sudo apt install binfmt-support qemu-user-static
Redémarrez la machine.
Ensuite, utilisez le conteneur Tonisiigi pour enregistrer tous les interpréteurs pour les différentes architectures :
docker run --privileged --rm tonistiigi/binfmt --install amd64
Vérifiez que les images docker peuvent s'exécuter sur votre machine :
docker run --rm -it --platform linux/amd64 ubuntu uname -m
git clone https://github.com/DockerSecurityPlayground/DSP.git
cd DSP
npm install
Une fois l'installation terminée, vous pouvez démarrer DSP :
npm start
DSP fonctionnera sur "http://localhost:18181".
Note pour l'utilisation de Wireshark sur Kali : je suggère d'utiliser le navigateur Chromium, car le conteneur Wireshark utilise des codecs qui ne sont pas pris en charge par Firefox sur Kali. Vous pouvez lancer Chromium en tapant simplement "chromium" dans le terminal.
La première étape consistera à installer tous les dossiers nécessaires sur la machine actuelle.
Vous pouvez également automatiser cette étape d'installation en utilisant la variable d'environnement
export DSP_AUTOINSTALL=1 && npm start
Si vous souhaitez utiliser le navigateur de votre hôte, vous pouvez exposer sur l'interface 0.0.0.0. Si vous souhaitez exposer sur une autre interface, modifiez la variable d'environnement DSP_IFACE :
export DSP_IFACE="0.0.0.0"
Vous pouvez maintenant utiliser DSP sur une interface distante.
Si quelque chose ne va pas, vous pouvez réinitialiser DSP aux paramètres d'usine en utilisant la commande suivante :
npm run uninstall
Cela supprimera tout, et vous pourrez recommencer l'installation depuis le début.
DSP_Repo contient les laboratoires officiels DSP. Contribuez à DSP en créant de nouveaux laboratoires DSP.
Lors de l'installation, vous pouvez créer un environnement local qui n'a pas de lien avec git, ou vous pouvez associer un dépôt personnel à l'application. C'est très utile si vous souhaitez partager votre travail avec d'autres personnes. Le dépôt DSP doit remplir plusieurs conditions, j'ai donc créé un modèle de dépôt DSP de base que vous pouvez utiliser pour créer votre dépôt personnel. Ainsi, le moyen le plus simple de partager des laboratoires est le suivant :
Il est important que toutes les images que vous utilisez soient disponibles pour les autres utilisateurs, donc :
Si vous avez besoin d'un "moyen privé" de partager des laboratoires, vous devez partager le dépôt par d'autres moyens ; actuellement, il n'y a pas de support pour partager des dépôts privés.
Dans DSP, vous pouvez gérer plusieurs dépôts utilisateur (onglet Dépôts).
Si vous avez un problème, vous pouvez utiliser la section Issues.
Pour exécuter un test :
mocha test/<test-nodejs-file.js>
les tests utilisent la méthode helper.start() pour initialiser l'environnement de test :
Si vous rencontrez l'erreur suivante pendant l'installation :
[2020-12-14T10:18:21.854Z] INFO: DockerSecurityPlayground/1536 on vagrant: [DOCKER ACTIONS - DOWNLOAD IMAGE]
events.js:174
throw er; // Unhandled 'error' event
^