Pentest

OWASP Testing Guide (WSTG) expliqué : structure et usage

OWASP Testing Guide (WSTG v4.2) expliqué : 11 chapitres, 100+ test cases WSTG-IDs, lien avec ASVS et Top 10, usage réel, limites et alternatives 2025.

Naim Aouaichia
13 min de lecture
  • OWASP
  • WSTG
  • Testing Guide
  • Méthodologie
  • Pentest web
  • ASVS
  • Référentiel

L'OWASP Testing Guide (WSTG) est un référentiel open source de plus de 400 pages publié par l'Open Web Application Security Project, qui documente plus de 100 tests concrets de sécurité web à exécuter lors d'un pentest d'application. La version stable actuelle est v4.2 (juin 2023), la v5 en développement actif est attendue fin 2025 / début 2026. Le WSTG organise les tests en 11 catégories couvrant l'intégralité du cycle de vie d'une mission web : Information Gathering, Configuration & Deployment Management, Identity Management, Authentication, Authorization, Session Management, Input Validation, Testing for Errors, Testing for Weak Cryptography, Business Logic Testing, Client-Side Testing. Chaque test est identifié par un code unique au format WSTG-CATEGORIE-NN (ex: WSTG-ATHN-03 pour « Testing for Weak Lock Out Mechanism »), utilisé en rapport pentest pour la traçabilité. Il est le compagnon offensif du Top 10 (sensibilisation) et du référentiel défensif ASVS (exigences de conception). Cet article détaille la structure des 11 chapitres, les identifiants WSTG-IDs à connaître, les relations avec les autres projets OWASP (Top 10, ASVS, MASTG, API Security Top 10), l'usage réel par les pentesters en mission, les limites en 2025 sur les sujets modernes (API, cloud, HTTP/2 smuggling), et les alternatives complémentaires.

1. Historique et positionnement

L'OWASP Testing Guide est né en 2003 sous forme d'une première checklist communautaire. Les versions majeures :

VersionAnnéeNombre de testsApport principal
v1.02004~30Checklist initiale
v2.02007~50Structuration en catégories
v3.02008~70Alignement OWASP Top 10 2007
v4.02014~90Refonte complète, identifiants OTG (legacy)
v4.12020~100Modernisation JS frameworks, renommage WSTG
v4.2 (stable)2023~110SameSite cookies, CSP moderne, HTTP/2 de base
v5 (draft)2025-2026~140 prévusAPI, GraphQL, cloud, SPA moderne

Le WSTG est maintenu sur GitHub (owasp-project-web-security-testing-guide), avec gouvernance OWASP Foundation, CC-BY-SA 4.0. Il n'est pas un standard ISO ni une norme ANSSI, mais il est cité contractuellement dans environ 50-60 % des missions pentest web françaises 2024-2025 (observations terrain + grilles PASSI publiques). Voir le positionnement dans le paysage méthodologique pentest avec Méthodologie pentest web et Qu'est-ce qu'un pentest.

1.1 Positionnement parmi les projets OWASP

Écosystème OWASP 2024-2025 — rôles distincts
─────────────────────────────────────────────
Top 10                    ─► Sensibilisation, 10 classes critiques
WSTG                      ─► Référentiel offensif (tests à exécuter)
ASVS                      ─► Référentiel défensif (exigences de conception)
API Security Top 10       ─► Sensibilisation API spécifique
MASVS + MASTG             ─► Équivalents mobile
SAMM                      ─► Maturité programme AppSec
Cheat Sheets              ─► Recettes courtes par thématique
Dependency-Check / Nettacker ─► Outils exécutables

2. Structure : les 11 chapitres du WSTG v4.2

Les chapitres 1-3 sont cadrage (non exécutables), les chapitres 4-14 sont les 11 catégories de tests exécutables. Numérotation historique conservée : les chapitres 4 à 14 (ou 4.1 à 4.11) portent les tests.

ChapitreIdentifiant WSTGDomaineNb tests v4.2
4.1WSTG-INFOInformation Gathering10
4.2WSTG-CONFConfiguration & Deployment Management11
4.3WSTG-IDNTIdentity Management Testing5
4.4WSTG-ATHNAuthentication Testing10
4.5WSTG-ATHZAuthorization Testing4
4.6WSTG-SESSSession Management Testing9
4.7WSTG-INPVInput Validation Testing19
4.8WSTG-ERRHError Handling2
4.9WSTG-CRYPWeak Cryptography Testing4
4.10WSTG-BUSLBusiness Logic Testing9
4.11WSTG-CLNTClient-Side Testing13
Total~96 tests standard + extensions

2.1 Chapitre 4.1 — Information Gathering (WSTG-INFO)

Reconnaissance passive et active du périmètre. Tests clés :

  • WSTG-INFO-01 : Conduct Search Engine Discovery (Google dorks, Shodan, Censys).
  • WSTG-INFO-02 : Fingerprint Web Server (Nginx, Apache, IIS).
  • WSTG-INFO-08 : Fingerprint Web Application Framework (Drupal, Django, Rails).
  • WSTG-INFO-10 : Map Application Architecture (reverse proxies, CDN, microservices).

2.2 Chapitre 4.2 — Configuration & Deployment Management (WSTG-CONF)

Revue des configurations réseau, serveur et applicatives :

  • WSTG-CONF-02 : Test Application Platform Configuration (debug mode, default creds).
  • WSTG-CONF-06 : Test HTTP Methods (OPTIONS, TRACE, PUT, DELETE).
  • WSTG-CONF-07 : HTTP Strict Transport Security (HSTS).
  • WSTG-CONF-10 : Test for Subdomain Takeover.
  • WSTG-CONF-11 : Test Cloud Storage (buckets S3 publics, Azure Blob exposés).

2.3 Chapitre 4.4 — Authentication Testing (WSTG-ATHN)

Cœur de la sécurité applicative. Tests à haute valeur :

  • WSTG-ATHN-02 : Test Default Credentials.
  • WSTG-ATHN-03 : Test for Weak Lock Out Mechanism (brute force protection).
  • WSTG-ATHN-04 : Bypassing Authentication Schema.
  • WSTG-ATHN-09 : Test Weak Password Change / Reset Functionality.
  • WSTG-ATHN-10 : Test Weaker Authentication in Alternative Channel (mobile app vs web).

2.4 Chapitre 4.7 — Input Validation Testing (WSTG-INPV) — le plus dense

19 tests qui couvrent l'essentiel des vulnérabilités OWASP Top 10 classiques :

WSTG-INPV — Input Validation Testing
─────────────────────────────────────
WSTG-INPV-01  Reflected XSS
WSTG-INPV-02  Stored XSS
WSTG-INPV-03  HTTP Verb Tampering
WSTG-INPV-04  HTTP Parameter Pollution
WSTG-INPV-05  SQL Injection
WSTG-INPV-06  LDAP Injection
WSTG-INPV-07  XML External Entity (XXE)
WSTG-INPV-08  SSI Injection
WSTG-INPV-09  XPath Injection
WSTG-INPV-10  IMAP/SMTP Injection
WSTG-INPV-11  Code Injection
WSTG-INPV-12  Command Injection
WSTG-INPV-13  Format String Injection
WSTG-INPV-14  Buffer Overflow
WSTG-INPV-15  Incubated Vulnerability
WSTG-INPV-16  HTTP Splitting / Smuggling
WSTG-INPV-17  HTTP Incoming Requests
WSTG-INPV-18  Host Header Injection
WSTG-INPV-19  Server-Side Template Injection (SSTI)

2.5 Chapitre 4.10 — Business Logic Testing (WSTG-BUSL)

Section souvent sous-couverte en pentest court :

  • WSTG-BUSL-01 : Test Business Logic Data Validation (limites métier).
  • WSTG-BUSL-02 : Test Ability to Forge Requests.
  • WSTG-BUSL-03 : Test Integrity Checks.
  • WSTG-BUSL-07 : Test Defenses Against Application Misuse.
  • WSTG-BUSL-09 : Test Upload of Malicious Files.

Les tests WSTG-BUSL exigent une connaissance métier de l'application — ils ne s'automatisent pas et représentent souvent les findings à plus fort impact en entreprise.

3. Identifiants WSTG-IDs : usage en rapport pentest

Le principal apport opérationnel du WSTG est son système d'identifiants uniques qui permet la traçabilité en rapport. Exemple de ligne de rapport professionnel :

### Finding 03 — Kerberoasting exploitable sur compte de service
 
**Sévérité** : Critique (CVSS 3.1 : 8.8 — AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N)
**Référence WSTG** : WSTG-ATHN-04 (Bypassing Authentication Schema)
**Référence OWASP Top 10** : A07:2021 — Identification and Authentication Failures
**Référence ASVS** : V2.1.1, V2.1.2 (Password Policy)
**Référence MITRE ATT&CK** : T1558.003 (Kerberoasting)
 
**Description** : ...
**Preuve** : ...
**Recommandation** : ...

Ce mapping multi-référentiels est la signature d'un rapport pentest sénior. Un rapport qui ne cite que le Top 10 sans WSTG ni ASVS signale un niveau junior ou une méthodologie approximative. Voir Le rapport de pentest pour la structure complète.

4. Relation avec les autres référentiels OWASP

4.1 WSTG ↔ Top 10

Chaque catégorie du Top 10 est couverte par plusieurs tests WSTG. Mapping partiel :

Top 10 2021Tests WSTG principaux
A01 Broken Access ControlWSTG-ATHZ-01 à 04, WSTG-SESS-02
A02 Cryptographic FailuresWSTG-CRYP-01 à 04, WSTG-CONF-01
A03 InjectionWSTG-INPV-05, INPV-06, INPV-07, INPV-11, INPV-12, INPV-19
A04 Insecure DesignWSTG-BUSL-01 à 09
A05 Security MisconfigurationWSTG-CONF-01 à 11
A06 Vulnerable & Outdated ComponentsWSTG-INFO-02, WSTG-INFO-08
A07 Identification / Auth FailuresWSTG-ATHN-01 à 10, WSTG-SESS-01
A08 Software & Data Integrity FailuresWSTG-BUSL-03, WSTG-CONF-02
A09 Logging & Monitoring FailuresWSTG-ERRH-01, WSTG-ERRH-02
A10 SSRFWSTG-INPV-19 (partiellement), tests ad-hoc

4.2 WSTG ↔ ASVS

L'Application Security Verification Standard (ASVS v4.0.3, 2021) est le pendant défensif du WSTG. Il définit ~280 exigences de sécurité en 14 chapitres (V1 à V14), à 3 niveaux :

  • L1 : sécurité de base, applicable à toute application.
  • L2 : applications traitant des données sensibles (standard recommandé).
  • L3 : high-assurance (santé, défense, paiement critique).

Chaque exigence ASVS a typiquement 1 à 3 tests WSTG associés. En rapport de pentest, citer les deux en parallèle permet au client de lier directement la vulnérabilité constatée à une exigence de conception manquante dans son backlog dev.

4.3 WSTG ↔ MASTG (mobile)

Pour les applications mobiles, OWASP fournit le Mobile Application Security Testing Guide (MASTG) et le Mobile Application Security Verification Standard (MASVS). Structure parallèle au duo WSTG/ASVS, avec tests spécifiques iOS et Android (Keychain / Keystore, secure IPC, platform interaction, reverse resilience). Un pentest d'application mobile utilise typiquement MASTG pour le client et WSTG pour les API backend.

5. Limites du WSTG en 2025

Le WSTG v4.2 présente des gaps documentés face aux architectures web modernes. Les pentesters confirmés complètent avec d'autres sources.

5.1 Sujets peu ou mal couverts en v4.2

Sujet moderneCouverture WSTG v4.2Alternative / complément
GraphQL offensiveAbsenteOWASP API Top 10 2023, HackTricks GraphQL
OAuth2 / OIDC flow abusesPartielle (WSTG-ATHN)RFC 6749 + 6819 + 9700, Portswigger research
JWT algorithm confusionPartiellejwt.io, Portswigger WebSecAcademy
SSRF vers metadata cloudAbsenteHackTricks Cloud, Pacu (AWS), ROADtools (Azure)
HTTP/2 request smugglingAbsentePortswigger research (James Kettle 2021-2024)
Prototype pollution server-sideAbsenteHackerOne disclosures 2022-2024
SPA + API JSON flowsPartielleAPI Top 10 2023, APIsec University
WebSockets attack surfacePartielleWSTG-INPV-17 partiel
gRPC / ProtobufAbsenteTravaux indépendants (DEFCON, BHEU talks)

5.2 Quand WSTG n'est pas suffisant

  • Pentest d'API REST sans interface web : utiliser OWASP API Security Top 10 2023 comme référentiel principal, WSTG en complément pour les tests d'authentification et configuration serveur.
  • Pentest d'architecture microservices / service mesh : compléter avec CIS Kubernetes Benchmark et tests PTES spécifiques.
  • Applications SPA lourdes (React, Vue, Angular + JSON API) : WSTG-CLNT partiel, mais gaps sur state management, JWT handling, CSP spécifique SPA.
  • Applications cloud-native AWS/Azure/GCP : gaps majeurs, utiliser grilles cloud dédiées (Scout Suite, Prowler, ROADtools).

6. Usage réel par les pentesters en mission

Les trois cas d'usage observés sur le terrain :

6.1 Cadrage mission (pre-engagement)

Le WSTG sert de checklist de couverture : l'auditeur liste les catégories applicables, marque celles hors scope, et documente le périmètre retenu dans le contrat. Exemple de cadrage :

Cadrage WSTG — mission webapp e-commerce 10 jours
───────────────────────────────────────────────────
WSTG-INFO    couvert (reconnaissance complète)
WSTG-CONF    couvert (DAST + review config headers)
WSTG-IDNT    couvert
WSTG-ATHN    couvert (incluant MFA)
WSTG-ATHZ    couvert (focus rôle admin vs rôle utilisateur)
WSTG-SESS    couvert
WSTG-INPV    couvert sur 80% des endpoints échantillonnés
WSTG-ERRH    couvert
WSTG-CRYP    couvert (TLS + tokens)
WSTG-BUSL    couvert (3 scénarios métier définis avec client)
WSTG-CLNT    couvert partiellement (SPA React : limitations connues)
 
Hors scope : API mobile séparée (autre mission), infrastructure cloud AWS (audit séparé Scout Suite prévu Q2).

6.2 Structure rapport

Beaucoup d'ESN cyber (Synacktiv, Almond, Wavestone Cyber, Orange Cyberdefense, Advens) alignent la structure de leurs rapports internes sur les 11 catégories WSTG, avec pour chaque catégorie :

  1. Tests exécutés avec identifiants WSTG complets (ex: WSTG-INPV-05, WSTG-ATHN-04).
  2. Résultats agrégés (nombre de findings par sévérité).
  3. Détail des vulnérabilités découvertes.
  4. Recommandations priorisées.

6.3 Revue qualité entre pairs

Les identifiants WSTG facilitent la revue qualité d'un rapport junior par un senior : le reviewer vérifie rapidement quelles catégories ont été traitées et identifie les gaps. Cette pratique est systématique dans les ESN PASSI (audit qualité obligatoire avant livraison client).

7. Ressources pour apprendre le WSTG

7.1 Documentation officielle

  • Site officiel : owasp.org/www-project-web-security-testing-guide.
  • GitHub : github.com/OWASP/wstg (suivre la branche master pour v5 draft).
  • PDF téléchargeable v4.2 : 456 pages, licence CC-BY-SA 4.0.

7.2 Parcours pratique

Apprendre WSTG en 3-4 mois (profil pentester palier 2)
──────────────────────────────────────────────────────
Semaines 1-2   Lecture des 11 chapitres v4.2 en diagonal
               Prise de notes par identifiant WSTG-ID
 
Semaines 3-6   Application chapitre par chapitre sur OWASP Juice Shop
               + DVWA + WebGoat (labs volontairement vulnérables)
               Objectif : 5-10 findings loggés par chapitre
 
Semaines 7-10  Exécution sur PortSwigger Web Security Academy
               Labs marqués dans l'ordre WSTG-INPV, ATHN, SESS, ATHZ
               Objectif : 100 % labs Apprentice + 60 % Practitioner
 
Semaines 11-14 Premier rapport de pentest rédigé sur cible réelle
               (bug bounty, HackTheBox, challenge personnel)
               Structure rapport alignée sur les 11 chapitres

7.3 Certifications qui couvrent WSTG

  • OffSec OSWA (Web Assessor) — recouvrement partiel, focus pratique.
  • OffSec OSWE — va au-delà du WSTG (white-box), recouvre tests avancés.
  • GIAC GWAPT — reconnue aux US, recouvrement fort avec WSTG.
  • eWPT (eLearnSecurity Web Application Penetration Tester) — alignement WSTG explicite.

Points clés à retenir

  • Définition : WSTG = Web Security Testing Guide OWASP, référentiel offensif de 400+ pages, 100+ tests identifiés au format WSTG-CATEGORIE-NN.
  • Version stable 2025 : v4.2 (juin 2023), v5 en draft pour fin 2025 / début 2026 (ajout API, GraphQL, cloud, SPA modernes).
  • Structure : 11 catégories — INFO, CONF, IDNT, ATHN, ATHZ, SESS, INPV (la plus dense, 19 tests), ERRH, CRYP, BUSL (haute valeur, souvent négligée), CLNT.
  • Différence avec Top 10 / ASVS : Top 10 = sensibilisation, ASVS = exigences défensives, WSTG = tests offensifs. Rapport pentest professionnel mappe les trois.
  • Limites 2025 : gaps sur GraphQL, OAuth2 flows, HTTP/2 smuggling, SSRF cloud metadata, prototype pollution. Compléter avec API Top 10, HackTricks, Portswigger research.
  • Usage opérationnel : cadrage mission, traçabilité findings, structure rapport, revue qualité. Les identifiants WSTG-IDs sont la colonne vertébrale des rapports pentest matures.

Pour la méthodologie complète d'exécution d'une mission web utilisant WSTG, voir Méthodologie pentest web. Pour la progression technique du pentester web, Roadmap pentest web. Pour le pendant défensif, Roadmap AppSec Engineer.

Questions fréquentes

  • Quelle différence entre OWASP Top 10 et OWASP Testing Guide ?
    L'OWASP Top 10 est une liste des 10 classes de vulnérabilités web les plus critiques, publiée tous les 3-4 ans (dernière version stable 2021, 2025 en release candidate fin 2024). C'est un document de sensibilisation, pas un référentiel de tests. L'OWASP Testing Guide (WSTG) est un manuel opérationnel de 400+ pages qui décrit plus de 100 tests de sécurité concrets à exécuter lors d'un pentest web, organisés en 11 catégories. Le Top 10 dit « quoi craindre en priorité », le WSTG dit « comment le tester ». Les deux sont complémentaires : un rapport de pentest web professionnel mappe chaque finding à la fois au Top 10 (pour la communication direction) et au WSTG (pour la preuve méthodologique).
  • Quelle est la version actuelle du OWASP Testing Guide en 2025 ?
    La version stable est WSTG v4.2, publiée en juin 2023 et maintenue depuis. La v5 est en développement actif sur le repository GitHub officiel (owasp-project-web-security-testing-guide) avec des merges réguliers sur la branche master, prévue en stable pour fin 2025 ou début 2026. Les évolutions v5 incluent : ajout de catégories API security cohérentes avec l'API Top 10 2023, modernisation sur les applications SPA et GraphQL, intégration de tests d'architectures cloud-native. Les pentesters en mission utilisent la v4.2 comme référence contractuelle et complètent avec le draft v5 pour les sujets API et cloud non couverts.
  • Le WSTG est-il suffisant pour couvrir un pentest web moderne 2025 ?
    Non, plus aujourd'hui seul. Le WSTG v4.2 couvre correctement 70-80 % d'une mission web classique mais présente des gaps documentés sur : API security (GraphQL, OAuth2 flows abuse, JWT algorithm confusion), architectures cloud-natives (SSRF vers metadata AWS/Azure, abus IAM), vulnérabilités 2022-2024 (HTTP/2 smuggling, prototype pollution server-side, JKU/x5u injection). Un pentest web professionnel 2025 combine WSTG comme socle + OWASP API Security Top 10 2023 + checklist cloud PTES/Pacu + veille active sur PortSwigger Research et SpecterOps. Un rapport qui ne cite que WSTG comme référence est un signal de pentest sous-scopé.
  • Comment utiliser WSTG en pratique pendant une mission de pentest web ?
    Trois usages principaux : 1) Checklist de couverture au cadrage — listing des tests applicables à la cible (filtrer par type d'application : webapp classique, SPA, API), engagement client sur le périmètre couvert. 2) Référentiel de traçabilité pendant l'exécution — chaque finding est tagué par l'identifiant WSTG (ex: WSTG-AUTHN-03 pour « Testing for Weak Lock Out Mechanism »), facilitant la revue et les audits qualité. 3) Base d'écriture du rapport — structure du rapport alignée sur les chapitres WSTG pour les sections couverture + mapping CVSS 3.1 par finding. Les templates Obsidian / Joplin / CherryTree des ESN cyber intègrent la structure WSTG pour cadrer les auditeurs juniors.
  • WSTG et ASVS sont-ils complémentaires ou redondants ?
    Complémentaires, avec rôles distincts. WSTG est un référentiel offensif (comment tester), ASVS (Application Security Verification Standard) est un référentiel défensif de 200+ exigences de sécurité à implémenter par l'équipe dev, organisé en 3 niveaux (L1 basique, L2 standard, L3 high-assurance). Concrètement : ASVS sert aux architectes et dev pour construire une application sécurisée, WSTG sert aux pentesters pour vérifier que c'est effectivement le cas. Un programme de sécurité applicative mature utilise ASVS comme cible de conception et WSTG comme cadre de validation externe. Les deux ont des correspondances croisées : chaque item WSTG pointe vers l'item ASVS correspondant, et inversement.
  • Existe-t-il un équivalent WSTG pour le mobile et les API ?
    Oui, deux référentiels OWASP complémentaires. OWASP Mobile Application Security Testing Guide (MASTG) + Mobile Application Security Verification Standard (MASVS) couvrent le pentest iOS et Android, avec tests spécifiques à chaque plateforme (reverse mobile, inter-process communication, secure storage Keychain / Keystore). OWASP API Security Top 10 2023 couvre les vulnérabilités spécifiques API (BOLA, BFLA, mass assignment, excessive data exposure), mais sans guide de test exhaustif équivalent au WSTG — les pentesters complètent avec des checklists maison ou tierces (APIsec University, HackTricks API section). Un pentest mobile 2025 utilise typiquement MASTG + WSTG pour la partie backend.

Écrit par

Naim Aouaichia

Expert cybersécurité et fondateur de Zeroday Cyber Academy

Expert cybersécurité avec un master spécialisé et un parcours hybride : développement, DevOps, DevSecOps, SOC, GRC. Fondateur de Hash24Security et Zeroday Cyber Academy. Formateur et créateur de contenu technique sur la cybersécurité appliquée, la sécurité des LLM et le DevSecOps.