# 🛡️ Rapport pentest — PTES + OWASP Testing Guide v4 **Format** : Word (DOCX) + LaTeX · 4 templates · PTES + OWASP-compliant **Auteur** : Équipe pédagogique ITAG · Cyber Pack **Mise à jour** : 2026 --- ## 🎯 Description Templates de rapport de test d'intrusion (pentest) conformes au PTES (Penetration Testing Execution Standard) et à l'OWASP Testing Guide v4. Format pro pour livrer à un client B2B. ## 📋 Contenu (4 templates) ### 1. Executive Summary (2-3 pages) Pour la direction non-tech : - Contexte de la mission - Verdict global (red / orange / green) - Top 5 risques métier - Recommandations prioritaires ### 2. Technical Report complet (40-80 pages) - **Scope & Methodology** (PTES — 7 phases) - **Reconnaissance summary** (OSINT, fingerprinting) - **Threat Modeling** (STRIDE, attaque trees) - **Vulnerability Analysis** (par OWASP Top 10 mapping + CWE) - **Exploitation** (proof of concept, screenshots) - **Post-Exploitation** (impact, lateral movement) - **Findings détaillés** (un par vulnérabilité) - Description, CVSS 3.1 score, impact, reproduction steps, remediation - **Remediation roadmap** (P1/P2/P3 + délais SLA) ### 3. Findings template (par vuln) - Title + CVE/CWE references - CVSS 3.1 base + temporal + environmental - Affected components - Reproduction (POC code, curl, screenshots) - Remediation détaillée + références (OWASP, NIST) ### 4. Appendices - Logs (sanitized) - Captures réseau (PCAP refs) - Tools utilisés (Metasploit, Burp, nmap, etc.) - Scope statement signé ## 🧠 Standards couverts - PTES (Penetration Testing Execution Standard) - OWASP Testing Guide v4.2 - NIST SP 800-115 - ISO/IEC 27002 ## 💼 Cas d'usage - Pentester freelance livrant à un client - Red team interne livrant à RSSI - Préparation OSCP / CEH / PenTest+ - Étudiant master cybersécurité (mémoire) --- ## 📄 Template rapport de pentest complet ``` # RAPPORT DE TEST D'INTRUSION **Client :** [Nom de l'organisation] **Date de la mission :** [JJ/MM/AAAA] — [JJ/MM/AAAA] **Référence :** [REF-2026-XXX] **Niveau de confidentialité :** CONFIDENTIEL **Pentesteur :** [Prénom Nom] · [certification : OSCP / CEH / PNPT] ``` --- ### 1. Résumé exécutif > *Cette section est destinée au RSSI, DSI et direction générale. Elle ne contient pas de détails techniques.* **Contexte de la mission** [Nom de l'organisation] a mandaté [Nom du prestataire / pentesteur] pour réaliser un test d'intrusion de type [black box / grey box / white box] sur le périmètre défini ci-dessous, du [JJ/MM/AAAA] au [JJ/MM/AAAA]. **Verdict global** 🔴 **CRITIQUE** — Des vulnérabilités permettant une compromission complète du système ont été identifiées. Une action corrective immédiate est requise. *(Adapter le verdict : 🔴 Critique / 🟠 Élevé / 🟡 Modéré / 🟢 Faible)* **Tableau de synthèse des vulnérabilités** | Sévérité | Nombre | Description courte | |----------------|--------|-------------------------------------------| | 🔴 Critique | [N] | Compromission immédiate possible | | 🟠 Haute | [N] | Exposition de données sensibles | | 🟡 Moyenne | [N] | Risque exploitable sous conditions | | 🟢 Faible | [N] | Bonne pratique non respectée | | ℹ️ Informationnelle | [N] | Observation sans impact direct | | **TOTAL** | **[N]** | | **Recommandation prioritaire** Corriger les vulnérabilités critiques et hautes dans un délai de **30 jours**. Un re-test est recommandé à l'issue des corrections. --- ### 2. Périmètre & Objectifs **Adresses IP / URLs en scope** | Cible | Type | Description | |---------------------|-------------|--------------------------| | [192.168.x.x/24] | Réseau | Infrastructure interne | | [https://app.exemple.fr] | Web app | Application principale | | [smtp.exemple.fr:25] | Service | Serveur de messagerie | | [À COMPLÉTER] | [À COMPLÉTER] | [À COMPLÉTER] | **Hors scope (exclusions)** - [Systèmes de production tiers non inclus dans le périmètre] - [Attaques par déni de service (DoS/DDoS)] - [Ingénierie sociale sur les employés] **Type de test** - [ ] Black box (aucune information fournie) - [x] Grey box (informations partielles : comptes, architecture) - [ ] White box (accès complet au code source et documentation) **Règles d'engagement** - Tests autorisés **uniquement** sur le périmètre listé ci-dessus - Fenêtre horaire : [HH:MM] — [HH:MM] (heure locale [Paris / Douala / Montréal]) - Contact d'urgence : [Prénom Nom] · [+33 X XX XX XX XX] - En cas d'impact sur la production : arrêt immédiat et notification sous 30 minutes --- ### 3. Méthodologie **Phases PTES (Penetration Testing Execution Standard)** | Phase | Nom | Description | |-------|--------------------------|--------------------------------------------------------------------| | 1 | Pre-engagement | Définition du périmètre, règles d'engagement, NDA, contrat signé | | 2 | Intelligence Gathering | OSINT, fingerprinting DNS/WHOIS, énumération de services | | 3 | Threat Modeling | Identification des actifs critiques, modèles d'attaque STRIDE | | 4 | Vulnerability Analysis | Scan automatisé + analyse manuelle, mapping OWASP Top 10 / CWE | | 5 | Exploitation | Exploitation des vulnérabilités identifiées, preuve de concept (PoC) | | 6 | Post-Exploitation | Escalade de privilèges, mouvement latéral, persistance, exfiltration | | 7 | Reporting | Documentation des findings, recommandations, roadmap corrective | **Outils utilisés** | Outil | Version | Usage | |----------------|------------|----------------------------------------| | Nmap | 7.94 | Scan de ports, fingerprinting OS | | Burp Suite Pro | 2023.x | Analyse de trafic HTTP, fuzzing web | | Metasploit | 6.x | Exploitation, post-exploitation | | Nikto | 2.1.6 | Scan vulnérabilités web automatisé | | SQLmap | 1.7.x | Test injection SQL automatisé | | Hydra | 9.x | Attaques par force brute | | Gobuster | 3.x | Énumération de répertoires/vhosts | | LinPEAS/WinPEAS | latest | Escalade de privilèges post-exploitation | | [À COMPLÉTER] | [À COMPLÉTER] | [À COMPLÉTER] | --- ### 4. Vulnérabilités découvertes #### 4.1 Tableau récapitulatif | ID | Titre | Sévérité | CVSS v3 | Statut | |-------|-------------------------------|------------|---------|--------------| | VUL-01 | SQL Injection — /login | 🔴 Critique | 9.8 | À corriger | | VUL-02 | Missing Security Headers | 🟡 Moyenne | 5.3 | À corriger | | VUL-03 | Outdated OpenSSH (version 7.x) | 🟢 Faible | 3.7 | À planifier | | [VUL-XX] | [À COMPLÉTER] | [À COMPLÉTER] | [X.X] | À corriger | --- #### 4.2 Fiches détaillées --- **VUL-01 · SQL Injection — Formulaire de connexion** | Champ | Valeur | |----------------|------------------------------------------------------------------------| | **Titre** | SQL Injection dans le paramètre `username` du formulaire /login | | **Sévérité** | 🔴 Critique | | **CVSS v3** | 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) | | **CVE** | N/A (vulnérabilité spécifique à l'application) | | **CWE** | CWE-89 — Improper Neutralization of Special Elements in SQL Command | | **URL affectée** | `https://app.exemple.fr/login` | | **Paramètre** | `username` (méthode POST) | **Description** Le paramètre `username` du formulaire de connexion est directement interpolé dans une requête SQL sans échappement ni utilisation de requêtes préparées. Un attaquant non authentifié peut contourner l'authentification ou extraire l'intégralité de la base de données. **Preuve (Proof of Concept)** ``` POST /login HTTP/1.1 Host: app.exemple.fr username=admin'--&password=anything ``` Résultat : connexion réussie en tant qu'administrateur sans mot de passe valide. *[Insérer screenshot de l'accès obtenu]* **Impact** - Contournement complet de l'authentification - Extraction de toutes les données utilisateurs (noms, emails, mots de passe hashés) - Possibilité d'exécution de commandes système via `xp_cmdshell` (SQL Server) ou `INTO OUTFILE` (MySQL) **Recommandation** 1. Utiliser des requêtes préparées (Prepared Statements) avec paramètres liés 2. Mettre en place un WAF (Web Application Firewall) en couche de défense complémentaire 3. Auditer l'ensemble des requêtes SQL de l'application ```php // À REMPLACER (vulnérable) $query = "SELECT * FROM users WHERE username='$username'"; // PAR (sécurisé) $stmt = $pdo->prepare("SELECT * FROM users WHERE username = ?"); $stmt->execute([$username]); ``` **Deadline de remédiation** : **0-15 jours** (P1 — Critique) --- **VUL-02 · Missing Security Headers** | Champ | Valeur | |----------------|------------------------------------------------------------------------| | **Titre** | En-têtes de sécurité HTTP absents | | **Sévérité** | 🟡 Moyenne | | **CVSS v3** | 5.3 (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) | | **CVE** | N/A | | **CWE** | CWE-693 — Protection Mechanism Failure | | **URL affectée** | Toutes les pages de l'application | **Description** Les en-têtes de sécurité HTTP suivants sont absents de toutes les réponses du serveur, exposant l'application à des attaques XSS, clickjacking et fuites d'information. **En-têtes manquants** | En-tête | Impact si absent | |-------------------------------|-------------------------------| | `Content-Security-Policy` | XSS, injection de contenu | | `X-Frame-Options` | Clickjacking | | `X-Content-Type-Options` | MIME sniffing | | `Strict-Transport-Security` | Attaques MITM / downgrade SSL | | `Referrer-Policy` | Fuite d'URL sensibles | **Recommandation** Ajouter dans la configuration Apache/Nginx ou dans le code applicatif : ```apache # Apache (.htaccess) Header set Content-Security-Policy "default-src 'self'" Header set X-Frame-Options "DENY" Header set X-Content-Type-Options "nosniff" Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" Header set Referrer-Policy "no-referrer-when-downgrade" ``` **Deadline de remédiation** : **31-60 jours** (P2 — Moyenne) --- **VUL-03 · Version OpenSSH obsolète** | Champ | Valeur | |----------------|--------------------------------------------------------------------| | **Titre** | OpenSSH version 7.4 — vulnérabilités connues non patchées | | **Sévérité** | 🟢 Faible | | **CVSS v3** | 3.7 (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N) | | **CVE** | CVE-2023-38408 (OpenSSH < 9.3p2) | | **CWE** | CWE-1035 — OWASP A06:2021 — Vulnerable and Outdated Components | | **Cible** | [IP du serveur SSH] port 22 | **Description** Le serveur SSH expose la version `OpenSSH_7.4p1` dans sa bannière. Cette version est obsolète et associée à plusieurs CVE dont CVE-2023-38408 permettant une exécution de code à distance dans certaines configurations. **Preuve** ``` $ nmap -sV -p 22 [IP_CIBLE] 22/tcp open ssh OpenSSH 7.4 (protocol 2.0) ``` **Recommandation** Mettre à jour OpenSSH vers la version ≥ 9.3p2. Sur Debian/Ubuntu : ```bash apt-get update && apt-get upgrade openssh-server ``` **Deadline de remédiation** : **61-90 jours** (P3 — Faible) --- ### 5. Recommandations prioritaires — Roadmap 90 jours | Horizon | Actions prioritaires | Responsable | |----------|-------------------------------------------------------------------|----------------| | **0-30j** | ✅ Corriger VUL-01 (SQL Injection) · Activer HTTPS partout | Dev + DevSecOps | | **31-60j** | ✅ Ajouter security headers · Mettre en place WAF | Ops + Dev | | **61-90j** | ✅ Mettre à jour OpenSSH · Audit complet des dépendances | SysAdmin | | **Continu** | Re-test après corrections · DAST dans CI/CD · Formation OWASP | RSSI | --- ### 6. Annexes #### Annexe A — Commandes utilisées ```bash # Scan réseau initial nmap -sC -sV -oA scan_initial [PLAGE_IP] # Énumération web gobuster dir -u https://app.exemple.fr -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt # Test SQL Injection sqlmap -u "https://app.exemple.fr/login" --data="username=test&password=test" --batch --dbs # Vérification headers HTTP curl -I https://app.exemple.fr ``` #### Annexe B — Extrait output Nmap ``` Nmap scan report for app.exemple.fr ([IP]) Host is up (0.045s latency). PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 7.4 (protocol 2.0) 80/tcp open http Apache httpd 2.4.6 443/tcp open ssl/https Apache httpd 2.4.6 | ssl-cert: Subject: commonName=app.exemple.fr | Not valid before: 2025-01-01T00:00:00 | Not valid after: 2026-01-01T00:00:00 ``` --- ## 📥 Téléchargement [Télécharger ce template](/templates/view.php?file=word-pentest-report&dl=1) · [← Catalogue Word](/templates.php?cat=word) · [Parcours Cyber →](/parcours/tech-cyber.php) --- *ITAG · OWASP, PTES sont des standards ouverts. ITAG produit ses templates indépendamment.*