Webinaire en vedette : MISRA C++ 2023 : tout ce que vous devez savoir | Voir le séminaire

Exposition des données sensibles OWASP en 2024 : le guide complet

Logo cube Parasoft 300x300
le 1 novembre 2023
8 min lire

L'Open Web Application Security Project (OWASP) a contribué à apporter des réponses par le biais de formations et de forums à des problèmes informatiques critiques. Lisez attentivement pour trouver les réponses aux questions urgentes du Top 10 de l'OWASP et de la sécurité des applications Web.

Explorons les réponses à la pression OWASP Top 10 et les questions de sécurité des applications Web.

Dans le développement de logiciels, il est courant de tester les faiblesses logicielles qui exposent des vulnérabilités de sécurité. La sécurité des applications Web est toutefois devenue plus complexe en raison de l'utilisation croissante d'interfaces de programmation d'applications (API) qui augmentent la surface d'attaque des applications. Les équipes DevSecOps, AppSec et de développement d'applications recherchent désormais des pratiques permettant d'atténuer les risques de sécurité, de réduire la surface d'attaque et de prévenir les expositions de données causées par les vulnérabilités des applications Web.

Il y a eu une vague d'attaques d'applications Web contre les organisations et cela augmente régulièrement. Les applications Web sont connues pour utiliser des dépendances tierces vulnérables. L'accessibilité et l'accessibilité de ces composants vulnérables ont des dépendances logicielles qui créent des risques de sécurité et exposent des surfaces d'attaque dans les applications Web. Il permet aux attaquants de créer facilement de graves perturbations, de voler ou de falsifier des informations personnelles telles que les données de carte de crédit, de provoquer un déni de service ou simplement de conserver les données contre rançon. Malheureusement, aucune entreprise, grande ou petite, n'obtient un laissez-passer lorsqu'il s'agit de ces défis de cybersécurité.

Les attaquants recherchent les vulnérabilités et les utilisent pour compromettre la sécurité de l'application. Les vulnérabilités des applications Web peuvent être des faiblesses logicielles dans le code de l'application ou des problèmes de mauvaise configuration dans les applications Web. Ces vulnérabilités peuvent être le résultat de :

  • Pas de validation ou de désinfection des entrées de formulaire
  • Serveurs Web mal configurés
  • Défauts de conception de l'application
  • Mécanismes d'authentification mal implémentés et mal conçus
  • Interfaces de programmation d'applications (API)

Les attaques d'applications Web sont l'un des vecteurs d'attaque les plus répandus pour les incidents de cybersécurité et les violations de données, comme indiqué dans Rapport d'enquête sur les violations de données (DBIR) 2021 de Verizon. Ils nécessitent des stratégies de prévention et de remédiation solides, telles que l'application de correctifs et la modélisation des menaces, pour les atténuer.

Qu'est-ce que l'exposition aux données sensibles ?

Même si cela peut paraître évident, les données sensibles représentent aujourd’hui une part importante des informations que nous partageons en ligne. L'exposition signifie que les informations d'identification personnelle (PII) sont disponibles pour les attaquants qui peuvent les utiliser à des fins lucratives, frauduleuses ou usurpant leur identité. Les informations personnelles incluent les noms, adresses, adresses e-mail, numéros de téléphone et des données encore plus critiques telles que les numéros de sécurité sociale et les informations sur les comptes bancaires et de carte de crédit. Parallèlement, les données commerciales sensibles peuvent révéler des secrets commerciaux ou des plans commerciaux.

L'exposition de données sensibles, telle que décrite dans le Top Ten de l'OWASP, est une vulnérabilité de sécurité dans laquelle une application révèle par inadvertance des informations confidentielles ou sensibles, telles que des données personnelles d'utilisateur, des dossiers financiers ou des informations de connexion, à des personnes ou à des systèmes non autorisés. Cette exposition peut survenir en raison de mesures de protection des données inadéquates, d'un cryptage faible ou de contrôles d'accès inappropriés, pouvant entraîner des violations de données et compromettre la confidentialité et la sécurité des utilisateurs.

Quel est un bon point de départ pour la sécurité des applications Web ?

L'Open Web Application Security Project (OWASP) fait progresser les pratiques de sécurité des applications (AppSec) à l'échelle mondiale grâce à l'engagement, la formation et la sensibilisation de la communauté. OWASP Top 10 est la norme de référence pour les organisations qui protègent de manière proactive les applications Web contre les menaces de sécurité afin de réduire les risques. La validation de conformité OWASP Top 10 est une bonne première étape lorsque vous tentez de changer et d'améliorer la culture de développement logiciel dans votre organisation en raison de l'éducation et de la sensibilisation que l'OWASP fournit sur les menaces applicatives et les choses qui peuvent mal tourner si les bonnes pratiques de codage et de sécurité des applications ne sont pas suivies. .

Une autre ressource pour améliorer la sécurité des applications Web est le système Common Vulnerabilities and Exposures (CVE) qui fournit une référence aux vulnérabilités et expositions connues en matière de sécurité des informations. Il permet à chacun de suivre les vulnérabilités connues du public et fournit une télémétrie sur les exploits du monde réel qui peuvent être codifiés dans les pratiques de développement de logiciels et les activités de modélisation des menaces pour renforcer la sécurité.

L'analyse ou les tests d'applications Web (tels que SAST, DAST, IAST, SCA) constituent une bonne base pour les équipes de sécurité. Un pare-feu d'application Web (WAF) est un autre outil de filtrage, de surveillance et de blocage des attaques d'applications Web identifiées dans le Top 10 de l'OWASP.

Qu'est-ce que l'OWASP ?

OWASP est une organisation internationale à but non lucratif dédiée à l'amélioration de la sécurité des applications Web. Son importance réside dans son rôle de leader en matière de sécurité des applications Web, obtenu grâce à des ressources, des outils et des lignes directrices permettant d'identifier et d'atténuer les vulnérabilités de sécurité. L'OWASP contribue à rendre le Web plus sécurisé en sensibilisant et en facilitant les meilleures pratiques.

OWASP Top 10 des risques de sécurité des applications Web

Le Top 10 OWASP est une liste des vulnérabilités et des risques de sécurité dangereux les plus connus pour les applications Web. Il est mis à jour périodiquement pour garder une longueur d'avance sur les menaces croissantes et évolutives. Les développeurs reconnaissent largement la liste OWASP Top Ten comme la ligne directrice en matière de sécurité des applications Web.

Que sont les 10 principales attaques de l'OWASP et quelles vulnérabilités font partie du top 10 de l'OWASP aujourd'hui ?

L'OWASP fournit une documentation pour la liste des 10 premiers, avec un site Web dédié à chaque vulnérabilité, qui décrit les stratégies de menace, de risque et d'atténuation. Le site décrit ce qu'est chaque vulnérabilité et fournit un score de risque, qui est utilisé pour aider à hiérarchiser et à trier les vulnérabilités possibles.

Les vulnérabilités A1 à A10 suivantes constituent le Top 10 OWASP, mis à jour pour la dernière fois en 2021.

1. A01 : 2021 – Contrôle d'accès brisé

En tête de liste des risques de sécurité des applications Web les plus graves, le contrôle d'accès cassé avait 34 CWE mappés dessus. C'est plus que des occurrences dans les applications que dans toute autre catégorie. Le modèle de contrôle d'accès d'une application Web est étroitement lié au contenu et aux fonctions fournis par le site. S'il n'est pas configuré correctement, les pirates peuvent accéder à des fichiers sensibles et dégrader le site.

2. A02 : 2021 – Échecs cryptographiques

Le logiciel cryptanalytique implique différents programmes logiciels utilisés pour déchiffrer les cryptages. Formellement appelée exposition de données sensibles, une défaillance cryptographique signifie que les informations censées être protégées contre des sources non fiables ont été divulguées à des attaquants. Les pirates peuvent alors accéder à des informations telles que les données du processeur de carte de crédit ou tout autre identifiant d'authentification.

3. A03:2021—Injection

Lorsqu'un attaquant utilise du code SQL malveillant pour manipuler une base de données principale et révèle ainsi des informations sensibles, on parle d'une attaque par injection. Les failles d'injection, telles que l'injection NoSQL, OS, LDAP et SQL, se produisent lorsque des données non fiables sont envoyées à un interpréteur dans le cadre d'une commande ou d'une requête.

Les attaques de type Cross-Site Scripting (XSS) sont un autre type d'injection. Des scripts malveillants sont injectés dans des sites Web par ailleurs inoffensifs et fiables qui peuvent réécrire le contenu de la page HTML.

Sever-Side Request Forgery (SSRF) est un type d'attaque qui peut se produire lorsqu'un pirate peut non seulement afficher des listes non autorisées, supprimer des tables et disposer d'un accès administratif non autorisé, mais également exécuter du code à distance à partir du serveur principal d'une application Web vulnérable. .

4. A04:2021—Conception non sécurisée

Il s'agit d'une nouvelle catégorie pour 2021 et l'accent est mis sur les risques liés aux défauts de conception. Plus de modélisation des menaces, des modèles et principes de conception sécurisés et des architectures de référence sont nécessaires pour se protéger contre les conceptions non sécurisées des pages Web.

Il s'agit d'un ajout important car les développeurs doivent savoir comment les concepts de conception et d'architecture doivent être configurés et implémentés correctement dans le code. La mise en œuvre incorrecte des concepts de conception et d'architecture dans le code peut créer des failles de sécurité.

5. A05:2021—Mauvaise configuration de la sécurité

Les attaques d'entités externes XML ont été intégrées dans une mauvaise configuration de la sécurité cette année. C'est une menace croissante en raison de plus de changements dans les configurations logicielles.

6. A06:2021—Composants vulnérables et obsolètes

Auparavant intitulée Utilisation de composants présentant des vulnérabilités connues, cette catégorie représente un problème connu que les experts de l'OWASP ont découvert et que beaucoup continuent de lutter pour tester l'évaluation des risques.

De nombreux problèmes de sécurité ont été attribués à des composants logiciels tiers obsolètes. Une préoccupation croissante vient aggraver ce problème : le temps d’exploitation diminue et les organisations ne corrigent pas les vulnérabilités assez rapidement.

7. A07:2021—Échecs d’identification et d’authentification

Les vulnérabilités d'authentification en tant que catégorie ont chuté de la deuxième position dans le top dix parce que la disponibilité accrue de cadres standardisés semble aider. Elle était auparavant appelée vulnérabilité d'authentification brisée, car elle peut entraîner un déni de service lorsque les comptes d'utilisateurs ne peuvent pas être authentifiés. L'authentification multifacteur n'est pas déployée dans la plupart des cas. Il inclut désormais les CWE qui sont davantage liés aux échecs d'identification.

8. A08 : 2021 – Défaillances d’intégrité des logiciels et des données

En tant que nouvelle catégorie pour 2021, elle se concentre sur l'élaboration d'hypothèses relatives aux mises à jour logicielles, aux données critiques et aux pipelines CI/CD sans vérifier l'intégrité. A8:2017—La désérialisation non sécurisée fait désormais partie de cette catégorie plus large.

Les inquiétudes croissantes concernant les récentes attaques associées à la violation de SolarWinds et à la sécurisation de l'environnement de construction augmentent l'importance de cette menace. L'intégrité des logiciels a été spécifiquement évoquée dans le décret sur la cybersécurité, section 4.

9. A09:2021—Échecs de journalisation et de surveillance de sécurité (anciennement A10 OWASP Top 10 2017)

Cette catégorie a été élargie pour inclure davantage de types de défaillances pouvant avoir un impact direct sur la visibilité, les alertes d'incident et l'investigation.

10. A10 : 2021 – falsification de requêtes côté serveur

Les données montrent qu'il y a un faible taux d'incidence pour cette catégorie qui vient d'être ajoutée au Top 10.

Conformité OWASP avec SAST

Les cyberattaques faisant constamment l'actualité, vous ne pouvez pas vous permettre que vos applications Web deviennent la proie d'attaquants en raison de failles de sécurité qui peuvent être évitées. Les tests de sécurité des applications statiques (SAST), ou analyse de code statique, permettent à votre organisation d'effectuer des tests et des analyses automatisés du code source de votre application Web.

SAST est le processus d'analyse du code pour rechercher les faiblesses logicielles susceptibles d'exposer des vulnérabilités de sécurité dans les applications Web. Les outils SAST n'ont pas besoin d'une application en cours d'exécution pour effectuer une analyse. SAST peut analyser le code en temps réel pour vous informer des violations du Top 10 OWASP le plus tôt possible.

Une bonne pratique pour réduire les vulnérabilités de sécurité consiste à intégrer les conseils du Top 10 OWASP dans vos activités de développement logiciel dès le début et à utiliser des tests de sécurité d'application statiques pour valider la conformité. En incorporant des tests de sécurité d'application statiques dès le début du processus de développement, vous pouvez identifier les faiblesses de sécurité et toute vulnérabilité d'application, lorsqu'elles sont les plus faciles et les moins coûteuses à corriger tout en respectant vos mandats de conformité en matière de sécurité.

Gérer les résultats des outils de sécurité peut s'avérer écrasant. Vous souhaiterez donc rechercher des outils SAST automatisés qui intègrent quelques modèles de risque du secteur de la sécurité. OWASP est un bon point de départ car il répond aux problèmes et vulnérabilités les plus importants. Vous pouvez améliorer cela une fois que votre équipe sent qu'elle a la situation sous contrôle. Les normes de codage sécurisées étendues répertoriées dans le tableau ci-dessous vous aideront à élargir votre sécurité et à vous préparer au succès futur.

Normes de codage sécurisé

Voici les normes de codage sécurisées courantes que les organisations peuvent adapter et adopter pour améliorer leur posture de sécurité et prévenir bon nombre des faiblesses logicielles qui conduisent à des vulnérabilités de sécurité.

1. CERT (équipe d'intervention en cas d'urgence informatique)

Des lignes directrices pour différents langages pour aider les développeurs à éviter les erreurs lors du codage et de la mise en œuvre, et également à détecter les erreurs de bas niveau dans la conception.

2. OWASP Top XNUMX

Les développeurs d'applications Web et de logiciels utilisent ces normes pour identifier et remédier aux risques de haute sécurité dans les applications Web.

3. CWE (Énumération des faiblesses communes)

Il s'agit d'un système de catégories qui aide les développeurs à identifier les vulnérabilités et les faiblesses des logiciels et les aide à comprendre les failles des logiciels. Les développeurs utilisent également le système pour développer des outils permettant de corriger et de prévenir les failles.

4. Sécurité des applications DISA et développement STIGS

Aide les gestionnaires, les concepteurs, les développeurs et les administrateurs système à développer et à maintenir des contrôles de sécurité dans les applications et le développement d'applications.

Les solutions SAST automatisées comme Parasoft offrent un pack de conformité mis à jour selon les mises à jour OWASP. Les nouvelles règles deviennent des contrôleurs pour aider les développeurs à appliquer les nouvelles pratiques de codage sécurisé, comme le montre l'image ci-dessous, pour les langages de programmation populaires tels que Java, C / C ++, .NET, Python). Cela aide à guider les développeurs en éliminant les dix principaux risques qui ont été identifiés par l'OWASP. De plus, une fonctionnalité telle que la hiérarchisation automatisée tirant parti de l'IA/ML peut éliminer les conjectures du triage manuel.

Prise en charge du vérificateur/règles Parasoft pour OWASP Top 10

L'image ci-dessous affiche la prise en charge des vérificateurs/règles de Parasoft pour la dernière version de l'OWASP Top 10 2021.

Capture d'écran de la prise en charge des vérificateurs/règles de Parasoft pour la version mise à jour du Top 10 OWASP 2021

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

L'API OWASP Top 10 risques de sécurité est une liste de problèmes de sécurité courants spécifiquement liés aux API (interfaces de programmation d'applications) dans les applications Web. Ces vulnérabilités sont souvent exploitées pour compromettre l'intégrité des données et du système lorsque des API sont impliquées.

La principale différence entre les vulnérabilités des API OWASP Top 10 et OWASP Top 10 réside dans l'accent mis sur l'utilisation des API, qui peuvent exposer des données ou des fonctionnalités, et qui sont répandues dans les applications Web et mobiles modernes. La raison pour laquelle l’OWASP met l’accent sur les API est le fait que les API constituent la majorité des attaques de sécurité dans le cloud. Selon le Rapport 2021 sur le paysage des menaces IBM Security X-Force Cloud, les deux tiers des incidents de sécurité dans le cloud l'année dernière impliquaient des API mal configurées. Cependant, les faiblesses logicielles sous-jacentes sont alignées sur celles des applications Web. Du point de vue des outils SAST et DAST, les problèmes détectés sont similaires même si la cartographie va changer.

SAST contre DAST

Une autre arme dans votre boîte à outils de sécurité d'application Web est le test de sécurité d'application dynamique (DAST). Avec DAST, les attaques malveillantes et autres comportements externes sont stimulés par la recherche de moyens d'exploiter les vulnérabilités de sécurité lors des tests d'exécution ou de la boîte noire.

Ainsi, alors que SAST analyse chaque ligne de code sans exécuter l'application, avec DAST, vous devrez exécuter l'application avant qu'elle ne puisse commencer à rechercher les vulnérabilités, c'est-à-dire dès que vous avez un logiciel en cours d'exécution.

Décider de analyse de code statique et dynamique pour votre organisation dépend de nombreuses variables. Lisez notre article de blog sur SAST où il y a une excellente comparaison côte à côte des deux outils.

Premiers pas avec un outil d'analyse statique