IMPORTANT
Cet atelier pratique ne peut être réalisé que sur un ordinateur de bureau ou un ordinateur portable.
Vous ne pouvez tenter l'atelier que cinq fois.
Pour rappel, il est normal de ne pas répondre correctement à toutes les questions du premier coup, et même de devoir refaire un exercice. Cela fait partie du processus d'apprentissage.
Une fois l'atelier démarré, le minuteur ne peut pas être mis en pause. Au bout d'une heure et demie, l'atelier se terminera et vous devrez le recommencer.
Pour en savoir plus, consultez le document Conseils techniques pour les ateliers.
Présentation de l'activité
Identifier les failles et mettre en œuvre des techniques de correction est essentiel pour assurer la sécurité et la stabilité des différents systèmes et applications, qui gèrent souvent des informations sensibles (informations permettant d'identifier personnellement l'utilisateur, documents financiers ou documents de propriété intellectuelle, par exemple). L'identification des failles permet de protéger ces données sensibles contre tout accès non autorisé et toute violation potentielle. Il est généralement plus rentable de traiter les failles en amont du processus de développement que de gérer les violations de sécurité ultérieurement. Le coût de correction d'une faille est souvent bien plus élevé que celui de sa prévention.
En tant qu'analyste de la sécurité, vous pouvez analyser régulièrement les failles, afin de les identifier et de les corriger avant que des attaques malveillantes ne se produisent. Cela permet d'atténuer les menaces potentielles de manière proactive et fournit des informations sur la surface d'attaque d'une application, ce qui vous aide à comprendre les voies d'exploitation potentielles et à hiérarchiser les domaines critiques à améliorer.
Dans cet atelier, vous allez apprendre à configurer et à exécuter une application vulnérable, puis à l'analyser pour détecter ses failles.
Scénario
Cymbal Bank a développé une nouvelle application bancaire pour ses clients professionnels, qui sera hébergée et déployée sur la nouvelle infrastructure cloud. Le responsable de la sécurité des systèmes d'informations (RSSI), Javier, souhaite donner la priorité à la sécurité de cette application avant son lancement et sa mise à disposition des clients. Chloe, votre cheffe d'équipe, vous a demandé d'identifier et de corriger les éventuelles failles de sécurité de cette nouvelle application. Vous allez utiliser Web Security Scanner dans Google Cloud pour analyser l'application à la recherche de failles liées à l'une des principales failles des application Web OWASP®, le "script intersites" (XSS).
Voici comment vous allez procéder : d'abord, vous allez créer une adresse IP statique et lancer une machine virtuelle. Puis, vous déploierez l'application vulnérable. Ensuite, vous configurerez et exécuterez l'application, avant d'y accéder et de l'analyser. Enfin, vous corrigerez les failles et analyserez à nouveau l'application.
Prérequis
Avant de cliquer sur "Démarrer l'atelier"
Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.
Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.
Pour réaliser cet atelier :
- Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
- Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.
Démarrer l'atelier et se connecter à la console Google Cloud
-
Cliquez sur le bouton Démarrer l'atelier. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :
- Le temps restant
- Le bouton Ouvrir la console Google Cloud
- Les identifiants temporaires que vous devez utiliser pour cet atelier
- D'éventuelles informations complémentaires vous permettant d'effectuer l'atelier
Remarque : Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement.
-
Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée) si vous utilisez le navigateur Chrome. La page Se connecter s'ouvre dans un nouvel onglet du navigateur.
Conseil : Vous pouvez réorganiser les onglets dans des fenêtres distinctes, placées côte à côte, pour passer facilement de l'un à l'autre.
Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
-
Si nécessaire, copiez le nom d'utilisateur Google Cloud ci-dessous et collez-le dans la boîte de dialogue Se connecter. Cliquez sur Suivant.
{{{user_0.username | "Google Cloud username"}}}
Vous trouverez également le nom d'utilisateur Google Cloud dans le panneau Détails concernant l'atelier.
- Copiez le mot de passe Google Cloud ci-dessous et collez-le dans la boîte de dialogue Bienvenue. Cliquez sur Suivant.
{{{user_0.password | "Google Cloud password"}}}
Vous trouverez également le mot de passe Google Cloud dans le panneau Détails concernant l'atelier.
Important : Vous devez utiliser les identifiants qui vous ont été fournis pour l'atelier. N'utilisez pas ceux de votre compte Google Cloud.
Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
- Parcourez les pages suivantes :
- Acceptez les conditions d'utilisation.
- N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
- Ne vous inscrivez pas à des essais sans frais.
Après quelques instants, la console s'ouvre dans cet onglet.
Remarque : Vous pouvez afficher le menu qui contient la liste des produits et services Google Cloud en cliquant sur le menu de navigation en haut à gauche.
Tâche 1 : Lancer une machine virtuelle
Dans cette tâche, vous allez créer une adresse IP statique et lancer la machine virtuelle pour exécuter l'application vulnérable.
- Dans la barre de titre de la console Google Cloud, cliquez sur l'icône Activer Cloud Shell (
). Cliquez sur Continuer si vous y êtes invité.
- Copiez la commande suivante dans le terminal Cloud Shell :
gcloud compute addresses create xss-test-ip-address --region={{{project_0.default_region | "REGION"}}}
Cette commande crée une adresse IP statique nommée xss-test-ip-address dans la région . Cette adresse IP statique servira à analyser l'application Web vulnérable.
- Appuyez sur ENTRÉE.
Cliquez sur Autoriser si vous y êtes invité.
- Copiez la commande suivante dans le terminal Cloud Shell :
gcloud compute addresses describe xss-test-ip-address \
--region={{{project_0.default_region | "REGION"}}} --format="value(address)"
Cette commande renvoie l'adresse IP statique que vous avez générée.
- Appuyez sur ENTRÉE.
- Copiez l'adresse IP de la sortie et enregistrez-la dans un bloc-notes. Vous en aurez besoin lors d'une prochaine tâche.
- Copiez la commande suivante dans le terminal Cloud Shell :
gcloud compute instances create xss-test-vm-instance --address=xss-test-ip-address --no-service-account \
--no-scopes --machine-type=e2-micro --zone={{{project_0.default_zone | "ZONE"}}} \
--metadata=startup-script='apt-get update; apt-get install -y python3-flask'
Cette commande crée une instance de VM pour exécuter l'application vulnérable.
- Appuyez sur ENTRÉE.
Remarque : Le script de démarrage installera python-flask, un framework d'application Web, qui servira à exécuter une application Python simple. Cette application présente une faille de sécurité XSS (script intersites), une faille courante dans les applications Web.
Cliquez sur Vérifier ma progression pour vérifier que vous avez correctement accompli cette tâche.
Lancer une machine virtuelle
Tâche 2 : Configurer et exécuter l'application vulnérable
Dans cette tâche, vous allez télécharger et extraire les fichiers de l'application Web vulnérable, puis déployer l'application dans SSH dans le navigateur.
Tout d'abord, vous allez créer une règle de pare-feu permettant à Web Security Scanner d'accéder à l'application vulnérable.
- Copiez la commande suivante dans le terminal Cloud Shell :
gcloud compute firewall-rules create enable-wss-scan \
--direction=INGRESS --priority=1000 \
--network=default --action=ALLOW \
--rules=tcp:8080 --source-ranges=0.0.0.0/0
Cette commande crée une règle de pare-feu qui autorise l'accès à l'application Web à partir de n'importe quelle adresse IP source. Cela permet à Web Security Scanner d'accéder à l'application vulnérable et d'effectuer une analyse.
- Appuyez sur ENTRÉE.
Ensuite, vous allez utiliser une connexion SSH pour vous connecter à l'instance de VM.
- Dans la console Google Cloud, cliquez sur le menu de navigation (
).
- Sélectionnez Compute Engine > Instances de VM.
- Sur la page Instances de VM, dans la colonne Connecter, cliquez sur le bouton SSH à côté de votre instance de test.
Une nouvelle fenêtre de navigateur s'ouvre, établissant une connexion SSH à votre instance de VM.
- Un pop-up peut s'afficher pour vous demander d'autoriser la fonctionnalité SSH dans le navigateur à se connecter aux VM. Cliquez sur Autoriser.
Maintenant, vous allez extraire les fichiers de l'application Web.
- Copiez la commande suivante sur la page SSH dans le navigateur (pas dans Cloud Shell) :
gsutil cp gs://cloud-training/GCPSEC-ScannerAppEngine/flask_code.tar . && tar xvf flask_code.tar
Cette commande télécharge et extrait les fichiers de l'application Web vulnérable.
-
Appuyez sur Entrée.
-
Enfin, copiez la commande suivante sur la page SSH dans le navigateur :
python3 app.py
Cette commande démarre l'application.
- Appuyez sur ENTRÉE.
Un message doit indiquer que l'application est en cours d'exécution.
Remarque : Comme il s'agit d'une application Web installée pour être utilisée en développement, il peut y avoir des failles associées au fichier de configuration. Il est important de tester toute application avant de l'utiliser sur un réseau public.
Remarque : Ne fermez pas la page SSH dans le navigateur pendant que vous effectuez la tâche suivante, car l'application doit continuer à s'exécuter.
Cliquez sur Vérifier ma progression pour vérifier que vous avez correctement accompli cette tâche.
Configurer et exécuter l'application vulnérable
Tâche 3 : Accéder à l'application vulnérable
Dans cette tâche, vous allez tester votre application pour détecter une faille appelée "script intersites" (XSS). Les failles XSS peuvent être exploitées par des scripts malveillants, tels que du code HTML, dans du contenu qui est ensuite diffusé sur des navigateurs Web.
- Pendant que l'application s'exécute, ouvrez une nouvelle fenêtre de navigateur.
- Copiez l'URL ci-dessous dans l'onglet du navigateur et remplacez
<YOUR_EXTERNAL_IP> par l'adresse IP statique de la VM que vous avez enregistrée dans un bloc-notes à la tâche 1 :
http://<YOUR_EXTERNAL_IP>:8080
Un portail de services bancaires Cymbal Bank dédié aux professionnels et comportant un formulaire Web doit s'afficher.
- Copiez le code HTML suivant, y compris les tags de script, dans le formulaire Web :
<script>alert('This is an XSS Injection to demonstrate one of OWASP vulnerabilities')</script>
Ce code injecte une faille OWASP®.

- Cliquez sur PUBLIER.
Le code injecté affichait un message dans le navigateur. Cette action n'est pas malveillante en soi, mais les pirates informatiques peuvent introduire du code malveillant dans une application exploitable pour voler des données ou implanter un logiciel malveillant sur l'appareil de l'utilisateur.
La fenêtre d'alerte s'ouvre et affiche le message suivant : "This is an XSS Injection to demonstrate one of OWASP vulnerabilities".
Tâche 4 : Analyser l'application
Dans cette tâche, vous allez analyser l'application à la recherche de failles à l'aide de Web Security Scanner.
D'abord, vous allez activer l'API Web Security Scanner.
- Dans la console Google Cloud, cliquez sur le menu de navigation (
).
- Sélectionnez API et services > API et services activés. La page API et services s'affiche.
- Cliquez sur Activer les API et les services.
- Dans le champ de recherche, saisissez Web Security Scanner, puis appuyez sur ENTRÉE.
- Sélectionnez API Web Security Scanner.
- Cliquez sur Activer.
Maintenant, vous allez analyser l'application pour détecter les failles.
- Dans la console Google Cloud, accédez au menu de navigation > Afficher tous les produits (
).
- Sélectionnez Sécurité > Web Security Scanner.
Si l'API Web Security Scanner est activée, la page Cloud Web Security Scanner affiche les détails de la page Analyser les configurations.
-
Dans la barre d'outils Cloud Web Security Scanner, cliquez sur + Nouvelle analyse.
-
Dans la section Nom, nommez l'analyse Analyse de script intersite.
Dans la section URL de démarrage, le champ URL de démarrage 1 doit être prérempli avec votre adresse IP statique.
- Ajoutez deux points et le numéro de port 8080 à la fin de l'adresse IP. L'URL de démarrage 1 doit ressembler à ceci :
http://<YOUR_EXTERNAL_IP>:8080
- Si l'URL de démarrage 2 est présente, supprimez-la.
- Dans la section URLs exclues, vérifiez que Authentification est défini sur Aucune et que Planification est défini sur Jamais. Ne modifiez pas les autres champs.
- Cliquez sur Enregistrer pour créer l'analyse.
- Cliquez sur Effectuer une analyse pour démarrer l'analyse.
- Revenez à la fenêtre SSH dans le navigateur.
Dans la fenêtre SSH dans le navigateur, vous devriez voir les journaux générés pendant que Web Security Scanner teste toutes les URL possibles à la recherche de failles potentielles.
- Une fois l'analyse terminée, revenez à la console Google Cloud.
Remarque : L'exécution de l'analyse peut prendre entre 5 et 10 minutes.
L'onglet Résultats indique les failles intersites détectées, ce qui montre comment Web Security Scanner peut détecter une faille XSS.
Vous pouvez également trouver les failles dans l'onglet Failles de Security Command Center.
Cliquez sur Vérifier ma progression pour vérifier que vous avez correctement accompli cette tâche.
Analyser l'application
Tâche 5 : Corriger les failles
Dans cette tâche, vous allez corriger la faille XSS de l'application et relancer l'application avec le nouveau correctif.
Afin de corriger les failles actuelles, il est recommandé de procéder à la validation et à l'échappement des données non fiables fournies par l'utilisateur (cela renvoie également aux règles OWASP® correspondantes).
Pour ce faire, vous allez modifier le code de l'application vulnérable afin d'y inclure des lignes de code qui permettent de réaliser la validation et l'échappement des données fournies par l'utilisateur.
- Revenez à la page SSH dans le navigateur connectée à votre instance de VM.
- Appuyez sur CTRL+C pour arrêter l'application en cours d'exécution. Vous pouvez également cliquer sur l'icône Envoyer la combinaison de touches en haut à droite de la fenêtre SSH dans le navigateur pour saisir la combinaison de touches CTRL+C.
Maintenant, vous allez modifier le fichier app.py à l'aide de l'éditeur nano.
- Copiez la commande suivante sur la page SSH dans le navigateur :
nano app.py
Cette commande ouvre l'éditeur de code nano.
-
Appuyez sur ENTRÉE.
-
Pour corriger la faille XSS, vous devez valider la variable de chaîne de sortie. La chaîne de sortie est le résultat traité de la saisie effectuée par l'utilisateur dans le formulaire Web.
Assurez-vous que l'application n'accepte pas les entrées utilisateur en tant que code HTML. Elle doit plutôt échapper les caractères spéciaux fournis par les entrées utilisateur. Pour ce faire, repérez les deux lignes qui définissent la chaîne de sortie :
# output_string = "".join([html_escape_table.get(c, c) for c in input_string])
output_string = input_string
- Supprimez le symbole # dans la première ligne et ajoutez-le au début de la ligne suivante (veillez à bien respecter les retraits dans votre code). Les lignes finales doivent se présenter comme suit :
@app.route('/output')
def output():
output_string = "".join([html_escape_table.get(c, c) for c in input_string])
# output_string = input_string
return flask.render_template("output.html", output=output_string)
- Appuyez sur Ctrl+X pour quitter nano, sur Y pour enregistrer vos modifications, puis sur Entrée pour enregistrer vos modifications.
- Copiez la commande suivante dans le terminal SSH dans le navigateur :
python3 app.py
Cette commande réexécute l'application.
- Appuyez sur ENTRÉE.
Cliquez sur Vérifier ma progression pour vérifier que vous avez correctement accompli cette tâche.
Corriger les failles
Tâche 6 : Analyser à nouveau l'application Web
Dans cette tâche, vous allez analyser à nouveau l'application pour vous assurer qu'elle ne comporte aucune faille.
- Revenez à la page Cloud Web Security Scanner dans la console Google Cloud.
- Cliquez sur Exécuter pour relancer l'analyse.
Remarque : L'exécution de l'analyse peut prendre entre 5 et 10 minutes.
L'onglet Résultats devrait maintenant indiquer qu'aucune faille n'a été détectée.
Cliquez sur Vérifier ma progression pour vérifier que vous avez correctement accompli cette tâche. Assurez-vous d'attendre la fin de l'analyse pour que cette tâche soit validée.
Analyser à nouveau l'application Web
Conclusion
Bravo !
Dans cet atelier, vous avez acquis une expérience pratique de l'analyse des failles d'application. Vous avez appris l'importance pour un analyste en sécurité d'être capable de rechercher les failles dans les applications, une aptitude essentielle pour contribuer à identifier et corriger les failles potentielles, gérer les risques, respecter les exigences de conformité et, au bout du compte, maintenir une stratégie de sécurité robuste pour protéger les ressources et la réputation d'une organisation.
En comblant les lacunes de sécurité et en corrigeant les failles, vous pouvez aider à prévenir les exploitations potentielles, à minimiser l'impact des incidents de sécurité et à maintenir la conformité aux réglementations du secteur.
Cet atelier vous a permis d'aborder l'un des aspects fondamentaux des stratégies proactives en matière de cybersécurité.
Terminer l'atelier
Avant de terminer l'atelier, assurez-vous d'avoir bien accompli toutes les tâches. Cliquez alors sur Terminer l'atelier, puis sur Envoyer.
Une fois l'atelier terminé, vous n'aurez plus accès à l'environnement de l'atelier ni au travail que vous avez effectué.
Copyright 2026 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms de société et de produit peuvent être des marques des sociétés auxquelles ils sont associés.