Corriger une injection dans un script CI

Corrigez une tâche CI locale pour conserver les métadonnées littérales tout en maintenant les builds de prévisualisation.

CybersécuritéLinux

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Corriger une injection dans un script CI est un cours pratique pour les débutants sachant saisir des commandes dans un terminal. Un build de prévisualisation traite par erreur le titre d’un contributeur comme du texte shell exécutable. Vous supprimerez ce risque tout en préservant le traitement utile des métadonnées.

Un laboratoire guidé présente le fonctionnement normal, suit une véritable exécution Bash et enseigne une petite correction JSON et shell. Un défi applique la même technique à des notes de version multilignes. Le cours complet dure environ 85 minutes.

Ce que vous apprendrez

  • Suivre les données de l’événement jusqu’au code shell généré et identifier la frontière de substitution.
  • Transmettre les métadonnées par des variables d’environnement et développer leur valeur entre guillemets.
  • Préserver ponctuation, texte ressemblant à du shell et sauts de ligne finaux.
  • Tester de vrais artefacts et l’intégrité du canal dans des espaces jetables.

À qui s’adresse ce cours

Ce cours s’adresse aux développeurs débutants, aux étudiants en sécurité et aux personnes découvrant la CI. Une familiarité élémentaire avec le terminal est requise, mais aucune expérience Git ou CI. Le laboratoire enseigne le JSON, la syntaxe Bash et la méthode d’écriture de fichiers nécessaires au défi.

LabEx fournit un terminal Linux prêt à l’emploi et un exécuteur local avec une page Topology. Vous modifiez deux petits fichiers. Les builds exécutent réellement Bash dans des conteneurs isolés, sans compte hébergé, identifiant de déploiement ni publication réelle.

Questions fréquentes

Faut-il un compte GitHub ?

Non. Des événements synthétiques et un petit format local documenté permettent d’étudier le passage des entrées au shell sans service CI hébergé.

Vais-je écrire du code ?

Vous modifiez un petit mappage d’environnement JSON et un court script Bash. Chaque élément de syntaxe requis est expliqué avant son utilisation.

Comment la réussite est-elle évaluée ?

La tâche soumise doit produire des métadonnées exactes et conserver le canal de prévisualisation avec les cas normaux et hostiles, sans modification par le vérificateur. Les tests utilisent des espaces temporaires ; aucun rapport ni journal copié n’est demandé.

Enseignant

labby
Labby
Labby is the LabEx teacher.