La Fondation OWASP a publié la huitième édition de son célèbre classement des « 10 principaux risques de sécurité » pour 2025, qui présente les changements significatifs dans le paysage de la sécurité des applications. Basée sur l'analyse de plus de 175 000 enregistrements de vulnérabilités ou expositions communes (CVE) et sur les retours de professionnels de la sécurité du monde entier, cette mise à jour aborde les vecteurs d'attaque modernes. Découvrez les changements apportés, leur importance et comment protéger vos systèmes.
💡 Rejoignez GitLab Transcend le 10 février pour découvrir comment l'IA agentique transforme la livraison de logiciels. Apprenez des témoignages de nos clients et explorez comment accélérer votre propre parcours de modernisation. Inscrivez-vous dès maintenant.
Quelles sont les nouveautés de 2025 ?
Depuis la dernière publication du classement en 2021, les changements apportés en 2025 représentent un tournant majeur dans la sécurité des applications. Deux catégories entièrement nouvelles ont été ajoutées au classement, et deux autres ont été regroupées, ce qui met en évidence les risques émergents que les tests traditionnels ne détectent souvent pas.
Ces changements sont visibles dans le graphique ci-dessous :

Deux nouvelles catégories
- A03 : Défaillances de la chaîne d'approvisionnement logicielle. Cette catégorie s'inscrit dans la continuité de la catégorie de 2021 « Composants vulnérables et obsolètes » et englobe l'ensemble de la chaîne d'approvisionnement logicielle, y compris les dépendances, les systèmes de build et l'infrastructure de distribution. Malgré le plus faible nombre d'occurrences dans les données de test, cette catégorie présente les scores moyens d'exploitation et d'impact les plus élevés issus des CVE.
- A10 : Mauvaise gestion des conditions exceptionnelles. Cette catégorie se concentre sur la gestion inappropriée des erreurs, les erreurs logiques et les scénarios d'échec ouvert. Cette catégorie traite de la manière dont les systèmes réagissent aux conditions anormales.
Changements majeurs dans le classement
- Les erreurs de configuration de sécurité ont bondi de la 5e place (2021) à la 2e place (2025) et affectent désormais 3 % des applications testées.
- La falsification de requêtes côté serveur (SSRF) a été consolidée dans la catégorie A01 : Contrôle d'accès insuffisant.
- Les défaillances cryptographiques sont passées de la 2e à la 4e place.
- L'injection est passée de la 3e à la 5e place.
- La conception non sécurisée est passée de la 4e à la 6e place.
Pourquoi ces changements ?
La méthodologie OWASP combine une analyse basée sur les données avec le point de vue de la communauté. L'édition 2025 a analysé 589 énumérations de faiblesses communes (CWE), ce qui représente une augmentation substantielle par rapport aux quelque 400 CWE de 2021. Cette progression reflète la complexité croissante des systèmes logiciels modernes et la nécessité de détecter les menaces émergentes.
Le volet relatif à l'enquête menée auprès de la communauté répond à une limitation fondamentale : les données de test concernent essentiellement le passé. Au moment où les chercheurs en sécurité développent des méthodologies de test et les intègrent dans des outils automatisés, des années peuvent s'être écoulées. Les deux catégories déterminées par la communauté garantissent que les risques émergents identifiés par les professionnels de première ligne sont inclus, même s'ils ne sont pas encore répandus dans les données de test automatisées.
L'augmentation des erreurs de configuration de sécurité met en évidence une tendance du secteur : la sécurité basée sur la configuration, tandis que les défaillances de la chaîne d'approvisionnement logicielle reconnaissent l'essor des attaques sophistiquées ciblant les paquets compromis.
Détecter et gérer les vulnérabilités avec GitLab Ultimate
GitLab Ultimate fournit des scans de sécurité complets pour détecter les risques dans les catégories du classement OWASP Top 10 2025. Par exemple, la plateforme de bout en bout analyse le code source, les dépendances et les définitions d'infrastructure de votre projet. Elle utilise également l'analyseur Advanced de test statique de sécurité des applications (SAST) pour détecter les failles d'injection, les défaillances cryptographiques et les modèles de conception non sécurisés dans le code source. L'analyse de l'Infrastructure as Code (IaC) identifie les erreurs de configuration de sécurité dans vos définitions de déploiement. La détection de secrets empêche la fuite d'identifiants, et l'analyse des dépendances signale les bibliothèques qui présentent des vulnérabilités connues dans votre chaîne d'approvisionnement logicielle, ce qui répond directement à la nouvelle catégorie A03 relative aux défaillances de la chaîne d'approvisionnement logicielle.
De plus :
- Les tests dynamiques de sécurité des applications (DAST) analysent votre application déployée afin de rechercher des contrôles d'accès défaillants, des échecs d'authentification et des vulnérabilités d'injection en simulant des vecteurs d'attaque.
- Les tests de sécurité des API analysent vos points de terminaison API à la recherche de faiblesses de validation des entrées et de contournements d'authentification.
- Le test de l'API web par injection de données aléatoires teste comment votre application gère les conditions exceptionnelles en générant des intrants inattendus, ce qui s'inscrit directement dans la nouvelle catégorie A10 relative à la mauvaise gestion des conditions exceptionnelles.
Les scans de sécurité s'intègrent de manière transparente dans votre pipeline CI/CD et s'exécutent lorsque le code fait l'objet d'un push depuis une branche de fonctionnalité afin que les équipes de développement puissent corriger les vulnérabilités avant qu'elles n'atteignent la production. Les résultats de sécurité sont consolidés dans le rapport de vulnérabilités, où les équipes de sécurité peuvent classer, analyser et suivre les corrections. GitLab vous permet également de tirer parti des agents d'IA tels que l'agent GitLab Duo Security Analyst, disponible dans GitLab Duo Agent Platform, pour déterminer rapidement les vulnérabilités les plus critiques et savoir comment les traiter.
Les politiques d'approbation des merge requests et les politiques d'exécution des pipelines vous permettent d'appliquer des contrôles supplémentaires afin de garantir que l'analyse de sécurité s'exécute de manière cohérente dans toute votre organisation. Les équipes du Succès client et des Services professionnels de GitLab veillent à ce que vous tiriez profit d'un investissement dans GitLab en temps opportun.
Livrez des logiciels sécurisés plus rapidement grâce aux tests de sécurité dans la même plateforme que les équipes de développement utilisent déjà. Pour en savoir plus, consultez notre page dédiée aux solutions de test de sécurité des applications.
OWASP Top 10 2025 : analyse complète
A01 : Contrôle d'accès insuffisant
Définition
Échecs dans l'application des politiques qui empêchent les utilisateurs d'agir en dehors de leurs autorisations prévues et entraînent des accès non autorisés.
Impact sur votre système
- Divulgation d'informations non autorisée
- Destruction complète de données ou modification de données
- Escalade de privilèges (des utilisateurs obtiennent des droits d'administrateur)
- Consultation ou modification des comptes d'autres utilisateurs
- Accès API depuis des sources non autorisées ou non fiables
CWE notables
A02 : Erreur de configuration de sécurité
Définition
Systèmes, applications ou services cloud configurés de manière incorrecte du point de vue de la sécurité.
Impact sur votre système
- Exposition d'informations sensibles via des messages d'erreur
- Accès non autorisé via des comptes par défaut
- Services ou fonctionnalités inutiles activés
- Correctifs de sécurité obsolètes
- Le serveur n'envoie pas d'en-têtes ou de directives de sécurité
CWE notables
A03 : Défaillances de la chaîne d'approvisionnement logicielle
Définition
Pannes ou compromissions dans la construction, la distribution ou la mise à jour de logiciels par le biais de vulnérabilités ou de modifications malveillantes dans les dépendances, les outils ou les processus de build.
Impact sur votre système
- Paquets compromis introduisant des portes dérobées
- Code malveillant injecté pendant les processus de build
- Dépendances vulnérables propagées dans votre application
- Utilisation de composants issus de sources non fiables en production
- Absence de suivi des modifications au sein de votre chaîne d'approvisionnement
CWE notables
A04 : Défaillances cryptographiques
Définition
Échecs liés à l'absence de cryptographie, à une cryptographie insuffisamment forte, à la fuite de clés cryptographiques et aux erreurs connexes.
Impact sur votre système
- Exposition de données sensibles (mots de passe, cartes de crédit, dossiers médicaux)
- Attaques de type homme du milieu (man-in-the-middle)
- Violation de données en raison d'un chiffrement faible
- Compromission de clés entraînant une exposition à l'échelle du système
- Échecs de conformité réglementaire (RGPD, PCI DSS)
CWE notables
A05 : Injection
Définition
Failles système qui permettent aux attaquants d'insérer du code ou des commandes malveillants (SQL, NoSQL, commandes OS, LDAP, etc.) dans les programmes.
Impact sur votre système
- Perte ou corruption de données par injection SQL
- Compromission complète de la base de données
- Prise de contrôle du serveur par injection de commandes
- Attaques de cross-site scripting (XSS)
- Divulgation d'informations
- Déni de service
CWE notables
A06 : Conception non sécurisée
Définition
Faiblesses dans la conception qui représentent différents échecs, exprimées sous forme de contrôles manquants ou inefficaces (défauts architecturaux plutôt que bogues d'implémentation).
Impact sur votre système
- Flux de réinitialisation de mot de passe faibles
- Étapes d'autorisation manquantes
- Logique métier défectueuse permettant des contournements
- Modélisation des menaces inadéquate conduisant à des vulnérabilités
- Modèles de conception qui échouent dans des scénarios d'attaque
CWE notables
A07 : Échecs d'authentification
Définition
Vulnérabilités qui permettent aux attaquants de tromper les systèmes pour qu'ils reconnaissent des utilisateurs invalides ou incorrects comme légitimes.
Impact sur votre système
- Prise de contrôle de compte et bourrage d'identifiants (credential stuffing)
- Détournement de session
- Attaques par force brute (brute force attacks) réussies
- Exploitation de mécanismes de récupération de mot de passe faibles
- Contournement de l'authentification multifacteur
CWE notables
A08 : Défaillances d'intégrité des logiciels ou des données
Définition
Un code et une infrastructure qui ne parviennent pas à se protéger contre le code ou les données invalides ou non fiables traités comme fiables et valides.
Impact sur votre système
- Mises à jour non signées permettant l'injection de code malveillant
- Désérialisation non sécurisée conduisant à l'exécution de code à distance
- Compromission du pipeline CI/CD
- Mécanismes de mise à jour automatique exploités
- Artefacts logiciels altérés
CWE notables
A09 : Échecs de journalisation et d'alerte de sécurité
Définition
Une journalisation et surveillance insuffisantes avec des alertes inadéquates, ce qui complique la réponse rapide.
Impact sur votre système
- Non-détection des attaques pendant de longues périodes
- Enquête sur les violations impossible
- Violations de conformité dues à l'absence de pistes d'audit
- Réponse aux incidents retardée
- Incapacité à déterminer l'étendue de la compromission
CWE notables
A10 : Mauvaise gestion des conditions exceptionnelles
Définition
Programmes qui ne parviennent pas à prévenir et détecter des situations inhabituelles et imprévisibles, ni à y réagir, ce qui conduit à des plantages, des comportements inattendus ou des vulnérabilités.
Impact sur votre système
- Divulgation d'informations via des messages d'erreur détaillés
- Déni de service dû à des exceptions non gérées
- Corruption d'état due à une gestion inappropriée des erreurs
- Conditions de concurrence exploitées
- Systèmes échouant en mode ouvert au lieu de fermé
- Plantages d'application exposant des données sensibles
CWE notables
Bonnes pratiques de prévention et de correction
GitLab fournit des outils qui vous permettent non seulement de trouver et de corriger rapidement les vulnérabilités du classement OWASP Top 10, mais également de les empêcher d'atteindre votre système de production. Suivez les bonnes pratiques ci-dessous pour améliorer et maintenir votre posture de sécurité :
Scans de sécurité automatisés pour tous les dépôts
- Effectuez une analyse SAST pour détecter tôt dans le cycle de vie du développement les modèles de conception non sécurisés tels que le stockage de mots de passe en texte clair, la gestion inadéquate des erreurs et le chiffrement manquant lors de la revue de code.
- Effectuez une détection de secrets pour identifier les identifiants dans les fichiers de configuration, les variables d'environnement et le code, en empêchant le stockage de mots de passe en texte clair et en garantissant que les secrets sont correctement gérés via les variables CI/CD de GitLab avec masquage et chiffrement.
- Effectuez une analyse DAST pour détecter les vulnérabilités de contrôle d'accès défaillant.
- Effectuez une analyse des dépendances pour analyser les dépendances du projet dans les bases de données de vulnérabilités, identifier les CVE connus dans les dépendances directes et transitives sur plusieurs gestionnaires de paquets (npm, pip, Maven, etc.).
- Effectuez une analyse de conteneurs pour analyser les images Docker à la recherche de couches de base et de paquets vulnérables et garantir la sécurité de la chaîne d'approvisionnement des conteneurs avant le déploiement.
- Effectuez une analyse de l'IaC pour vérifier vos fichiers de définition d'infrastructure à la recherche de vulnérabilités connues.
- Tirez parti des outils de sécurité relatifs aux API pour sécuriser et protéger les API Web contre les accès non autorisés, les utilisations abusives et les attaques.
- Effectuez un test de l'API web par injection de données aléatoires pour découvrir les bogues et les vulnérabilités potentielles que d'autres processus d'assurance qualité pourraient manquer.

Affichez les vulnérabilités détectées dans une merge request avec les diffs de la branche de fonctionnalité à la branche principale.Votre posture de sécurité

Utilisez l'inventaire de sécurité pour afficher les scanners de sécurité activés et les vulnérabilités.Configuration de la prévention et maintenance de la documentation
- Configurez des politiques de sécurité pour bloquer les merges ou les déploiements lorsque des vulnérabilités de gravité élevée sont détectées dans les dépendances, afin d'appliquer automatiquement des normes de sécurité.
- Utilisez les frameworks de conformité pour appliquer les normes de sécurité organisationnelles via des vérifications automatiques de politiques qui contrôlent que les exigences de chiffrement, les pratiques de gestion des identifiants et les implémentations de workflows sécurisés sont respectées.
- Utilisez le wiki GitLab et la documentation du dépôt pour maintenir les principes de conception de sécurité, les modèles approuvés et la documentation relative aux décisions architecturales qui guident les développeurs vers des implémentations selon le principe Secure by Design.
- Implémentez des règles d'approbation de merge request qui nécessitent une revue par un architecte de sécurité pour les fonctionnalités qui impliquent l'authentification, l'autorisation, le chiffrement ou le traitement de données sensibles afin de garantir une validation de sécurité au niveau de la conception.
- Créez des tests pour vérifier la validation des entrées et les approches de liste d'autorisation pour les chemins de fichiers.
- Utilisez les tickets et epics GitLab pour documenter les exigences de sécurité et les modèles de menaces pendant la phase de conception afin de créer une documentation suivie des décisions de sécurité et de garantir que les considérations de sécurité sont traitées avant le début de l'implémentation.

Affichez et définissez des politiques de sécurité au niveau de l'instance, du groupe ou du projet.Utilisation de l'IA
- Utilisez les suggestions de code pour obtenir des conseils proactifs pendant le développement. Les suggestions comprennent des modèles de conception sécurisés tels que le hachage approprié des mots de passe (bcrypt, Argon2), des mécanismes de stockage chiffrés et une gestion appropriée des erreurs qui ne divulgue pas d'informations sensibles.
- Utilisez l'agent GitLab Duo Security Analyst pour examiner les vulnérabilités de conception non sécurisées détectées en contexte. L'agent explique les implications architecturales, évalue les risques en fonction du modèle de menace de votre application et fournit des stratégies de correction qui traitent les défauts de conception d'origine plutôt que les symptômes.
- Révisez votre code à l'aide de l'IA pour garantir des normes de revue de code cohérentes dans votre projet.

Tirez parti de l'agent GitLab Duo Security Analyst pour classer et évaluer rapidement les vulnérabilités de sécurité.Points clés à retenir pour les équipes de développement
- La sécurité de la chaîne d'approvisionnement est essentielle : avec l'ajout de la catégorie A03 et les scores d'impact élevés, la sécurisation de votre chaîne d'approvisionnement logicielle est obligatoire. Implémentez le suivi SBOM, l'analyse des dépendances et la vérification de l'intégrité dans l'ensemble de votre pipeline.
- La configuration est plus importante que jamais : désormais à la 2e place du classement, la sécurité basée sur la configuration est devenue un vecteur d'attaque principal. Automatisez la vérification de la configuration et implémentez l'IaC avec la sécurité intégrée.
- Les menaces traditionnelles persistent : bien que l'injection et les défaillances cryptographiques aient chuté dans le classement, elles restent critiques. Ne les reléguez donc pas au second plan.
- La gestion des erreurs est une question de sécurité : la nouvelle catégorie A10 souligne que la gestion des échecs de votre application est une préoccupation de sécurité. Implémentez une gestion sécurisée des erreurs dès le départ.
- Les tests doivent évoluer : la couverture CWE élargie (589 contre 400 en 2021) signifie que les stratégies de test doivent être complètes. Combinez les SAST, les DAST, l'analyse du code source et des tests de pénétration manuels pour garantir une couverture efficace.
Explorez les solutions de sécurité et de gouvernance GitLab et notre documentation sur l'analyse de sécurité pour commencer à renforcer votre posture de sécurité dès aujourd'hui.