Pourquoi le pentesting éthique est un métier d’avenir au Sénégal ?
Avec la digitalisation accélérée des banques (Wave, Orange Money, Société Générale), des administrations (ADIE) et des e-commerce (Jumia, Sonatel-Yas), la demande pour des pentesteurs locaux dépasse l’offre. Les missions sont rémunérées entre 300 000 et 2 000 000 FCFA par engagement, et les certifications OSCP/CEH ouvrent des portes en Afrique de l’Ouest comme à l’international (remote pour clients européens). C’est aussi l’un des rares métiers où l’autodidacte certifié peut percer sans diplôme universitaire.
Le pentesting ethique : tester pour mieux protéger
Le test de pénétration (pentest) ethique consiste a simuler une cyberattaque sur un système informatique avec l’autorisation du propriétaire pour identifier les vulnerabilites avant que des attaquants malveillants ne les exploitent. C’est l’equivalent numérique d’un audit de sécurité physique : vous engagez quelqu’un pour tenter de s’introduire dans vos locaux afin de trouver les failles dans votre système de sécurité.
Au Sénégal, le besoin de pentesteurs qualifies explose avec la digitalisation des entreprises et des services publics. C’est un métier d’avenir accessible avec de la determination et les bonnes ressources.
Cadre legal et ethique
La loi au Sénégal
- Loi 2008-11 sur la cybercriminalite : l’accès non autorise a un système informatique est un délit puni d’emprisonnement et d’amende
- Autorisation obligatoire : vous devez TOUJOURS avoir une autorisation ecrite (lettre de mission, contrat de prestation) avant de tester un système
- Perimetre defini : le contrat doit préciser exactement ce qui peut être teste (adresses IP, applications, plages horaires)
- Rapport confidentiel : les résultats du pentest sont confidentiels et ne doivent être communiques qu’au commanditaire
Les 3 règles d’or du pentesteur ethique
- Autorisation : ne jamais tester sans accord écrit
- Proportionnalite : ne pas causer de dommages inutiles (pas de DoS en production, pas de suppression de données)
- Confidentialite : ne jamais divulguer les vulnerabilites trouvees a des tiers
Les 5 phases d’un test de pénétration
Phase 1 : Reconnaissance (Information Gathering)
Collecter le maximum d’informations sur la cible sans interaction directe :
# Reconnaissance passive (OSINT)
# Informations DNS
dig monsite.sn ANY
nslookup -type=ANY monsite.sn
whois monsite.sn
# Sous-domaines
# Outil : subfinder
subfinder -d monsite.sn -o subdomains.txt
# Recherche Google (Google Dorking)
# site:monsite.sn filetype:pdf
# site:monsite.sn inurl:admin
# site:monsite.sn "mot de passe"
# Emails et employes
# theHarvester collecte emails, noms, sous-domaines
theHarvester -d monsite.sn -b google,bing,linkedin
# Technologies utilisées
# Outil : whatweb
whatweb monsite.sn
# Résultat : Apache, PHP 8.1, WordPress 6.4, WooCommerce
Phase 2 : Scan et enumeration
# Scan de ports et services
nmap -sS -sV -sC -O -p- cible.sn -oA scan-complet
# Scan de vulnerabilites web
nikto -h https://cible.sn -o nikto-report.txt
# Enumeration WordPress
wpscan --url https://cible.sn --enumerate vp,vt,u --api-token TOKEN
# Enumeration des répertoires
# Outil : gobuster ou dirsearch
gobuster dir -u https://cible.sn -w /usr/share/wordlists/dirb/common.txt -o dirs.txt
# Résultat type :
# /wp-admin (Status: 302)
# /wp-content/uploads (Status: 200) -> listage de répertoire !
# /backup (Status: 200) -> fichiers de sauvegarde accessibles !
# /phpmyadmin (Status: 200) -> interface BDD exposée !
Phase 3 : Exploitation
Tenter d’exploiter les vulnerabilites identifiees :
# Metasploit Framework
msfconsole
# Exemple : exploitation d'une faille WordPress connue
msf6> search wordpress
msf6> use exploit/unix/webapp/wp_admin_shell_upload
msf6> set RHOSTS cible.sn
msf6> set USERNAME admin
msf6> set PASSWORD password123
msf6> exploit
# Test d'injection SQL
# Outil : sqlmap
sqlmap -u "https://cible.sn/page?id=1" --dbs
# Résultat : base de données listee = injection SQL confirmee
# Test XSS
# Outil : XSStrike
python3 xsstrike.py -u "https://cible.sn/search?q=" --crawl
Phase 4 : Post-exploitation
Évaluer l’impact réel de la compromission :
- Elevation de privileges : peut-on passer d’un utilisateur simple a administrateur ?
- Mouvement lateral : depuis cette machine compromise, peut-on accéder a d’autres systèmes du réseau ?
- Exfiltration : quelles données sensibles sont accessibles ? (sans les copier réellement)
- Persistance : un attaquant pourrait-il maintenir un accès permanent ? (documenter sans implémenter)
Phase 5 : Rapport
Le rapport est le livrable le plus important du pentest. Structure recommandee :
- Résumé executif : pour la direction, en langage non technique (2 pages max)
- Methodologie : outils utilisés, perimetre, dates du test
- Vulnerabilites trouvees : classees par criticite (Critique, Haute, Moyenne, Basse)
- Pour chaque vulnerabilite : description, preuve (capture d’écran), impact potentiel, recommandation de correction
- Synthese des recommandations : priorisees par criticite et facilite de correction
Types de pentests
| Type | Connaissance prealable | Simule | Quand l’utiliser |
|---|---|---|---|
| Boite noire | Aucune information sur la cible | Un attaquant externe inconnu | Évaluer la sécurité vue de l’exterieur |
| Boite grise | Accès utilisateur standard, documentation partielle | Un employe malveillant ou un attaquant avec un compte | Le plus courant et le plus realiste |
| Boite blanche | Accès complet : code source, architecture, comptes admin | Audit de sécurité complet | Trouver le maximum de vulnerabilites |
Pentest web : les vulnerabilites OWASP Top 10
Le OWASP Top 10 est la référence des vulnerabilites web les plus critiques :
| Rang | Vulnerabilite | Description simple | Outil de test |
|---|---|---|---|
| 1 | Contrôle d’accès defaillant | Accès a des pages/fonctions non autorisees | Burp Suite, test manuel |
| 2 | Defauts cryptographiques | Données sensibles non chiffrees, algorithmes faibles | SSLScan, testssl.sh |
| 3 | Injection | SQL injection, commande injection | SQLMap, commix |
| 4 | Conception non sécurisée | Failles dans l’architecture même de l’application | Revue de code |
| 5 | Mauvaise configuration | Serveur mal configuré, headers manquants | Nikto, Nmap scripts |
| 6 | Composants vulnerables | Plugins, librairies obsoletes | WPScan, retire.js |
| 7 | Authentification defaillante | Mots de passe faibles, pas de 2FA, sessions mal gerees | Hydra, Burp Suite |
| 8 | Integrite logicielle | Mises a jour non verifiees, CI/CD compromis | Analyse de configuration |
| 9 | Journalisation insuffisante | Pas de logs, pas de détection d’intrusion | Revue manuelle |
| 10 | SSRF | Forcer le serveur a faire des requetes vers des ressources internes | Burp Suite, test manuel |
Outils essentiels du pentesteur
Kit de base (tous gratuits)
- Kali Linux : distribution avec 600+ outils pre-installés
- Nmap : scan réseau et détection de vulnerabilites
- Burp Suite Community : proxy d’interception pour tester les applications web
- Metasploit : framework d’exploitation
- SQLMap : détection et exploitation automatique d’injections SQL
- WPScan : scanner spécialisé WordPress
- John the Ripper / Hashcat : craquage de mots de passe hors ligne
- Gobuster / Dirsearch : découverte de répertoires web
- Wireshark : analyse de trafic réseau
Cas pratique : pentester votre propre site WordPress
# Étape 1 : Reconnaissance
whois votre-site.sn
nslookup votre-site.sn
whatweb https://votre-site.sn
# Étape 2 : Scan
nmap -sV -sC -p 80,443 votre-site.sn
wpscan --url https://votre-site.sn --enumerate vp,vt,u --api-token TOKEN
# Étape 3 : Vérifier les headers de sécurité
curl -I https://votre-site.sn
# Vérifier la presence de :
# X-Frame-Options
# X-Content-Type-Options
# Content-Security-Policy
# Strict-Transport-Security
# Étape 4 : Tester le login
# Vérifier si wp-login.php est accessible
curl -s https://votre-site.sn/wp-login.php | head -20
# Vérifier XML-RPC (souvent exploite)
curl -s https://votre-site.sn/xmlrpc.php
# Étape 5 : Vérifier les fichiers exposes
curl -s https://votre-site.sn/wp-config.php.bak
curl -s https://votre-site.sn/.env
curl -s https://votre-site.sn/debug.log
Devenir pentesteur au Sénégal
Parcours de formation
- Bases : Linux, réseaux TCP/IP, programmation (Python, Bash)
- Fondamentaux sécurité : CompTIA Security+ ou equivalent
- Pratique : TryHackMe, HackTheBox, DVWA, CTF (Capture The Flag)
- Certification : eJPT (debutant), CEH (intermediaire), OSCP (référence)
- Specialisation : pentest web, pentest réseau, pentest mobile, red teaming
Debouches au Sénégal
- Freelance : proposer des audits de sécurité aux PME (300 000 – 2 000 000 FCFA par mission selon la taille)
- ESN/Cabinet : rejoindre une entreprise de services numériques specialisee en cybersecurite
- Banques et telecoms : les grands groupes (CBAO, Société Generale, Sonatel, Free) ont des équipes sécurité internes
- Organismes publics : l’ADIE, la Presidence, les ministeres recrutent des experts en sécurité
- Bug bounty : programmes de recompense pour la découverte de vulnerabilites (HackerOne, Bugcrowd) – accessible depuis le Sénégal
Ressources gratuites pour debuter
| Ressource | Type | Niveau | Langue |
|---|---|---|---|
| TryHackMe | Plateforme interactive | Debutant | Anglais |
| HackTheBox Academy | Cours + labs | Debutant a avancé | Anglais |
| PortSwigger Web Academy | Cours sécurité web | Intermediaire | Anglais |
| OWASP Testing Guide | Documentation | Intermediaire | Anglais |
| Root-Me | Challenges | Tous niveaux | Francais |
| Hack.me | Applications vulnerables | Debutant | Anglais |
Erreurs fréquentes
1. Tester sans autorisation écrite (même un proche)
Cause : « Mon ami a un site, je vais juste regarder ». La loi 2008-11 sénégalaise punit l’accès non-autorisé, peu importe l’intention. Vos logs IP suffisent à vous incriminer.
Solution : exigez systématiquement un contrat de mission ou une lettre d’autorisation signée précisant : périmètre IP/domaine, plages horaires, types de tests autorisés, et clause de confidentialité. Sans papier, pas de test.
2. Lancer un scan agressif en pleine production
Cause : nmap -T5 -A -p- target.sn en pleine journée crash le serveur web ou déclenche les alertes WAF. Le client subit une indisponibilité commerciale.
Solution : alignez-vous sur les plages horaires définies dans le contrat (souvent 22h-6h). Préférez -T2 (timing poli) sur la production, et un mirroir/staging pour les tests destructifs.
3. Confondre Bug Bounty et pentesting libre
Cause : on voit un site qui « pourrait avoir un bounty » et on commence à tester. Sans programme officiel publié, vous êtes simplement en infraction.
Solution : consultez la liste publique sur HackerOne Directory ou Bugcrowd Programs. Lisez TOUJOURS le scope avant le moindre scan : certains domaines sont explicitement out-of-scope.
4. Stocker les preuves sur un cloud non chiffré
Cause : on push les screenshots, dumps SQL et identifiants exfiltrés sur Google Drive ou Dropbox. Si votre compte est compromis, c’est l’entreprise cliente qui pâtit, et vous êtes responsable légalement.
Solution : stockez les preuves dans un volume VeraCrypt ou un repo Git privé chiffré. Supprimez les preuves après remise du rapport (clause RGPD/CDP). Et signez avec PGP les rapports finaux.
5. Rapport sans plan de remédiation actionnable
Cause : on liste 47 vulnérabilités CVSS sans hiérarchisation ni étapes concrètes. Le client ne sait pas par où commencer et abandonne.
Solution : rapport en 3 couches : (1) résumé exécutif 1 page pour la direction, (2) tableau priorité × effort × impact, (3) détail technique avec PoC et patch suggéré. Et planifiez un retest 1-3 mois après pour valider les correctifs.
Checklist avant de lancer un pentest
- Contrat ou autorisation ecrite signe par le propriétaire du système
- Perimetre clairement defini (IP, applications, horaires)
- Contacts d’urgence en cas de problème (crash d’un service)
- Environnement de test séparé si possible (pas directement en production)
- Outils prepares et a jour sur Kali Linux
- Methodologie choisie (OWASP, PTES, OSSTMM)
- Modèle de rapport pret
- Sauvegarde des systèmes cibles effectuée par le client
Pour explorer plus loin
- Sécuriser votre site WordPress contre les hackers — la défense correspondant à l’attaque WP.
- Les bases du chiffrement — pour bien protéger vos preuves de pentest.
- Reconnaître un email de phishing — base pour le pentest social engineering.
- Créer des mots de passe inviolables — comprendre comment Hashcat les casse.
- Plateformes d’entraînement : TryHackMe, HackTheBox, PortSwigger Web Security Academy.
- Référence officielle : OWASP Web Security Testing Guide et PTES Standard.
Besoin d’un VPS ou d’un hébergement fiable ?
Hostinger propose des plans abordables — adaptés aux tutoriels de ce blog et utilisés par notre rédaction. Le lien est un lien de partenariat : si vous achetez via lui, le blog reçoit une petite commission sans surcoût pour vous.
Lien d affiliation. Si vous achetez via ce lien, le blog reçoit une petite commission sans surcoût pour vous.