Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
multi-juicer — Héberger et gérer plusieurs instances Juice Shop pour des formations en sécurité et des Capture The Flags. | Kitploit
Outils/GitHubGitHub/juice-shop/multi-juicer
Sécurité WebCTFApprentissage et ÉducationLabs et Pratique
GitHubjuice-shop/multi-juicer

multi-juicer

Héberger et gérer plusieurs instances Juice Shop pour des formations en sécurité et des Capture The Flags.

Voir le dépôt
322177il y a 9 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

MultiJuicer, plateforme multi-utilisateur Juice Shop

Organiser des CTF et des formations de sécurité avec OWASP Juice Shop est généralement assez délicat : Juice Shop n'est tout simplement pas conçu pour être utilisé par plusieurs utilisateurs à la fois. Expliquer à chacun comment démarrer Juice Shop sur sa propre machine fonctionne correctement, mais prend beaucoup trop de temps précieux.

MultiJuicer vous permet d'exécuter des instances Juice Shop distinctes pour chaque participant sur un cluster Kubernetes central, afin d'organiser des événements sans avoir besoin d'instances Juice Shop locales.

Ce qu'il fait :

  • crée dynamiquement de nouvelles instances Juice Shop lorsque nécessaire
  • fonctionne sur un seul domaine, avec un LoadBalancer qui achemine le trafic vers l'instance Juice Shop du participant
  • un joli petit classement montrant la progression de tous les participants
  • une page d'administration pratique pour gérer les instances
  • sauvegarde et applique automatiquement la progression des défis en cas de redémarrage du conteneur Juice Shop
  • nettoie automatiquement les instances anciennes et inutilisées

MultiJuicer, Diagramme d'architecture haut niveau

Pour une description détaillée de l'architecture et des composants individuels, voir la Documentation d'Architecture.

👉 Nouveau sur MultiJuicer ? Consultez la présentation visuelle pour voir comment les participants s'inscrivent, obtiennent leurs instances JuiceShop et comment les scores sont suivis sur le tableau des scores.

Installation

MultiJuicer fonctionne sur Kubernetes. Pour l'installer, vous aurez besoin de helm

root@kitploit:~
helm install multi-juicer oci://ghcr.io/juice-shop/multi-juicer/helm/multi-juicer

Consultez les notes de production pour une liste des valeurs que vous devrez probablement configurer avant d'utiliser MultiJuicer lors d'événements réels.

Pour configurer MultiJuicer avec le support des défis liés à l'IA/LLM de JuiceShop v20+, consultez le guide de configuration IA/LLM

Guides d'installation pour des fournisseurs de cloud / environnements spécifiques

Généralement, MultiJuicer fonctionne sur presque tous les clusters Kubernetes, mais pour faciliter la tâche aux personnes novices en Kubernetes, nous avons préparé quelques guides sur la façon de configurer un cluster Kubernetes avec MultiJuicer installé pour certains fournisseurs de cloud spécifiques.

  • Digital Ocean
  • AWS
  • OpenShift
  • Plain Kubernetes
  • Azure

Personnalisation de l'installation

Vous avez plusieurs options pour configurer la pile, avec la possibilité de personnaliser les instances JuiceShop selon vos préférences. Vous trouverez les valeurs de configuration par défaut dans : helm/multi-juicer/values.yaml

Téléchargez et enregistrez le fichier, puis indiquez à helm d'utiliser votre fichier de configuration plutôt que celui par défaut en exécutant :

root@kitploit:~
helm install -f values.yaml multi-juicer ./multi-juicer/helm/multi-juicer/

Pour personnaliser le thème des instances JuiceShop et de l'interface MultiJuicer (thème, logo, défis activés, etc.), consultez le guide de personnalisation JuiceShop.

Désinstallation

root@kitploit:~
helm delete multi-juicer

FAQ

De quelle quantité de ressources informatiques le cluster aura-t-il besoin ?

Pour être prudent, prévoyez :

  • 1 Go de mémoire et 1 CPU de surcharge pour MultiJuicer lui-même
  • 300 Mo et 0,2 CPU * nombre de participants / équipes pour les instances JuiceShop individuelles

Les chiffres ci-dessus reflètent les limites de ressources par défaut. Celles-ci peuvent être ajustées, voir : Personnalisation de l'installation

Combien d'utilisateurs MultiJuicer peut-il gérer ?

Il n'y a pas de limite fixe réelle. (Même si vous pouvez en configurer une 😉) Le LoadBalancer personnalisé, par lequel transite tout le trafic des instances individuelles, peut être répliqué autant que vous le souhaitez. Vous pouvez également attacher un Horizontal Pod Autoscaler pour mettre à l'échelle automatiquement le LoadBalancer.

Pourquoi un LoadBalancer personnalisé ?

Il existe quelques exigences particulières que nous n'avons pas trouvées faciles à résoudre avec un équilibreur de charge pré-construit :

  • Restreindre le nombre d'utilisateurs d'un déploiement aux seuls membres d'une certaine équipe.
  • Le cookie de l'équilibreur de charge doit être sûr et non facilement falsifiable pour accéder à une autre instance.
  • Gérer le démarrage de nouvelles instances.

Si vous avez des idées géniales pour surmonter ces problèmes sans équilibreur de charge personnalisé, n'hésitez pas à nous écrire, nous serions ravis d'avoir de vos nouvelles !

Pourquoi un déploiement Kubernetes séparé pour chaque équipe ?

Il y a de très bonnes raisons à cela :

  • La possibilité de supprimer les instances d'une équipe séparément. Réduire l'échelle en toute sécurité, sans supprimer les instances des équipes actives, est très délicat avec un déploiement dimensionné. Vous ne pouvez choisir que le dimensionnement souhaité, pas les pods à conserver et ceux à jeter.
  • S'assurer que les pods restent correctement associés aux équipes après leur recréation. C'est un non-problème avec des déploiements séparés, mais très difficile avec des déploiements dimensionnés.
  • La possibilité d'intégrer le nom de l'équipe dans le nom du déploiement. Cela semble être une raison stupide, mais cela rend le débogage TELLEMENT plus facile, en utilisant simplement kubectl.

Comment gérer facilement JuiceShop avec kubectl ?

Vous pouvez lister tous les JuiceShops avec les informations pertinentes en utilisant la fonctionnalité de colonnes personnalisées de kubectl.

root@kitploit:~
$ kubectl get -l app.kubernetes.io/name=juice-shop -o custom-columns="TEAM:metadata.labels.team,SOLVED-CHALLENGES:metadata.annotations.multi-juicer\.owasp-juice\.shop/challengesSolved,LAST-REQUEST:metadata.annotations.multi-juicer\.owasp-juice\.shop/lastRequestReadable" deployments
TEAM         SOLVED-CHALLENGES   LAST-REQUEST
foobar       3                   Wed May 4 2042 18:14:22 GMT+0000 (Coordinated Universal Time)
team-42      0                   Wed May 4 2042 18:14:30 GMT+0000 (Coordinated Universal Time)
the-empire   0                   Wed May 4 2042 18:14:46 GMT+0000 (Coordinated Universal Time)

D'où vient ce projet ?

Le projet a démarré chez iteratec, une société de développement logiciel basée en Allemagne, pour organiser leurs formations de sécurité pour leurs propres développeurs et leurs clients. Le projet a ensuite été open sourcé en 2019 et donné à l'organisation OWASP / au projet OWASP Juice Shop en 2023.

Parlez avec nous !

Vous pouvez nous joindre dans le canal #project-juiceshop de l'espace de travail OWASP Slack. Nous serions ravis d'entendre vos retours ou rapports d'utilisation. Si vous n'êtes pas encore dans l'espace de travail OWASP Slack, vous pouvez nous rejoindre via ce lien

Télécharger l’outil