Face à l’importance croissante de la cybersécurité, il devient essentiel de sensibiliser les développeurs à ces enjeux et de leur offrir des opportunités de monter en compétence.
Dans cet article, je vais partager mon retour d’expérience sur un challenge de cybersécurité que j’ai eu l’occasion d’organiser au sein de la DSI de Médiamétrie .
L’objectif : apprendre en s’amusant, découvrir concrètement les vulnérabilités des applications web, tout en sensibilisant les participants à l’importance de la sécurité et en suscitant leur envie d’approfondir leurs connaissances pour mieux protéger nos applications.
L’idée de départ
L’idée a germé à partir d’une simple question : comment sensibiliser efficacement les équipes de développement aux risques de sécurité en complément des formations classiques ? J’avais déjà animé des sessions de formation en interne sur le sujet, notamment sur l’OWASP Top 10, une liste référence des 10 catégories de failles de sécurité les plus critiques dans les applications web. Cette liste, maintenue par l’organisation OWASP (Open Web Application Security Project), sert de guide pour les développeurs et responsables de la sécurité afin d’identifier et de corriger les vulnérabilités les plus courantes. Ces sessions ont permis de poser les bases avant de lancer ce projet.
En tant qu’architecte logiciel, j’avais déjà identifié plusieurs outils et méthodes qui pouvaient servir de base à ce projet. Après une veille approfondie sur les solutions existantes, OWASP Juice Shop s’est imposé comme le choix idéal. Sa richesse en vulnérabilités simulées et sa communauté active en faisaient un excellent candidat.
Pourquoi Juice Shop ?

Juice Shop est un projet open source de l’OWASP reconnu pour son approche ludique et pédagogique. Il offre un environnement d’application web vulnérable qui couvre une grande variété de failles (injections SQL, XSS, etc.).
Voici pourquoi il a été retenu :
- Facilité d’utilisation : Juice Shop propose une configuration intuitive et une documentation bien rédigée, ce qui permet de l’installer rapidement sans prérequis techniques complexes.
- Portée pédagogique : ses scénarios couvrent une vaste gamme de vulnérabilités web (injections SQL, XSS, etc.), adaptés aussi bien aux développeurs débutants qu’aux experts souhaitant approfondir leurs compétences.
- Complément avec MultiJuicer : qui permet de déployer plusieurs instances isolées, ce qui est idéal pour organiser des challenges multi-équipes tout en assurant un environnement de test sécurisé.
Mise en place sur AWS avec EKS et MultiJuicer
Pour garantir une expérience optimale, nous avons déployé Juice Shop sur AWS à l’aide d’EKS (Elastic Kubernetes Service) et MultiJuicer. Ce dernier permet de créer plusieurs instances isolées de Juice Shop, une pour chaque équipe participante.
Avec MultiJuicer, il suffit d’indiquer un nom d’équipe pour créer une instance Juice Shop isolée. Un token unique permet ensuite à tous les membres d’une équipe de se connecter à cette instance et de collaborer pour relever les défis, tout en s’assurant que chaque équipe dispose de son propre environnement séparé.
Mise en place de Root the Box : pour une expérience encore plus immersive

Pour renforcer l’aspect gamification, nous avons utilisé Root the Box. Cet outil permet de gérer les scores, les défis et les indices tout au long du challenge. Voici comment nous l’avons configuré :
- Intégration avec Juice Shop : J’ai utilisé Juice Shop CTF pour exporter les défis sous forme de fichier JSON, ce qui a permis d’intégrer facilement les scénarios dans Root The Box.
- Système de points : Les scores étaient attribués en fonction de la difficulté des défis, ce qui ajoutait un aspect compétitif motivant. De plus, les participants pouvaient choisir de débloquer des indices en échange de 10% des points du défi, introduisant une stratégie supplémentaire dans leur progression.
Trouver des volontaires : le mail d’invitation ludique
Pour trouver des participants, nous avons envoyé un mail intriguant sans donner de détails sur Juice Shop, pour piquer la curiosité des équipes et les encourager à participer.
Les détails pratiques
- Noms des équipes : générés avec l’aide de ChatGPT pour des résultats originaux. Les cinq équipes étaient : « Backdoor Bandits », « Black Hats Berserkers », « Root Seekers », « Shellcode Slayers » et « Trojan Masters ». Un exemple de prompt utilisé était : « Propose des noms d’équipe originaux et amusants pour un challenge de cybersécurité, en lien avec des thèmes comme le hacking et les failles de sécurité».
- Logos des équipes : J’ai créé des logos pour les différentes équipes à l’aide de NightCafe, une plateforme en ligne qui utilise l’intelligence artificielle pour générer des images à partir de descriptions textuelles. Par exemple, le logo de l’équipe « Backdoor Bandits » a été généré avec le prompt suivant :
« A bold and modern logo for a cyber attack team called ‘Backdoor Bandits’, with the team name prominently displayed in bold, edgy typography. The design should incorporate a central emblem of a sneaky figure (e.g., a shadowy character) surrounded by glitch effects and neon green circuit patterns. The color palette should be dominated by shades of green (neon green, emerald) with black and metallic silver highlights. The overall aesthetic should convey stealth, cunning, and high-tech expertise, with a professional, polished finish and 3D gradients – 8K resolution, vector-style illustration ».
Pour gagner du temps, j’aurais plutôt dû demander une zone vide dans les logos pour pouvoir y ajouter moi-même le titre. En effet, l’IA a parfois des difficultés avec le text-to-image, et les textes inclus dans les logos sont souvent erronés.





- Goodies : chaque participant a reçu un chèque cadeau Éthi’Kdo de 20 €, un mug et un autocollant personnalisé avec le logo de son équipe. Éthi’Kdo est une solution éthique et responsable qui propose des cartes cadeaux utilisables dans un large réseau de commerces engagés dans le développement durable et le commerce solidaire. Les vainqueurs, quant à eux, ont reçu un chèque de 50 € ainsi que les mêmes goodies.

Le déroulement du challenge
Le challenge a commencé par un repas convivial suivi d’un kickoff à 13h30, durant lequel j’ai donné quelques consignes sur le déroulement du challenge et présenté les outils pour aider à trouver les vulnérabilités. Les équipes ont ensuite commencé leurs défis vers 14h, avec 3h30 pour exploiter des vulnérabilités jusqu’à 17h30.
Pendant cette session, nous avons animé l’événement en suivant en temps réel la progression des équipes et en partageant les moments forts, par exemple, lorsqu’une équipe prenait l’avantage sur les autres. Pour maintenir le suspense, nous avons coupé l’affichage du tableau des scores 30 minutes avant la fin, ce qui a ajouté une touche de suspense avant le débriefing.
La journée s’est terminée par un débriefing et une remise des trophées, où l’équipe « Backdoor Bandits » a remporté le concours.
Bilan
L’événement a été un véritable succès, avec des retours très positifs des participants. Voici les principaux enseignements :
- Sensibilisation renforcée : les participants ont mieux compris les conséquences des failles de sécurité. Ils ont pris conscience de la simplicité avec laquelle certaines vulnérabilités peuvent être exploitées. Ce challenge leur a donné envie d’en apprendre davantage sur les bonnes pratiques de sécurité et les stratégies de développement sécurisé.
- Montée en compétences : des développeurs de tous niveaux ont été capables de résoudre des défis, bien au-delà de ce que nous imaginions, car certains défis complexes ont été résolus en séance. De plus, ils ont demandé à pouvoir continuer à travailler sur les autres défis après la fin du challenge. Nous réfléchissons également à ouvrir la plateforme à la demande pour permettre aux participants de s’entraîner en autonomie, ainsi qu’à l’utiliser pour les nouveaux arrivants afin de les sensibiliser rapidement aux enjeux de la sécurité applicative.
- Cohésion équipe : un excellent exercice pour renforcer l’esprit d’équipe. Volontairement, nous avons mélangé les participants issus de différentes équipes et niveaux, permettant ainsi à chacun de rencontrer de nouveaux collègues. Des alternants et managers étaient également présents et ont fortement apprécié cette expérience immersive.
Conclusion
Organiser un challenge de cybersécurité est une initiative enrichissante qui permet de combiner apprentissage, collaboration et sensibilisation. Avec des outils comme Juice Shop, MultiJuicer et Root the Box, il est possible de créer une expérience immersive et pédagogique.
Et vous, prêts à relever le défi dans votre entreprise ? N’hésitez pas à me contacter si vous souhaitez plus d’informations ou de l’aide pour organiser un challenge similaire dans votre structure.