TL;DR
L'OWASP Top 10:2025 Release Candidate a été publiée le 6 novembre 2025 lors de l'OWASP Global AppSec DC. C'est la référence en vigueur ; elle remplace l'édition 2021. Le Contrôle d'Accès Défaillant reste à #1, la Mauvaise Configuration de Sécurité monte de #5 à #2, les Défaillances de la Chaîne d'Approvisionnement Logicielle deviennent A03 (expansion de l'A06:2021 "Composants Vulnérables et Obsolètes"), le SSRF est absorbé dans A01, et la Mauvaise Gestion des Conditions Exceptionnelles est un tout nouvel A10. Huit catégories proviennent des données collectées sur ~2,8 millions d'applications ; deux ont été promues par sondage communautaire.
Le classement 2025 reflète quatre années de télémétrie et un net déplacement de la préoccupation de l'industrie : moins de bugs ponctuels au niveau du code, davantage de défaillances systémiques dans la façon dont les logiciels sont construits, distribués et exploités.
L'OWASP a analysé environ 175 000 correspondances CVE→CWE réparties sur 589 CWE distincts (contre ~400 en 2021) couvrant approximativement 2,8 millions d'applications testées. Huit catégories sont issues directement de ce jeu de données ; deux — Défaillances de la Chaîne d'Approvisionnement Logicielle et Mauvaise Gestion des Conditions Exceptionnelles — ont été promues par sondage, où 50 % des répondants ont classé la chaîne d'approvisionnement comme préoccupation n°1.
Deux conséquences pratiques :
La version 2025 est actuellement une Release Candidate. L'OWASP finalise traditionnellement dans les 3 à 6 mois suivant l'annonce RC. Les catégories et les classements ont peu de chances de changer ; les descriptions et les correspondances CWE pourront être affinées.
Changement de position : inchangé à #1. 40 CWE rattachés.
Les défaillances de contrôle d'accès restent la classe de vulnérabilité la plus répandue dans les applications testées. Plus gros changement structurel en 2025 : le SSRF (CWE-918) est désormais intégré à A01 au lieu d'être une catégorie distincte. Le raisonnement de l'OWASP : le SSRF est fondamentalement une défaillance d'autorisation côté serveur — l'application effectue une requête que l'utilisateur ne devrait pas pouvoir lui imposer.
Manifestations courantes :
Correctifs. Refus par défaut. Centralisez l'autorisation dans une couche d'application unique. Validez la propriété des enregistrements côté serveur à chaque requête. Désactivez IMDSv1, imposez IMDSv2 avec hop limit 1 sur AWS.
Approfondir : /learn/idor, /learn/idor-vertical, /learn/ssrf-cloud-metadata.
Changement de position : monte de #5 (2021) à #2. 16 CWE rattachés.
Plus grosse progression du classement. L'OWASP indique que 100 % des applications testées présentaient au moins une forme de mauvaise configuration, avec un taux d'incidence moyen de 3,00 % par CWE. La promotion reflète la complexité croissante des stacks modernes — Kubernetes, service mesh, IaC, multi-cloud — et le coût élevé d'une erreur sur la moindre couche.
Manifestations courantes :
Correctifs. Mettez en place un processus de durcissement reproductible avec détection automatisée des dérives (CIS Benchmarks, Open Policy Agent, conftest). Centralisez la gestion des erreurs. Utilisez des identifiants fédérés à courte durée plutôt que des secrets longue durée intégrés dans les images ou fichiers de config.
Changement de position : nouvelle catégorie à #3. Expansion de l'A06:2021 "Composants Vulnérables et Obsolètes". 5 CWE rattachés.
Le changement phare de 2025. L'ancienne catégorie était étroite — "votre bibliothèque est-elle obsolète ?" La nouvelle couvre tout le cycle de vie : dépendances, dépendances transitives, pipelines de build, secrets CI/CD, registres de paquets, infrastructure de signature de code et canaux de distribution.
Classée #1 dans le sondage communautaire par exactement 50 % des répondants. Malgré le taux d'occurrence le plus faible du jeu de données de test, l'OWASP note qu'A03 a l'impact moyen pondéré le plus élevé de toutes les catégories 2025 — quand les attaques sur la chaîne d'approvisionnement réussissent, elles tendent à être catastrophiques.
Incidents marquants qui ont façonné le cadrage 2025 :
Manifestations courantes :
Correctifs. Maintenez un SBOM à jour (CycloneDX ou SPDX). Pinnez les dépendances par hash, pas par plage de versions. Vérifiez les signatures (Sigstore/Cosign pour les conteneurs, npm provenance pour JS, PEP 740 pour Python). Durcissez la CI/CD avec une fédération OIDC à moindre privilège. Déployez en canary. Traitez vos postes développeurs et serveurs de build comme des cibles de production.
Changement de position : descend de deux rangs, de #2 (2021) à #4. 32 CWE rattachés.
Renommée de "Exposition des Données Sensibles" (2017) à "Défaillances Cryptographiques" (2021), la catégorie conserve son nom 2021. La mise à jour 2025 resserre le périmètre sur les faiblesses cryptographiques spécifiques plutôt que sur le concept plus large de "fuite de données".
Manifestations courantes :
Correctifs. TLS 1.2+ uniquement avec suites à secret persistant (forward secrecy). Argon2id, scrypt, ou PBKDF2-HMAC-SHA-512 pour le hachage de mots de passe. Chiffrement authentifié (AES-GCM, ChaCha20-Poly1305) pour la crypto symétrique. Clés dans des HSM ou KMS, jamais dans le code source. Lancez dès maintenant la planification de votre migration post-quantique — le NIST recommande de transitionner les systèmes critiques d'ici 2030.
Approfondir : /learn/jwt-vulnerabilities, /learn/jwt-weak-secret.
Changement de position : descend de deux rangs, de #3 (2021) à #5. 38 CWE rattachés.
L'injection poursuit son déclin pluri-décennal grâce aux frameworks plus sûrs par défaut (requêtes paramétrées, ORM, échappement automatique React/Vue). Elle reste très impactante quand elle survient — l'OWASP rapporte plus de 14 000 CVE d'injection SQL et plus de 30 000 CVE de XSS dans le jeu de données analysé.
Sous-classes encore observées en production :
Correctifs. Requêtes paramétrées partout ; si vous ne pouvez pas paramétrer (par exemple ORDER BY dynamique), utilisez une allowlist stricte. Validation d'entrée côté serveur. Combinez SAST + DAST + IAST — chacun attrape une forme différente d'injection. Une fois l'une de ces classes confirmée, scorez-la avec notre calculateur CVSS v4.0 gratuit pour fixer la bonne sévérité de remédiation.
Approfondir : /learn/sqli, /learn/xss, /learn/command-injection, /learn/ssti.
Changement de position : descend de deux rangs, de #4 (2021) à #6. Pas de baisse d'importance — ce sont A02 et A03 qui ont poussé vers le haut.
La conception non sécurisée couvre les défaillances architecturales et de processus qui ne peuvent pas être corrigées au niveau du code. Le cadrage 2025 met l'accent sur trois piliers : gestion des exigences et des ressources, méthodologie de conception sécurisée, et cycle de vie de développement sécurisé documenté.
Manifestations courantes :
Correctifs. Modélisez les menaces sur chaque nouvelle fonctionnalité touchant l'auth, l'argent ou les PII. Maintenez une bibliothèque de patterns de conception sécurisée réutilisés par l'équipe. Écrivez des tests unitaires et d'intégration ciblant les cas d'abus, pas seulement les chemins nominaux. Impliquez un professionnel AppSec dans les revues de conception, pas seulement les revues de code.
Changement de position : inchangé à #7. Renommé de "Défaillances d'Identification et d'Authentification" (2021) en "Défaillances d'Authentification" — les 36 CWE rattachés concernent majoritairement l'authentification, pas l'identification.
Manifestations courantes :
Correctifs. MFA sur chaque compte privilégié, idéalement résistant au phishing (FIDO2/WebAuthn). Politiques de mot de passe alignées NIST SP 800-63b — pas de rotation forcée, vérification contre listes de fuites, pas de règles de composition. Gestionnaires de session côté serveur avec ID à haute entropie. Limitez les échecs de login ; verrouillez ou step-up au-delà d'un seuil.
Approfondir : /learn/jwt-alg-none, /learn/session-overview, /learn/csrf.
Changement de position : inchangé à #8. Périmètre resserré — la partie chaîne d'approvisionnement est sortie vers A03:2025. A08 se concentre désormais sur la vérification d'intégrité au niveau code et données : validation de signature, désérialisation et intégrité du pipeline CI/CD au sein de votre propre environnement.
Manifestations courantes :
Correctifs. Vérifiez les signatures numériques sur chaque artefact exécutable ingéré. Restreignez la désérialisation aux types autorisés — ne désérialisez jamais une entrée non fiable avec pickle.loads, unserialize, ObjectInputStream ou Marshal.load. Hashes de subresource integrity sur chaque script externe. Revue de code obligatoire sur chaque changement touchant la configuration CI/CD.
Approfondir : /learn/mass-assignment.
Changement de position : inchangé à #9. Renommé depuis "Défaillances de Journalisation et de Surveillance" — l'OWASP a voulu insister sur le fait que journaliser sans alerter, c'est juste de la consommation disque coûteuse.
Manifestations courantes :
Correctifs. Définissez en amont le catalogue d'événements pertinents pour la sécurité (succès/échec login, changement de privilèges, enrôlement MFA, réinitialisation de mot de passe, action admin). Centralisez les logs dans un stockage append-only. Alertez sur les patterns, pas seulement les seuils — cinq échecs de login, c'est du bruit ; cinq échecs suivis d'un succès depuis une nouvelle géographie, c'est un signal. Faites des exercices tabletop contre vos playbooks d'alerte.
Changement de position : nouvelle catégorie à #10. 24 CWE rattachés. Promue par sondage communautaire.
L'autre nouvelle entrée majeure de 2025. A10 est conceptuellement proche d'A06 (Conception Non Sécurisée) mais se concentre spécifiquement sur ce qui se passe quand quelque chose va mal au runtime : un paramètre manquant, un timeout amont, une entrée malformée, un deadlock de base de données. Failing open, fuite de détails d'erreur, ressources laissées verrouillées, ou perte d'atomicité transactionnelle — tout cela tombe ici.
Manifestations courantes :
Correctifs. Attrapez les exceptions à l'endroit où elles surviennent, pas dans un catch-all de haut niveau. Failing closed : tout contrôle d'auth/authz/intégrité qui lève doit basculer par défaut sur le refus. Centralisez les réponses d'erreur — renvoyez des messages génériques aux clients, journalisez les détails côté serveur. Utilisez des patterns transactionnels avec rollback explicite. Ajoutez des rate limits, quotas de ressources et timeouts à chaque frontière externe. Surveillez les pics de taux d'erreur ; ils précèdent ou accompagnent souvent les attaques.
| Catégorie 2025 | Équivalent 2021 | Changement |
|---|---|---|
| A01:2025 Contrôle d'Accès Défaillant | A01:2021 + A10:2021 (SSRF intégré) | Absorbe le SSRF |
| A02:2025 Mauvaise Configuration de Sécurité | A05:2021 | Monte de 3 rangs |
| A03:2025 Défaillances de la Chaîne d'Approvisionnement Logicielle | A06:2021 (Composants Vulnérables) | Élargie, renommée |
| A04:2025 Défaillances Cryptographiques | A02:2021 | Descend de 2 |
| A05:2025 Injection | A03:2021 | Descend de 2 |
| A06:2025 Conception Non Sécurisée | A04:2021 | Descend de 2 |
| A07:2025 Défaillances d'Authentification | A07:2021 | Renommée |
| A08:2025 Défaillances d'Intégrité des Logiciels ou des Données | A08:2021 | Périmètre resserré (chaîne d'approv. → A03) |
| A09:2025 Défaillances de Journalisation et d'Alerte de Sécurité | A09:2021 | Renommée |
| A10:2025 Mauvaise Gestion des Conditions Exceptionnelles | — | Nouvelle |
| — | A10:2021 SSRF | Fusionné dans A01:2025 |
Pour la plupart des équipes sécurité et engineering, le travail pratique consiste à :
BreachVex est en pré-lancement, donc nous resterons brefs et honnêtes. Notre pipeline cible les catégories que l'automatisation peut vérifier de manière fiable : A01 (contrôle d'accès), A05 (injection), A02 (mauvaise configuration) et une partie d'A04 (problèmes de protocole cryptographique en bordure de réseau). Pour A03 chaîne d'approvisionnement et A09 alerte, les tests externes automatisés ont une portée limitée — ils nécessitent un accès au pipeline et des données d'observabilité dont nous ne disposons pas en boîte noire.
Attendez-vous à un reporting aligné 2025 dans nos sorties SARIF et PDF au lancement. Les correspondances de catégorie dans nos métadonnées de finding référenceront à la fois 2021 et 2025 pendant la transition.