Les 5 phases
1. Reconnaissance → 2. Scan → 3. Exploitation → 4. Post-exploitation → 5. Rapport
Phase 1 — Reconnaissance (OSINT)
Collecte d'informations sans interagir avec la cible.
Passive
$whois example.com
Informations WHOIS du domaine
$dig example.com ANY
Tous les enregistrements DNS
$dig +short example.com MX
Serveurs mail
Outils OSINT :
- theHarvester : emails, sous-domaines, IPs
- Shodan : moteur de recherche pour appareils connectés
- Google Dorks : recherches avancées (
site:,inurl:,filetype:)
Active
$nmap -sn 10.0.0.0/24
Découverte d'hôtes actifs
$dnsrecon -d example.com -t std
Énumération DNS
Phase 2 — Scan et énumération
$nmap -sS -sV -sC -O -p- -T4 target.com
Scan complet de ports et services
$nikto -h https://target.com
Scan de vulnérabilités web
$gobuster dir -u https://target.com -w /usr/share/wordlists/dirb/common.txt
Énumération de répertoires
Énumération de services
| Service | Outil | Objectif |
|---|---|---|
| HTTP | Nikto, Gobuster, Burp | Fichiers, répertoires, vulns |
| SSH | ssh-audit | Configuration, algorithmes |
| SMB | enum4linux, smbclient | Partages, utilisateurs |
| DNS | dnsrecon, fierce | Sous-domaines, zone transfers |
| SMTP | smtp-user-enum | Énumération d'utilisateurs |
Phase 3 — Exploitation
Vulnérabilités communes
| Vulnérabilité | Vecteur | Outil |
|---|---|---|
| SQL Injection | Formulaires, paramètres URL | sqlmap |
| XSS | Champs de saisie | Burp Suite |
| File Upload | Upload de fichiers | Shell reverse |
| Default Credentials | Services avec mdp par défaut | Hydra |
| Outdated Software | CVE connues | Metasploit, searchsploit |
$searchsploit apache 2.4
Chercher des exploits pour Apache 2.4
Brute force
$hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://target.com
Brute force SSH (avec autorisation)
Phase 4 — Post-exploitation
Après avoir obtenu un accès initial :
- Escalade de privilèges : passer de user à root
- Mouvement latéral : pivoter vers d'autres machines
- Persistance : maintenir l'accès (dans le scope du pentest)
- Collecte de données : prouver l'impact
Escalade de privileges Linux
$sudo -l
Vérifier les commandes sudo autorisées
$find / -perm -4000 -type f 2>/dev/null
Trouver les binaires SUID
$cat /etc/crontab
Vérifier les tâches cron
$uname -a
Version du kernel (chercher des exploits)
Phase 5 — Rapport
Structure d'un rapport de pentest
- Executive Summary : résumé non-technique pour la direction
- Scope : périmètre du test, dates, méthodes
- Findings : vulnérabilités découvertes, classées par sévérité
- Evidence : captures d'écran, logs, preuves
- Recommendations : correctifs priorisés
- Appendix : détails techniques, outils utilisés
Classification des vulnérabilités
| Sévérité | CVSS | Exemple |
|---|---|---|
| Critical | 9.0 - 10.0 | RCE non authentifié |
| High | 7.0 - 8.9 | SQL injection, escalade de privilèges |
| Medium | 4.0 - 6.9 | XSS stocké, CSRF |
| Low | 0.1 - 3.9 | Information disclosure, headers manquants |
| Info | 0.0 | Recommandations, bonnes pratiques |
Cadre légal
- Toujours avoir une autorisation écrite avant un pentest
- Définir clairement le périmètre (IPs, domaines, horaires)
- Ne jamais dépasser le scope autorisé
- Documenter toutes les actions
- Signaler immédiatement les vulnérabilités critiques