Aller au contenu principal
own2pwn
OWASP Top 10 2025 : les 10 risques de sécurité web à connaître

OWASP Top 10 2025 : les 10 risques de sécurité web à connaître

Le classement OWASP a changé en 2025 : Broken Access Control en tête, deux nouvelles catégories, le SSRF absorbé. Les 10 risques de sécurité web, avec un exemple et la parade pour chacun.

own2pwn10 min de lectureMis à jour le

Couvrir l'OWASP Top 10 sans y passer vos nuits

SecAI traque ces risques en continu ; le pentest valide l'exploitable.

Tester mon application

Si la cybersécurité web avait un best-of, ce serait l'OWASP Top 10. C'est la liste de référence : les dix catégories de failles les plus critiques des applications web, compilées par la communauté OWASP à partir de montagnes de données réelles. Développeurs, pentesters, RSSI, auditeurs ISO 27001 : tout le monde y revient. C'est un peu le "permis de conduire" de l'AppSec.

Bonne nouvelle : une nouvelle édition est sortie. Publiée par l'OWASP en 2025, l'OWASP Top 10 2025 remplace la version 2021 qui régnait depuis quatre ans. Et ça bouge : deux nouvelles catégories, des renommages, et le SSRF qui se fait carrément absorber. Si vous étiez resté sur le classement 2021, c'est le moment de mettre à jour vos slides.

Mème Drake : non au OWASP Top 10 2021, oui au OWASP Top 10 2025
Le réflexe à adopter en 2026 : on cite la bonne version.

Une liste de risques, pas une checklist magique

L'OWASP Top 10 est un document de sensibilisation, pas une norme exhaustive. Cocher les dix cases ne rend pas une appli "sécurisée" : ce sont les risques les plus fréquents et impactants, le point de départ, pas la ligne d'arrivée.

Ce qui change entre 2021 et 2025

Les dix risques du Top 10, ce sont exactement les portes que cherche un attaquant.

La méthodologie 2025 s'appuie sur du lourd : environ 220 000 CVE analysées, 589 CWE cartographiées, plus de 2,8 millions d'applications testées, le tout croisé avec une enquête auprès des praticiens. Résultat, trois mouvements à retenir :

  • Deux nouvelles catégories : Software Supply Chain Failures (A03, l'ancienne catégorie "composants vulnérables" élargie à toute la chaîne d'approvisionnement) et Mishandling of Exceptional Conditions (A10, totalement inédite).
  • SSRF a disparu de la liste en tant que catégorie autonome : il a été fusionné dans le Broken Access Control (A01). Le numéro 1 ne fait que grossir.
  • Security Misconfiguration grimpe de la 5e à la 2e place. À l'ère du tout-cloud et du tout-config-as-code, mal régler ses services coûte cher.
2021 face à 2025
RangOWASP Top 10 2021OWASP Top 10 2025
A01Broken Access ControlBroken Access Control (le SSRF y est désormais rangé)
A02Cryptographic FailuresSecurity Misconfiguration (en forte hausse)
A03InjectionSoftware Supply Chain (nouvelle entrée)
A04Insecure DesignCryptographic Failures
A05Security MisconfigurationInjection
A06Vulnerable ComponentsInsecure Design
A07Auth FailuresAuthentication Failures
A08Software/Data IntegritySoftware/Data Integrity
A09Logging & MonitoringLogging & Alerting Failures
A10SSRFMishandling Exceptions (nouvelle entrée)
Le classement a été rebrassé. Broken Access Control garde la couronne, la misconfig et la supply chain montent en flèche.

Maintenant, attaquons la liste 2025 dans l'ordre. Pour chaque risque : c'est quoi, un exemple concret, et comment s'en prémunir.

A01:2025, Broken Access Control

Le boss final, encore et toujours numéro 1. Le contrôle d'accès, c'est la règle qui empêche un utilisateur d'agir au-delà de ses droits. Quand il est cassé, n'importe qui peut lire, modifier ou supprimer des données qui ne lui appartiennent pas, ou déclencher des actions réservées aux admins. Depuis 2025, le SSRF (forcer le serveur à émettre des requêtes vers des cibles internes) entre aussi dans cette famille. Le CSRF, qui fait exécuter une action à un utilisateur légitime à son insu, y est rangé depuis l'édition 2021 : c'est le jeton CSRF qui l'empêche, quand il est vérifié.

Exemple concret : l'IDOR (Insecure Direct Object Reference). Vous consultez votre facture à l'URL /api/invoices/1042. Vous changez 1042 en 1043... et vous tombez sur la facture du client d'à côté. Pas d'exploit sophistiqué, juste un compteur incrémenté.

Mème Surprised Pikachu : on n'a pas vérifié les droits d'accès, surprise
"On a oublié de vérifier que l'utilisateur a le droit d'accéder à la ressource." Le résultat n'a surpris personne, sauf l'équipe.

La parade : "deny by default" (tout est interdit sauf autorisation explicite), vérification des droits côté serveur pour chaque ressource (jamais en se fiant à l'UI), et identifiants d'objets non devinables. Pour le SSRF : valider/allowlister les URL sortantes et segmenter le réseau.

A02:2025, Security Misconfiguration

La nouvelle vedette. Promue de la 5e à la 2e place, la mauvaise configuration regroupe tout ce qui est mal réglé : services avec leurs paramètres par défaut, comptes admin/admin jamais changés, buckets cloud en accès public, en-têtes de sécurité absents, messages d'erreur trop bavards, ports de debug ouverts en prod.

Exemple concret : un bucket S3 laissé en lecture publique "le temps d'un test", qui finit indexé par un moteur de recherche avec, dedans, les exports clients en CSV. Classique, et toujours autant de dégâts.

La parade : durcissement (hardening) systématique, suppression des fonctionnalités et comptes inutiles, configuration en infrastructure-as-code versionnée et auditée, et une revue de config qui suit l'appli de la recette à la prod.

A03:2025, Software Supply Chain Failures

La grande nouveauté. Anciennement "composants vulnérables et obsolètes", cette catégorie a été élargie à toute la chaîne d'approvisionnement logicielle : dépendances open source, registres de paquets, plugins CI/CD, images de conteneurs, scripts tiers. Votre code peut être parfait ; si une de vos 1 200 dépendances est compromise, c'est vous qui tombez.

Exemple concret : un mainteneur de paquet npm se fait pirater, pousse une version vérolée, et des milliers de builds l'installent automatiquement (cf. les attaques de type typosquatting et compromission de mainteneurs qui défraient régulièrement la chronique). Côté applicatif, un plugin tiers vulnérable suffit : on montre comment un plugin WordPress mène à une exécution de code à distance sur WordPress.

Vous ne lisez pas le code de vos dépendances

Personne ne le fait. C'est précisément pour ça que cette catégorie existe : la confiance implicite dans l'écosystème est un risque à part entière.

La parade : inventaire des dépendances (SBOM), analyse de composition logicielle (SCA), épinglage des versions et vérification des signatures, et un pipeline CI/CD verrouillé (le maillon faible, c'est souvent là).

A04:2025, Cryptographic Failures

Quand la crypto échoue à protéger les données. On parle de données sensibles transmises en clair, d'algorithmes obsolètes (MD5, SHA-1, DES), de clés codées en dur, de mots de passe stockés sans salage, ou d'une "crypto maison" bricolée. Le problème n'est pas la crypto en soi, c'est la mauvaise crypto.

Exemple concret : une base de mots de passe stockés en MD5 non salé. Une fuite, un coup de rainbow table, et 80 % des comptes sont craqués en quelques minutes.

Mème Roll Safe : on ne peut pas casser ta crypto si tu utilises des algos modernes
Roll Safe a raison : pas d'AES-256 et de bcrypt = pas de problème. Bon, presque.

La parade : TLS partout, algorithmes modernes (AES, ChaCha20, et bcrypt/argon2 pour les mots de passe), gestion des clés via un coffre-fort (KMS/Vault), et surtout : ne jamais rouler sa propre crypto.

A05:2025, Injection

La doyenne du classement. Rétrogradée à la 5e place mais toujours redoutable, l'injection survient quand des données non fiables sont interprétées comme du code/une commande : SQL, NoSQL, commandes OS, LDAP... et le XSS (injection de scripts côté client) entre dans cette famille.

Exemple concret : une requête SQL construite par concaténation. L'attaquant saisit ' OR '1'='1 dans un champ login :

sql
-- Code vulnérable : la saisie est concaténée dans la requête
query = "SELECT * FROM users WHERE name = '" + input + "'"

-- Saisie de l'attaquant :  ' OR '1'='1

-- Requête réellement exécutée, la condition est toujours vraie
-- et la clause de filtrage ne filtre plus rien :
SELECT * FROM users WHERE name = '' OR '1'='1'

La parade : requêtes paramétrées (prepared statements) ou ORM, validation et échappement des entrées, principe du moindre privilège sur le compte de base de données. La règle d'or : ne jamais mélanger code et données. Le cas de l'injection SQL détaille les familles d'attaques et pourquoi les requêtes préparées sont la seule défense qui tient.

A06:2025, Insecure Design

Le bug qui n'est pas un bug. Ici, la faille n'est pas dans l'implémentation mais dans la conception : une logique métier qui ne prévoit pas l'abus, l'absence de modélisation des menaces, un workflow qui fait confiance à l'utilisateur là où il ne faut pas. Vous pouvez coder parfaitement une mauvaise idée.

Exemple concret : un "mot de passe oublié" basé sur des questions secrètes ("nom de votre animal ?") dont les réponses traînent sur les réseaux sociaux. Le code est nickel, le design est cassé.

La parade : threat modeling dès la conception, patterns sécurisés réutilisables, tests de la logique métier, et un cycle de développement sécurisé (SSDLC) qui intègre la sécurité en amont, pas en rustine finale.

A07:2025, Authentication Failures

Renommée (exit "Identification and..."). Tout ce qui touche à la vérification de l'identité : mots de passe faibles autorisés, absence de MFA, attaques par force brute non limitées, gestion de session bancale (tokens prévisibles, sessions qui n'expirent jamais), credential stuffing.

Exemple concret : un formulaire de connexion sans rate limiting ni MFA. L'attaquant rejoue 50 000 couples email/mot de passe issus d'une fuite précédente ; un certain pourcentage passe, parce que les gens réutilisent leurs mots de passe.

La parade : MFA généralisée, politiques de mots de passe alignées sur les recommandations modernes (longueur > complexité arbitraire), limitation des tentatives, sessions robustes avec expiration et rotation. Idéalement, déléguer l'auth à un service centralisé et durci plutôt que de la réinventer.

A08:2025, Software or Data Integrity Failures

Quand on fait confiance sans vérifier l'intégrité. Mises à jour non signées, désérialisation de données non fiables, pipelines CI/CD qui déploient sans contrôle d'intégrité. Cousine de la supply chain, cette catégorie cible le moment où du code ou des données sont acceptés sans preuve qu'ils n'ont pas été altérés.

Exemple concret : une appli qui télécharge ses mises à jour automatiques depuis un serveur en HTTP sans vérifier de signature. Un attaquant en position d'intercepteur livre sa propre "mise à jour"... et exécute son code sur tous les clients.

La parade : signatures numériques sur les artefacts et mises à jour, vérification des intégrités, désérialisation prudente (éviter les formats dangereux, valider le contenu), et durcissement du pipeline de build.

A09:2025, Security Logging and Alerting Failures

Renommée "Alerting" plutôt que "Monitoring". La nuance compte : il ne suffit pas de journaliser, il faut alerter et réagir. Sans journalisation suffisante ni détection, une intrusion peut durer des mois. Le délai moyen de détection d'une compromission se compte encore en semaines.

Exemple concret : 10 000 tentatives de connexion échouées en une nuit, et... aucune alerte. Personne ne regarde, rien ne remonte. L'attaquant a tout le temps du monde.

Mème This is fine : aucune alerte de sécurité, tout va bien dans la maison qui brûle
"Aucune alerte ne s'est déclenchée." Évidemment : il n'y avait pas d'alerting.

La parade : journaliser les évènements de sécurité (auth, accès, erreurs), centraliser (SIEM), définir des alertes actionnables, et tester son plan de réponse à incident. Des logs que personne ne lit ne servent à rien.

A10:2025, Mishandling of Exceptional Conditions

La grande inédite de 2025. Cette catégorie cible la mauvaise gestion des cas exceptionnels et des erreurs : exceptions non gérées, états d'échec laissés dans un mode dégradé non sécurisé ("fail open" au lieu de "fail closed"), logique d'erreur qui révèle trop d'informations ou contourne les contrôles. Bref, ce qui se passe quand ça ne se passe pas comme prévu.

Exemple concret : un middleware d'autorisation qui, en cas d'exception (base injoignable, token mal formé), laisse passer la requête "par sécurité pour ne pas casser le service". Résultat : il suffit de provoquer l'erreur pour court-circuiter le contrôle d'accès.

La parade : "fail closed" par défaut (en cas de doute, on refuse), gestion explicite et homogène des exceptions, messages d'erreur génériques côté utilisateur (détails dans les logs uniquement), et tests des chemins d'échec, pas seulement du "happy path".

Le tableau récap des 10 risques 2025

recap-2025
CodeCatégorieEn une phrase
A01Broken Access ControlAgir au-delà de ses droits (IDOR, SSRF).
A02Security MisconfigurationRéglages par défaut, services mal durcis.
A03Software Supply Chain FailuresDépendances et pipeline compromis.
A04Cryptographic FailuresDonnées mal chiffrées ou en clair.
A05InjectionDonnées interprétées comme du code (SQL, XSS).
A06Insecure DesignFaille de conception, pas de code.
A07Authentication FailuresIdentité mal vérifiée, sessions faibles.
A08Software or Data Integrity FailuresConfiance sans vérification d'intégrité.
A09Logging and Alerting FailuresOn ne voit pas, on n'alerte pas.
A10Mishandling of Exceptional ConditionsLes cas d'erreur ouvrent des brèches.
Les dix catégories de l'OWASP Top 10 2025, résumées en une phrase chacune.

Comment on teste tout ça (et pourquoi un scan ne suffit pas)

Connaître la liste, c'est bien. Savoir si votre application y est vulnérable, c'est autre chose. Un scanner automatisé attrapera une partie des injections et des composants obsolètes, mais sera aveugle sur le Broken Access Control, l'Insecure Design ou la mauvaise gestion des exceptions : ça demande de comprendre la logique métier et de raisonner comme un attaquant. C'est précisément le métier du pentest. Et le Top 10 n'est pas une méthode de test, juste une liste de risques : pour savoir quoi vérifier et comment, l'OWASP publie deux autres référentiels, ASVS et WSTG, que tout pentest sérieux suit d'assez près.

Chez own2pwn, les missions de pentest web blackbox et pentest web whitebox sont cadrées pour couvrir l'intégralité de l'OWASP Top 10, avec exploitation manuelle des failles pour distinguer le vrai du faux positif. Pour comprendre où s'arrête un scanner et où commence le travail humain, notre article pentest vs scan de vulnérabilité fait le tri.

Côté outillage automatisé, le combo SAST / DAST / IAST boosté à l'IA permet de détecter en continu une bonne part de ces risques dès le développement, surtout une fois branché au pipeline, comme on le montre dans intégrer SAST et DAST dans la CI/CD. C'est l'approche de SecAI, notre plateforme AppSec AI-native : l'automatisation balaie le gros du volume, le pentester se concentre sur ce que la machine ne sait pas voir.

Mème Morpheus : et si je te disais que tu es déjà vulnérable à la moitié de l'OWASP Top 10
La plupart des applis en prod cumulent plusieurs catégories sans le savoir. C'est statistique.

À retenir

  • La version de référence est désormais l'OWASP Top 10 2025, qui remplace celle de 2021.
  • Broken Access Control reste numéro 1 et absorbe le SSRF ; Security Misconfiguration bondit à la 2e place.
  • Deux nouvelles catégories : Software Supply Chain Failures (A03) et Mishandling of Exceptional Conditions (A10).
  • C'est une liste de sensibilisation : la traiter ne garantit pas la sécurité, c'est le socle minimal.
  • Les catégories "logique" (Access Control, Insecure Design, Exceptions) échappent largement aux scanners : le pentest manuel reste indispensable.

Pour la source officielle et le détail de chaque catégorie, direction le site de l'OWASP Top 10 2025 et son introduction méthodologique. Et si vous voulez savoir lesquels de ces dix risques concernent réellement votre application, parlons-en.

Questions fréquentes

Qu'est-ce que l'OWASP Top 10 ?

L'OWASP Top 10 est la liste de référence des dix catégories de risques de sécurité les plus critiques pour les applications web, compilée par la communauté OWASP à partir de données réelles. C'est un document de sensibilisation, pas une norme exhaustive : le traiter est un point de départ, pas une garantie de sécurité.

Quelles sont les nouveautés de l'OWASP Top 10 2025 ?

Deux catégories font leur entrée : Software Supply Chain Failures (A03) et Mishandling of Exceptional Conditions (A10). Broken Access Control reste numéro un et absorbe le SSRF, Security Misconfiguration grimpe à la deuxième place, et l'injection recule à la cinquième. L'édition 2025 remplace celle de 2021.

Quel est le risque numéro un de l'OWASP Top 10 2025 ?

Broken Access Control (A01) reste en tête. Il regroupe tout ce qui permet à un utilisateur d'agir au-delà de ses droits : accès à des données qui ne lui appartiennent pas, actions réservées aux administrateurs, ou IDOR. Depuis 2025, le SSRF y est rattaché. La parade repose sur un refus par défaut et une vérification des droits côté serveur.

Le SSRF a-t-il disparu de l'OWASP Top 10 2025 ?

Le SSRF n'est plus une catégorie autonome : il a été fusionné dans Broken Access Control (A01) en 2025. Il reste un risque de premier plan, simplement rangé dans la famille du contrôle d'accès, puisqu'il consiste à forcer le serveur à émettre des requêtes vers des cibles internes qu'il ne devrait pas atteindre.

Un scanner suffit-il pour couvrir l'OWASP Top 10 ?

Non. Un scanner attrape une partie des injections et des composants obsolètes, mais reste aveugle au Broken Access Control, à l'Insecure Design et à la mauvaise gestion des exceptions, qui exigent de comprendre la logique métier. Ces catégories demandent un pentest manuel, où un humain raisonne comme un attaquant.

L'OWASP Top 10 est-il une norme de conformité ?

Non, c'est un document de sensibilisation, pas un référentiel de certification. Il sert de socle minimal et il est souvent cité dans les démarches ISO 27001, PCI DSS ou les audits de sécurité, mais le couvrir ne délivre aucune attestation. Il indique les risques les plus fréquents, pas une liste de conformité à cocher.

Veille sécurité

La suite, une fois par mois

Ce qui bouge vraiment sur la surface d'attaque externe, NIS2 et la sécurité applicative, écrit par le pentester qui signe ces articles. Un envoi par mois, désinscription en un clic.

Votre adresse ne sert qu'à cet envoi. Voir la politique de confidentialité.

Articles liés