Qu'est-ce que l'OWASP ? Introduction aux 10 principales vulnérabilités et risques de l'OWASP

L'OWASP est une fondation à but non lucratif qui œuvre pour améliorer la sécurité des logiciels.

OWASP (Open Worldwide Application Security Project) est une communauté ouverte dédiée à permettre aux organisations de concevoir, développer, acquérir, exploiter et maintenir des logiciels pour des applications sécurisées et fiables. Ses programmes comprennent des projets de logiciels open source menés par la communauté et des conférences locales et mondiales, impliquant des centaines de chapitres dans le monde entier avec des dizaines de milliers de membres.

Pourquoi l'OWASP est-il important ?

L'OWASP joue un rôle crucial dans la sensibilisation aux risques de sécurité des applications Web et fournit des ressources, des outils, de la documentation et des meilleures pratiques précieuses pour relever les défis croissants de la sécurité des applications Web. L'OWASP aide les développeurs, les professionnels de la sécurité et les organisations à comprendre les menaces potentielles et à adopter les meilleures pratiques de sécurité.  

L'OWASP maintient une liste des dix risques de sécurité des applications Web les plus critiques, ainsi que des processus, procédures et contrôles efficaces pour les atténuer. L'OWASP fournit également une liste des 10 principaux risques de sécurité des API afin d'éduquer les personnes impliquées dans le développement et la maintenance des API et de sensibiliser davantage aux faiblesses courantes de sécurité des API.

La communauté OWASP encourage les individus et les organisations à contribuer à ses projets et ressources. Cette approche collaborative et axée sur l’enquête permet à la communauté d’exploiter les connaissances et l’expertise collectives de ses membres, ce qui donne lieu à des ressources complètes et à jour.

Il existe des risques de sécurité communs aux applications et aux API qui doivent être pris en compte lors de la mise en œuvre de solutions de sécurité. Par exemple: 

  • Contrôles d'authentification/autorisation faibles 
  • Mauvaise configuration 
  • Abus de logique métier (bourrage d'informations d'identification, prise de contrôle de compte)  
  • Falsification de requête côté serveur (SSRF).

 

Les 10 principaux risques de sécurité des applications de l'OWASP

L' OWASP Top 10 est une liste largement reconnue des risques de sécurité des applications Web les plus critiques. La liste sert de guide aux développeurs, aux professionnels de la sécurité et aux organisations pour hiérarchiser leurs efforts d’identification et d’atténuation des risques critiques de sécurité des applications Web. 

La présence d’un risque dans la liste OWASP Top 10 n’indique pas nécessairement sa prévalence ou sa gravité dans toutes les applications Web, et le Top Ten n’est pas classé dans un ordre spécifique ni par priorité.  

Les 10 principaux risques de sécurité des applications Web de l'OWASP pour 2021 sont :

  1. Contrôles d'accès cassés. Cette vulnérabilité survient lorsque l’application insuffisante des contrôles d’accès et des autorisations permet aux attaquants d’accéder à des fonctionnalités ou des données non autorisées. Cela peut être dû à des références d'objet directes (IDOR) non sécurisées, qui peuvent survenir lorsqu'une application ne parvient pas à valider ou à autoriser une entrée utilisateur utilisée comme référence directe à un objet interne. Cela peut également se produire en raison de l'absence de contrôles d'accès au niveau des fonctions, lorsque l'application valide uniquement les contrôles d'accès au stade initial d'authentification ou d'autorisation, mais n'applique pas systématiquement ces contrôles dans l'ensemble des fonctions ou des opérations de l'application. Un pare-feu d’application Web (WAF) peut aider à se protéger contre ces attaques en surveillant et en appliquant des contrôles d’accès pour empêcher l’accès non autorisé aux objets ou ressources sensibles.

  2. Échecs cryptographiques. Ce risque survient en raison d’une protection inadéquate des données sensibles pendant le transit et au repos. Les défaillances cryptographiques peuvent entraîner des violations de données, un accès non autorisé à des informations confidentielles et le non-respect des réglementations sur la confidentialité des données, telles que le règlement général sur la protection des données de l'UE (RGPD) et les normes financières telles que les normes de sécurité des données PCI (PCI DSS). Ces échecs peuvent résulter d’un stockage cryptographique non sécurisé, du stockage de données en texte brut ou d’une gestion de clés non sécurisée. Le risque peut également provenir d’une fuite d’informations, qui peut provenir d’une génération de clés ou de nombres aléatoires faibles ou de failles dans les protocoles cryptographiques. 
  3. Attaques par injection. Les failles d’injection se produisent lorsque les attaquants insèrent des données non fiables ou hostiles dans des langages de commande ou de requête, ou lorsque les données fournies par l’utilisateur ne sont pas validées, filtrées ou nettoyées par l’application, ce qui entraîne l’exécution involontaire de commandes malveillantes. Cette catégorie de risque couvre les attaques NoSQL, les commandes OS, LDAP et les injections SQL, et inclut également les scripts intersites (XSS) , dans lesquels les attaquants injectent des scripts malveillants côté client, tels que JavaScript, dans les pages Web consultées par d'autres utilisateurs. Cela peut entraîner le vol d’informations sensibles, telles que les identifiants de connexion, les données personnelles ou les cookies de session. Un WAF peut aider à détecter et à bloquer les tentatives d'injection de code malveillant en inspectant et en filtrant les requêtes entrantes, y compris les XSS réfléchies (non persistantes), stockées (persistantes) et basées sur un module d'objet de document (DOM), les empêchant d'atteindre l'application.
  4. Conception non sécurisée. Il s’agit d’une vaste catégorie représentant différentes faiblesses, exprimées par des contrôles de sécurité manquants ou inefficaces et des défauts d’architecture. Ces failles peuvent survenir lorsqu’une application est conçue pour s’appuyer sur des processus intrinsèquement non sécurisés, ou lorsque les contrôles de sécurité nécessaires pour se défendre contre des attaques spécifiques ne sont pas mis en œuvre. Ces risques peuvent être réduits grâce à une utilisation accrue de la modélisation des menaces, de modèles de conception sécurisés et d’architectures de référence.  
  5. Mauvaises configurations de sécurité. Un manque de renforcement de la sécurité dans les cadres d’applications Web, les plateformes, les serveurs ou les contrôles de sécurité peut entraîner un accès non autorisé, l’exposition d’informations sensibles ou d’autres vulnérabilités de sécurité. Les risques dus à des erreurs de configuration de sécurité peuvent également résulter d’autorisations mal configurées sur les services cloud ou de l’installation ou de l’activation de fonctionnalités inutiles telles que des ports, des services, des comptes ou des privilèges inutilisés. La mauvaise configuration des applications Web et des API constitue un risque important, car les principaux fournisseurs de cloud ont des postures de sécurité par défaut différentes et l'architecture devient de plus en plus décentralisée et distribuée sur une structure multi-cloud.    
  6. Composants vulnérables et obsolètes. L’utilisation de composants obsolètes, non corrigés ou vulnérables, tels que des bibliothèques, des frameworks ou des plugins, peut exposer les applications à des failles de sécurité connues, augmentant ainsi le risque d’exploitation. Ces risques peuvent résulter de logiciels non pris en charge ou obsolètes, notamment le système d’exploitation (OS), le serveur Web/d’applications, le système de gestion de base de données (SGBD), les applications, les API et tous les composants, environnements d’exécution et bibliothèques. Ces menaces sont particulièrement dangereuses lorsque les organisations ne disposent pas de mesures opportunes et basées sur les risques pour réparer ou mettre à niveau la plateforme, les cadres et les dépendances sous-jacents d'un système, laissant le système ouvert à des jours ou des semaines d'exposition inutile à des risques connus. Les chaînes d’approvisionnement logicielles complexes et l’automatisation via les pipelines CI/CD augmentent le risque d’introduction de logiciels vulnérables dans la pile informatique. Un WAF peut servir de solution provisoire essentielle pour se prémunir contre l’exploitation des vulnérabilités.  
  7. Échecs d'identification et d'authentification. Les faiblesses dans l’authentification, l’identité et la gestion des sessions peuvent permettre aux attaquants de compromettre les comptes d’utilisateurs, les mots de passe, les jetons de session ou d’exploiter une gestion de session non sécurisée. Les défaillances dans ces domaines peuvent permettre des attaques automatisées telles que le « credential stuffing » . Les vulnérabilités liées aux mots de passe sont la source la plus courante de ces risques, car de nombreuses personnes réutilisent les mots de passe ou utilisent des mots de passe par défaut, faibles ou bien connus. Les problèmes de gestion de session peuvent également conduire à des attaques liées à l'authentification, en particulier si les sessions utilisateur ou les jetons d'authentification ne sont pas correctement invalidés lors de la déconnexion ou d'une période d'inactivité. Les attaques qui contournent les contrôles d'authentification constituent un risque croissant pour les applications Web et les API, comme détaillé dans les projets OWASP Top 10, API Security Top 10 et Automated Threats.  
  8. Défaillances en matière d'intégrité des logiciels et des données. Ces vulnérabilités résultent d’un code d’application et d’une infrastructure qui ne parviennent pas à protéger contre les violations d’intégrité des données et des logiciels. Cela peut se produire lorsqu'une application s'appuie sur des plugins, des bibliothèques ou des modules provenant de sources, de référentiels et de CDN non fiables. Cela peut également se produire lors de mises à jour logicielles, de modifications de données sensibles et de modifications du pipeline CI/CD qui ne sont pas validées. Les attaquants peuvent potentiellement télécharger leurs propres mises à jour pour être distribuées et exécutées sur toutes les installations. La désérialisation non sécurisée, où une application prend des données sérialisées non fiables et consomme ces données sans s'assurer qu'elles sont valides, fait également partie de cette catégorie de risque, permettant des attaques telles que l'exécution de code à distance (RCE) et l'escalade des privilèges. 
  9. Journalisation de sécurité et surveillance des échecs. Une journalisation et une surveillance inadéquates peuvent entraver la détection et la réponse rapides aux incidents de sécurité, ce qui rend difficile l’identification et l’atténuation des attaques ou des activités non autorisées. Cela peut signifier que les événements vérifiables, tels que les connexions, les échecs de connexion et les transactions de grande valeur ne sont pas identifiés ou enregistrés, et que les applications ne détectent pas les attaques actives en temps réel.  
  10. Falsification de requête côté serveur (SSRF). Ces vulnérabilités se produisent lorsqu'une application ne valide pas ou ne nettoie pas une URL saisie par un utilisateur avant d'extraire des données d'une ressource distante. Les attaquants peuvent utiliser ces failles pour forcer les applications à accéder à des destinations Web malveillantes même si elles sont protégées par un pare-feu ou une autre défense. Ces attaques peuvent également se produire si la ressource ciblée entretient des relations de confiance avec d’autres systèmes, tels qu’un service de métadonnées cloud ou des API back-end, permettant à un attaquant de faire des requêtes à ces services de confiance et d’extraire des informations sensibles ou d’effectuer des actions non autorisées. Pour aider à atténuer le SSRF, concevez des systèmes pour un accès avec le minimum de privilèges et utilisez un WAF pour définir explicitement les paramètres d'identifiant de ressource uniforme (URI) dans votre politique de sécurité et autoriser/interdire les hôtes qui peuvent y accéder.

Le Top 10 OWASP 2021 reflète certaines nouvelles catégories et changements de nom par rapport au Top 10 OWASP 2017. Ces modifications incluent l’intégration des entités externes XML de menace de risque 2017 (XXE) dans la catégorie Mauvaise configuration de sécurité 2021 et l’ajout de Cross-Site Scripting (XSS) 2017 à la catégorie Injection 2021. Le risque de désérialisation non sécurisée de 2017 fait désormais partie de la catégorie Défaillances d'intégrité des logiciels et des données de 2021.    

Autres publications de l'OWASP

L'OWASP sponsorise actuellement 293 projets, dont les 16 projets phares de l'OWASP suivants qui apportent une valeur stratégique à l'OWASP et à la sécurité des applications dans son ensemble.

  1. Le projet OWASP Amass a développé un outil pour aider les professionnels de la sécurité de l'information à effectuer la cartographie du réseau des surfaces d'attaque et à effectuer la découverte d'actifs externes à l'aide de techniques de collecte d'informations open source et de reconnaissance active. 
  2. Projet de norme de vérification de la sécurité des applications OWASP (ASVS), qui fournit une base pour tester les contrôles de sécurité technique des applications Web et fournit également aux développeurs une liste d'exigences pour un développement sécurisé.  
  3. Série de feuilles de triche OWASP, créée pour fournir un ensemble de guides de bonnes pratiques simples à suivre pour les développeurs d'applications et les défenseurs. Plutôt que de se concentrer sur des bonnes pratiques détaillées qui ne sont pas pratiques pour de nombreux développeurs et applications, ces articles visent à fournir de bonnes pratiques que la majorité des développeurs seront réellement en mesure de mettre en œuvre.  
  4. OWASP CycloneDX, une norme de nomenclature complète (BOM) qui fournit des capacités avancées de chaîne d'approvisionnement pour la réduction des cyber-risques.   
  5. OWASP Defectdojo, qui est un outil de gestion des vulnérabilités open source qui rationalise le processus de test en offrant des modèles, la génération de rapports, des métriques et des outils de libre-service de base. 
  6. OWASP Dependency-Check, un outil d'analyse de composition logicielle (SCA) qui tente de détecter les vulnérabilités divulguées publiquement contenues dans les dépendances d'un projet. Pour ce faire, il détermine s’il existe un identifiant d’énumération de plateforme commune (CPE) pour une dépendance donnée. S'il est trouvé, il générera un rapport lié aux entrées de vulnérabilités et d'expositions communes (CVE) associées.   
  7. OWASP Dependency-Track, une plate-forme d'analyse de composants intelligente qui permet aux organisations d'identifier et de réduire les risques dans la chaîne d'approvisionnement en logiciels.
  8. OWASP Juice Shop, qui est peut-être l'application Web non sécurisée la plus moderne et la plus sophistiquée utilisée dans les formations de sécurité, les démonstrations de sensibilisation, les concours de capture du drapeau et comme cobaye pour les outils de sécurité. Juice Shop englobe les vulnérabilités de l'ensemble du Top Ten de l'OWASP ainsi que de nombreuses autres failles de sécurité trouvées dans des applications réelles.   
  9. OWASP Mobile Application Security, qui est le projet phare de l'OWASP visant à fournir une norme de sécurité pour les applications mobiles. Il comprend également un guide de test complet qui couvre les processus, les techniques et les outils utilisés lors des tests de sécurité des applications mobiles, ainsi qu'un ensemble exhaustif de cas de test qui permettent aux testeurs de fournir des résultats cohérents et complets. 
  10. Ensemble de règles de base OWASP ModSecurity, qui est un ensemble de règles de détection d'attaque génériques à utiliser avec ModSecurity ou des pare-feu d'applications Web compatibles. Le CRS vise à protéger les applications Web contre un large éventail d'attaques, y compris le Top Ten de l'OWASP, avec un minimum de fausses alertes.   
  11. Projet OWASP OWTF (Offensive Web Testing Framework), qui est un cadre de test de pénétration d'applications Web open source conçu pour évaluer et tester la sécurité des applications Web. L’objectif principal d’OWTF est d’aider les professionnels de la sécurité et les testeurs de pénétration à automatiser le processus d’évaluation et de test des vulnérabilités des applications Web, leur permettant d’identifier et de traiter plus efficacement les faiblesses de sécurité.
  12. OWASP SAMM (modèle de maturité de l'assurance logicielle), qui fournit un moyen efficace et mesurable d'analyser et d'améliorer la modélisation du cycle de vie du développement sécurisé . SAMM prend en charge l'ensemble du cycle de vie du logiciel et est indépendant de la technologie et des processus .  
  13. OWASP Security Knowledge Framework, une application Web qui explique les principes de codage sécurisé dans plusieurs langages de programmation et vise à aider les développeurs à créer des applications sécurisées par conception.  
  14. OWASP Security Shepherd, une plate-forme de formation à la sécurité des applications Web et mobiles conçue pour favoriser et améliorer la sensibilisation à la sécurité parmi un ensemble démographique de compétences variées. L'objectif de ce projet est d'amener les novices en AppSec ou les ingénieurs expérimentés à affiner leurs compétences en matière de tests de pénétration jusqu'au statut d'expert en sécurité.   
  15. Guide de test de sécurité Web OWASP , qui est un guide complet pour tester la sécurité des applications et des services Web. Il fournit un cadre de meilleures pratiques utilisées par les testeurs de pénétration et les organisations du monde entier.
  16. OWASP ZAP , qui est un outil de test de sécurité des applications Web conçu pour aider les professionnels de la sécurité et les développeurs à identifier et atténuer les vulnérabilités de sécurité dans les applications Web pendant les phases de développement et de test.   

Plaidoyer en faveur des contrôles de sécurité intégrés

L'OWASP joue un rôle essentiel dans la quête continue d'amélioration de la sécurité des logiciels en sensibilisant aux risques de sécurité des applications Web et en préconisant les meilleures pratiques parmi les développeurs, les professionnels de la sécurité et les organisations. En tant que projet communautaire, l'OWASP rassemble des experts et des passionnés pour collaborer à l'amélioration de la sécurité des applications Web, contribuant ainsi à créer une culture soucieuse de la sécurité qui favorise des pratiques de codage sécurisées et des méthodologies de développement sécurisées.

En outre, l'OWASP fournit une multitude d'outils, de documents et de ressources gratuits et open source qui permettent aux organisations d'améliorer leur posture de sécurité, notamment le OWASP Top 10, le OWASP API Security Top 10 et le projet Automated Threats to Web Applications. D’autres initiatives de l’OWASP comprennent :

  • L'outil de journalisation des bugs OWASP (BLT), qui permet aux utilisateurs d'Internet de signaler tout problème rencontré en ligne et de contribuer à améliorer la sécurité Internet en promouvant une divulgation responsable et en favorisant un environnement en ligne plus sûr. 
  • OWASP CSRFGuard, une bibliothèque qui protège les applications Web contre les attaques Cross-Site Request Forgery (CSRF).
  • Un certain nombre de référentiels sur GitHub , notamment la série Cheat Sheet, qui fournit une collection concise d'informations de grande valeur sur des sujets spécifiques de sécurité des applications. 
  • OWASP Top 10 Client-Side Security Risks, une compilation de vulnérabilités spécifiques communes aux applications côté navigateur. 
  • OWASP Cloud-Native Application Security Top 10, un projet encore en développement qui fournira des informations sur les risques de sécurité les plus importants pour les applications cloud natives, les défis impliqués et comment les surmonter. 

Impliquez-vous en devenant membre de l'OWASP ou en assistant à une réunion de section locale, qui sont gratuites et ouvertes aux membres et aux non-membres. En outre, l'OWASP organise chaque année près d'une douzaine d'événements mondiaux et régionaux , qui constituent d'excellentes occasions d'améliorer vos compétences professionnelles, de développer votre réseau professionnel et de découvrir les nouvelles tendances du secteur.

F5 aborde les risques de sécurité de l'OWASP

F5 soutient la Fondation OWASP et son engagement à améliorer la sécurité des logiciels et à sensibiliser aux risques et vulnérabilités de sécurité des applications Web. Les solutions de pare-feu d'application Web F5 bloquent et atténuent un large éventail de risques découlant du Top 10 de l'OWASP .

Les solutions F5 WAF combinent des protections de signature et comportementales, y compris des renseignements sur les menaces de F5 Labs et une sécurité basée sur le ML, pour suivre le rythme des menaces émergentes. Il allège le fardeau et la complexité de la sécurisation cohérente des applications dans les environnements cloud, sur site et périphériques, tout en simplifiant la gestion via une infrastructure SaaS centralisée. Les WAF F5 rationalisent également la sécurité des applications en intégrant des protections dans les cadres de développement et les pipelines CI/CD avec des fonctionnalités de sécurité de base, une orchestration centralisée et une supervision via un tableau de bord unique avec une vue à 360 degrés des performances des applications et des événements de sécurité dans les applications distribuées. 

F5 aborde également les risques identifiés dans le Top 10 de la sécurité des API OWASP avec des solutions qui protègent la surface d'attaque croissante et les menaces émergentes à mesure que les applications évoluent et que les déploiements d'API augmentent. Les solutions F5 Web Application and API Protection (WAAP) défendent l'intégralité de la surface d'attaque des applications modernes avec des protections complètes qui incluent WAF, API Security , l'atténuation DDoS L3-L7 et la défense contre les robots contre les menaces automatisées et la fraude. La plateforme distribuée simplifie le déploiement de politiques cohérentes et la mise à l'échelle de la sécurité sur l'ensemble de votre parc d'applications et d'API, quel que soit l'endroit où elles sont hébergées, et intègre la sécurité dans le cycle de vie des API et dans des écosystèmes plus larges.

F5 propose également des solutions pour répondre aux risques décrits dans le projet de l'OWASP sur les menaces automatisées contre les applications Web. F5 Distributed Cloud Bot Defense empêche la fraude et les abus qui peuvent contourner les solutions de gestion des robots existantes et fournit une surveillance et des renseignements en temps réel ainsi qu'une analyse rétrospective basée sur le ML pour protéger les organisations contre les attaques automatisées, sans insérer de frictions utilisateur ni perturber l'expérience client. Distributed Cloud Bot Defense conserve son efficacité quelle que soit la manière dont les attaquants se réorganisent, que les attaques passent des applications Web aux API ou tentent de contourner les défenses anti-automatisation en usurpant la télémétrie ou en utilisant des solveurs CAPTCHA humains.

F5 propose également une protection DDoS à plusieurs niveaux pour une sécurité en ligne avancée en tant que service d'atténuation géré et fourni dans le cloud qui détecte et atténue les attaques à grande échelle ciblant le réseau, le protocole et les applications en temps réel ; les mêmes protections sont également disponibles sous forme de matériel sur site, de logiciels et de solutions hybrides. F5 Distributed Cloud DDoS Mitigation protège contre les attaques volumétriques et spécifiques aux applications de couche 3-4 et de couche 7 avancées avant qu'elles n'atteignent votre infrastructure réseau et vos applications.