Guide Red TeamTests d’intrusion autorisés · Red Team · Purple Team
Domaines
Nuclei · guide pratique V13

Créer un template non destructif

Écrire un template interne qui vérifie un en-tête ou une exposition sans authentification forcée, fuzzing ou modification d’état. Le point est ici appliqué au cas « Créer un template non destructif ».

En bref

  • But : Écrire un template interne qui vérifie un en-tête ou une exposition sans authentification forcée, fuzzing ou modification d’état.
  • Preuve attendue : la commande exacte, la version de l’outil, la sortie brute et la validation manuelle
  • Limite : le résultat est valable uniquement pour les versions, rôles, chemins et conditions effectivement testés.
Schéma synthétique : Créer un template non destructif
Vue synthétique de « Créer un template non destructif » : les étapes affichées correspondent aux sections pratiques de cette page.

Commandes, filtres et exemples guidés

Template de contrôle d’en-tête

« Créer un template non destructif » est traité comme une fiche de contrôle : définir l’état attendu, exécuter une vérification bornée, conserver la sortie native et comparer le résultat à une source indépendante.

Commandes et exemples

Les exemples ci-dessous proviennent des éléments utiles de « Créer un template non destructif ». Adaptez uniquement les valeurs du laboratoire et conservez la commande exacte avec sa sortie.

Exemples de laboratoire

cat > templates/lab-header.yaml <<'EOF'
id: lab-security-header
info:
  name: En-tête de sécurité absent
  author: lab
  severity: info
http:
  - method: GET
    path:
      - "{{BaseURL}}/"
    matchers:
      - type: word
        part: header
        words:
          - "Content-Security-Policy"
        negative: true
EOF
nuclei -validate -t templates/lab-header.yaml
nuclei -u https://lab.local -t templates/lab-header.yaml -rl 2 -c 1

Lire les résultats

Pour « Créer un template non destructif », distinguez la sortie brute, l’hypothèse et la conclusion. Les versions, droits, caches et contrôles compensatoires sont vérifiés avant de classer le résultat.

Détection, correction et retest

La correction de « Créer un template non destructif » traite la cause, le propriétaire et la détection associée. Le retest conserve la même méthode afin de démontrer la disparition ou la réduction mesurable du constat.

Procédure pratique — Créer un template non destructif

Dans « Créer un template non destructif », partez d’une requête HTTP normale vers une application de laboratoire, puis ne modifiez qu’un élément à la fois : chemin, paramètre, en-tête, cookie ou corps. Cette méthode permet d’attribuer une différence de réponse à une cause précise plutôt qu’à un changement simultané de plusieurs variables.

  1. Définir la route et le rôle utilisateur couverts par « Créer un template non destructif » ; exclure explicitement les fonctions de production non prévues.
  2. Enregistrer une requête de référence avec son code HTTP, sa taille, son temps de réponse et les principaux en-têtes.
  3. Appliquer une variation contrôlée avec un débit faible et sauvegarder la requête exacte ainsi que la réponse brute.
  4. Vérifier le comportement dans les journaux du serveur, du reverse proxy ou du WAF lorsque ces sources sont disponibles.
  5. Corriger côté serveur, vider les caches concernés et rejouer la requête de référence puis la variante.

Une réponse différente ne suffit pas à conclure. Comparez aussi le contenu, les redirections, le rôle authentifié et l’état applicatif. Pour le domaine « Nuclei », la preuve utile est une paire de requêtes reproductibles montrant le contrôle attendu avant et après correction. Pour « Créer un template non destructif », le résultat final reprend les prérequis, l’action exécutée, la preuve et le retest.

Comprendre le sujet avant d’agir

Le chapitre « Créer un template non destructif » appartient au domaine « Nuclei ». Il doit permettre de comprendre le mécanisme avant d’utiliser un outil, puis de produire une preuve lisible par une autre personne. L’objectif n’est pas d’accumuler des commandes : chaque action doit répondre à une hypothèse, rester dans le périmètre et déboucher sur une conclusion vérifiable.

Dans ce contexte, l’attention porte surtout sur les hypothèses, entrées, actions, sorties et limites propres au sujet. Une approche professionnelle commence par noter l’état initial, la version des composants et l’identité utilisée. Elle se termine par la conservation des sorties utiles, l’explication des limites et la vérification que le laboratoire a été remis dans son état prévu.

  • Point de contrôle — contexte initial.
  • Point de contrôle — action réalisée.
  • Point de contrôle — résultat brut.
  • Point de contrôle — confirmation indépendante.
  • Point de contrôle — conclusion et limite.

Méthode de travail détaillée

La méthode suivante transforme « Créer un template non destructif » en exercice reproductible. Elle évite de confondre la quantité de sorties avec la qualité de la preuve et permet d’arrêter le test dès que l’objectif est démontré.

  1. Définir en une phrase ce que l’exercice « Créer un template non destructif » doit confirmer ou infirmer.
  2. Relever l’état initial du laboratoire et les versions utiles au domaine « Nuclei ».
  3. Choisir l’action la moins intrusive capable de répondre à la question.
  4. Exécuter une seule variation à la fois et conserver la sortie brute avec un horodatage UTC.
  5. Confirmer le résultat par une seconde observation ou une vérification manuelle.
  6. Documenter l’impact, les limites, la correction proposée et le critère de retest.

Exemple guidé dans le laboratoire

Préparez un scénario réduit dans `lab.local` qui ne contient que les composants nécessaires à « Créer un template non destructif ». Notez l’état initial, appliquez la méthode du chapitre et sauvegardez chaque sortie sous un nom horodaté.

Le cas est réussi lorsque la conclusion peut être relue et reproduite sans connaissance implicite. Les captures servent d’illustration, mais la preuve principale reste la sortie brute accompagnée de son contexte.

  • Préparation — confirmer les actifs et comptes autorisés pour « Créer un template non destructif ».
  • Exécution — limiter l’action à une seule hypothèse et une seule variation.
  • Validation — reproduire le résultat et conserver la sortie brute.
  • Clôture — nettoyer les artefacts, documenter les limites et définir le retest.

Lecture des commandes et options

Les commandes déjà présentes dans « Créer un template non destructif » doivent être lues comme des exemples de laboratoire. Les lignes suivantes expliquent leur rôle afin d’éviter une exécution aveugle.

  • `cat > templates/lab-header.yaml <<'EOF'` — cette ligne participe à l’exercice « Créer un template non destructif » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `id: lab-security-header` — cette ligne participe à l’exercice « Créer un template non destructif » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `info:` — cette ligne participe à l’exercice « Créer un template non destructif » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `name: En-tête de sécurité absent` — cette ligne participe à l’exercice « Créer un template non destructif » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.
  • `author: lab` — cette ligne participe à l’exercice « Créer un template non destructif » ; vérifiez ses arguments et exécutez-la uniquement sur les données ou cibles du laboratoire.

Interprétation et qualité de la preuve

Pour « Créer un template non destructif », un résultat utile relie au minimum le contexte, l’action et l’observation. Une sortie d’outil isolée reste une indication : elle devient une preuve lorsque le périmètre, la version, les paramètres et la reproduction sont documentés.

La conclusion doit préciser ce qui est confirmé, ce qui reste probable et ce qui n’a pas été testé. Dans le profil « general », les éléments à rapprocher sont notamment : contexte initial, action réalisée, résultat brut. Les autres éléments servent à expliquer la portée et à préparer le retest.

  • Élément à documenter — contexte initial.
  • Élément à documenter — action réalisée.
  • Élément à documenter — résultat brut.
  • Élément à documenter — confirmation indépendante.
  • Élément à documenter — conclusion et limite.

Erreurs fréquentes et amélioration de la qualité

Les erreurs ci-dessous sont particulièrement importantes pour « Créer un template non destructif ». Elles produisent des faux positifs, des conclusions impossibles à reproduire ou un risque inutile pour le laboratoire.

  • À éviter — agir sans objectif mesurable.
  • À éviter — collecter trop de données.
  • À éviter — ne pas conserver la sortie brute.
  • À éviter — conclure sur un seul indicateur.
  • À éviter — omettre le nettoyage et le retest.

Checklist avant de clôturer le chapitre

Cette checklist résume les contrôles attendus pour considérer « Créer un template non destructif » comme terminé de manière professionnelle.

  • L’objectif et le périmètre de « Créer un template non destructif » sont écrits.
  • La version des outils et composants est enregistrée.
  • La commande, le filtre ou la procédure exacte est conservé.
  • La sortie brute est horodatée et accompagnée de son contexte.
  • Le résultat a été confirmé par une seconde observation.
  • Les limites et les éléments non testés sont explicites.
  • Les artefacts créés ont été supprimés ou remis dans l’état convenu.
  • La recommandation et le critère de retest sont exploitables.

Références

À retenir

Pour maîtriser « Créer un template non destructif », retenez trois idées : comprendre les hypothèses, entrées, actions, sorties et limites propres au sujet, exécuter une méthode limitée et reproductible, puis transformer la sortie en preuve contextualisée. Le chapitre est terminé lorsque le résultat peut être confirmé, que ses limites sont explicites et que la correction peut être retestée sans réinterpréter toute la mission.

  • Savoir expliquer le mécanisme propre à « Créer un template non destructif » sans réciter une commande.
  • Conserver au minimum contexte initial, action réalisée et résultat brut.
  • Éviter en priorité de agir sans objectif mesurable et de collecter trop de données.
  • Proposer une action corrective mesurable et un retest réalisable.