Optez pour une voie plus rapide et plus intelligente vers l'automatisation des tests C/C++ pilotée par l'IA. Découvrez comment >>
La conformité à l'OWASP est essentielle pour maintenir un logiciel sécurisé dans le paysage numérique d'aujourd'hui. Mise à jour pour la dernière fois en 2021, la liste des 10 meilleurs OWASP comprend désormais des catégories plus organisées couvrant de nombreux types de vulnérabilités de sécurité pour toutes sortes de codes et d'applications Web.
Le groupe à but non lucratif Open Web Application Security Project® (OWASP) cherche à améliorer la sécurité des logiciels. Les équipes de développement du monde entier et de tous les secteurs se tournent vers la Fondation OWASP pour obtenir des outils, des ressources et des formations afin de protéger leurs applications Web contre les cyberattaques. Les projets avec des initiatives communautaires sont ouverts à tous.
Intégrez la sécurité à votre stratégie DevOps
Périodiquement, l'OWASP publie une liste des problèmes les plus urgents pour la communauté du développement dans son ensemble. Ces problèmes affectent la sécurité globale des projets, et la liste met en lumière les plus grandes menaces.
Le Top 10 de l'OWASP introduit de nouveaux problèmes tout en recadrant les entrées précédentes dans le cadre de leurs nouvelles catégories. Sur la base de diverses sources, notamment les commentaires des développeurs, les conseils des fournisseurs de sécurité, les primes de bogues et les contributions de la communauté, l'OWASP a créé sa dernière liste des 10 meilleurs, le numéro 1 étant le problème le plus fréquent et le plus menaçant. Classé en fonction de la gravité et de la fréquence, chaque élément représente plusieurs énumérations de faiblesses communes (CWE).
Le Top 10 de l'OWASP aide les équipes à se concentrer sur les problèmes les plus critiques et les plus probables avant de passer à d'autres problèmes.
Toutes ces vulnérabilités potentielles constituent des menaces importantes pour toute équipe de développement, mais gardez à l'esprit qu'il ne s'agit pas d'une liste exhaustive de tout ce qui peut mal tourner pendant le développement. Bien que le Top 10 ne soit pas une stratégie complète ou la seule méthode pour identifier les vulnérabilités, c'est un excellent moyen de commencer.
La meilleure façon d'utiliser le Top 10 est d'éduquer vos développeurs afin qu'ils construisent du code sécurisé. De plus, utilisez-le pour les tests de validation afin de vérifier que les développeurs ont vraiment écrit du code sécurisé et détectez quand ils ne l'ont pas fait.
Avec le développement croissant des API, l'OWASP a également un projet dédié axé uniquement sur la sécurité des API et son top dix concernant les vulnérabilités. Le Top 10 de la sécurité de l'API OWASP a été introduit en 2019 et mis à jour en 2023.
Les failles de contrôle d'accès sont passées de la 5e à la 1re place du classement. Cela signifie qu'il s'agit du principal problème rencontré par les équipes de développement en matière de sécurité. Selon les conclusions de l'OWASP, 94 % des applications testées présentent cette vulnérabilité. Les principales vulnérabilités critiques (CWE) associées à cette faille sont les suivantes :
Cette faille de sécurité permet l'accès aux ressources privées pour les utilisateurs non autorisés. Les attaquants peuvent contourner tous les protocoles de sécurité en place pour accéder aux systèmes et informations sensibles.
Les failles de contrôle d'accès sont devenues la vulnérabilité la plus fréquente du Top 10 de l'OWASP 2021. Ce risque de sécurité est dû à des méthodes d'autorisation et d'authentification faibles. Les failles de contrôle d'accès se décomposent en 34 vulnérabilités critiques (CWE). Elles représentent la plus grande part des problèmes recensés par l'OWASP dans cette étude.
Les failles cryptographiques occupent désormais la deuxième place, contre la troisième auparavant. Ce problème était auparavant appelé « exposition de données sensibles ». La nouvelle appellation met l’accent sur les causes profondes, et non plus seulement sur les symptômes.
Les failles cryptographiques entraînent souvent des violations de données. Parmi les exemples, citons l'absence d'en-têtes HTTP, les algorithmes faibles, la transmission de données en clair ou une mauvaise gestion des clés.
Elles peuvent entraîner des fuites de données sensibles et d'autres compromissions. Un exemple notable : la violation de données de la Croix-Rouge en janvier 2022. Pour les prévenir, il est nécessaire de concevoir correctement les systèmes, d'utiliser un code sécurisé, de procéder à des tests approfondis et d'intégrer la sécurité aux processus.
Auparavant classée n°7, l'injection occupe désormais la 3e place. Cela inclut des problèmes tels que le cross-site scripting.
Ces attaques se produisent lorsque des attaquants envoient des données spécialement conçues pour forcer une application à exécuter des commandes non prévues. Par exemple, une injection SQL peut extraire ou modifier des bases de données entières.
Il s'agissait du problème numéro un de l'OWASP depuis de nombreuses années. Lors des tests, 1 274,000 failles d'injection ont été découvertes. Elles sont largement évitables grâce à une validation adéquate des entrées et à une gestion plus sûre des requêtes.
Exemples de défauts d'injection :
Une nouvelle catégorie met en lumière les risques liés aux défauts de conception. Elle privilégie la conception sécurisée et le DevSecOps, c'est-à-dire la sécurité intégrée tout au long du cycle de vie du développement.
Cela se produit lorsque les équipes ne parviennent pas à anticiper les menaces. Contrairement à une implémentation non sécurisée, cela reflète des risques plus larges liés à la conception et à l'architecture.
Une conception non sécurisée rend les applications vulnérables même lorsque les implémentations semblent sécurisées.
Exemples :
Classé n°5, ce problème concerne les logiciels et systèmes mal configurés.
Une erreur de configuration de sécurité se produit lorsque des paramètres de sécurité importants sont manquants, incorrects ou laissés à leurs valeurs par défaut. Exemple : ne pas réinitialiser le mot de passe par défaut.
C'est un problème répandu : logiciels obsolètes, sécurité insuffisante et fonctionnalités inutiles. Un exemple notable : la panne des NOTAM de la FAA en 2023, liée à une erreur de configuration.
Auparavant intitulée « Utilisation de composants présentant des vulnérabilités connues », cette question est désormais classée n°6.
Les risques proviennent de l'utilisation de logiciels, de bibliothèques ou de dépendances tiers non pris en charge, obsolètes ou mal entretenus.
Les attaquants exploitent fréquemment ces failles. Il est donc essentiel de maintenir les dépendances à jour et corrigées.
Exemple : la vulnérabilité zero-day de Log4j en 2021, qui a touché Cloudflare, Steam, iCloud et bien d’autres.
Anciennement intitulée « Authentification défaillante », cette catégorie est désormais n°7. Elle était auparavant n°2.
Ces défaillances surviennent lorsque les identifiants de connexion, les identifiants de session ou les autorisations ne sont pas gérés de manière sécurisée, par exemple en stockant les mots de passe en clair.
Elles figurent parmi les vulnérabilités les plus exploitées. Des techniques comme le « credential stuffing » utilisent des mots de passe volés pour s'introduire dans les systèmes. L'authentification multifacteurs et des politiques de mots de passe plus robustes permettent d'atténuer les risques.
Cette catégorie, nouvelle en 2021, inclut les risques liés à la désérialisation non sécurisée et à l'intégrité des pipelines CI/CD ou des mécanismes de mise à jour.
Parmi les exemples, citons les mises à jour logicielles non sécurisées, les pipelines CI/CD non protégés et les mises à jour automatiques non validées.
Elles permettent aux attaquants d'insérer du code malveillant. Parmi les problèmes majeurs figurent la désérialisation non sécurisée, une méthode courante pour les attaques par déni de service et l'exécution de code à distance.
Auparavant appelée « Journalisation et surveillance insuffisantes », elle est maintenant classée n°9.
Ces défaillances surviennent lorsque les systèmes ne détectent pas correctement les menaces ou n'y répondent pas de manière adéquate. Par exemple, des tentatives de connexion répétées peuvent être autorisées en raison d'une journalisation incorrecte.
Sans surveillance adéquate, les incidents de sécurité passent inaperçus, entraînant des violations de données. Des réglementations telles que HIPAA et PCI-DSS exigent une journalisation appropriée. Une surveillance insuffisante peut également aggraver d'autres vulnérabilités, comme un contrôle d'accès défaillant.
Classé n°10, mais considéré comme très grave.
Cela se produit lorsque des applications récupèrent des ressources distantes sans valider les URL fournies par l'utilisateur, permettant ainsi aux attaquants de tromper les serveurs et de les amener à adopter des comportements inattendus.
Ces attaques sont simples à exécuter et peuvent avoir des conséquences majeures, notamment le contournement des VPN et des pare-feu.
Exemple : des attaquants hébergeant des pages malveillantes pour contrôler des applications vulnérables.
OWASP note que l'essor du SSRF est lié à :
La prise en charge complète de Parasoft pour OWASP aide les utilisateurs à atteindre DevSecOps en appliquant des pratiques de développement axées sur la sécurité dès le début du développement du projet. Avec la solution Parasoft, vous bénéficiez :
Configurations de politique/test prêtes à l'emploi entièrement configurables.
Rapports natifs des normes basés sur les numéros d'identification OWASP ou CWE.
Conseils sur la façon de corriger les vulnérabilités avec une documentation et un contenu de formation pris en charge.
Un système de retour d'information unique en temps réel qui offre aux utilisateurs une vue continue de la conformité aux normes OWASP et une assistance à la remédiation pour mieux identifier et éliminer les vecteurs de menace.
Exécution depuis l'EDI et via le processus CI / CD pour aider à localiser rapidement la vulnérabilité plus tôt dans le SDLC.
Des rapports interactifs et des tableaux de bord personnalisables, incluant l'exploitabilité, la prévalence sur le terrain, la détectabilité et l'impact des défaillances grâce à une automatisation améliorée par l'IA, aident les utilisateurs à prioriser et à minimiser le tri manuel.