Skip to main content

Vulnérabilité de sécurité : types et mesures correctives

Écrit par
AH blog header

11 février 2021

0 minutes de lecture

Le coût moyen d’une violation de données en 2020 s’élevait à 3,86 millions de dollars, et le coût mondial de la cybercriminalité a atteint 6 000 milliards de dollars en 2021. 82 % des vulnérabilités connues se trouvent dans le code des applications, et 90 % des applications web sont vulnérables au piratage ; parmi elles, 68 % sont exposées au risque de violation de données sensibles.

Vulnérabilité, exploit et menace : quelles différences ? 

Pour gérer efficacement les risques liés à la cybersécurité, il est important de comprendre la différence entre une vulnérabilité, un exploit et une menace.

Qu’est-ce qu’une vulnérabilité de sécurité ?

Une vulnérabilité de sécurité est une faille dans le code logiciel ou une mauvaise configuration système, comme Log4Shell, qui permet aux attaquants d’accéder directement et sans autorisation à un système ou à un réseau. Une fois à l’intérieur, l’attaquant peut tirer parti des autorisations et des privilèges pour compromettre les systèmes et les actifs.

Un scanner de vulnérabilités analyse votre environnement et le compare à une base de données de vulnérabilités ou à une liste de vulnérabilités connues, afin de vous aider à repérer les points faibles.

Qu’est-ce qu’une vulnérabilité logicielle ?

Une vulnérabilité logicielle est une faiblesse dans le code d’un programme qu’un attaquant peut exploiter. Les attaquants peuvent s’en servir pour accéder sans autorisation à un réseau, voler des données et compromettre des systèmes. 

Qu’est-ce qu’un exploit en cybersécurité ?

Un exploit est un moyen pour les pirates d’exploiter une vulnérabilité afin de lancer une attaque. Il s’agit généralement d’un logiciel spécialement conçu ou d’une suite de commandes. Par exemple, des vers informatiques tels que CodeRed, Spida et Slammer ont exploité au fil des ans des vulnérabilités des serveurs Microsoft IIS (Internet Information Services) et MS-SQL.

Il existe également des kits d’exploitation (par exemple Rig, Magnitude et Fallout) qui peuvent être intégrés à des pages web compromises. Ces kits recherchent les vulnérabilités en continu. Dès qu’une faille est détectée, le kit tente immédiatement de déployer un exploit, par exemple en injectant un logiciel malveillant dans le système hôte.

Quelle est la différence entre un exploit et un piratage ?

Un exploit en cybersécurité consiste à manipuler des bogues ou des failles de code pour tirer parti d’un système, généralement afin d’extraire des données sensibles. Le piratage désigne l’accès non autorisé aux données.

Qu’est-ce qu’une cybermenace ?

Une menace est un événement réel ou hypothétique dans lequel un ou plusieurs exploits tirent parti d’une vulnérabilité pour lancer une attaque. Par exemple, l’exploit CodeRed visant une vulnérabilité de Microsoft IIS a été utilisé activement pour infecter plus de 300 000 cibles. Ces menaces ont entraîné d’importantes pertes financières dans le monde entier.

Diagramme de Venn montrant toutes les vulnérabilités divulguées, les vulnérabilités exploitées et les vulnérabilités de votre environnement, mettant en évidence les vulnérabilités clés à corriger
Diagramme de Venn montrant les vulnérabilités dont vous devez vous préoccuper

Seul un faible pourcentage des vulnérabilités connues sera exploité, autrement dit, utilisé pour pirater un système. Les vulnérabilités présentant le risque le plus élevé sont celles qui ont le plus de chances d’être exploitées. Elles doivent donc être traitées en priorité, comme l’illustre le schéma :

Types de vulnérabilités de sécurité

Les vulnérabilités de sécurité peuvent exister à toutes les couches, notamment au niveau de l’infrastructure, du réseau et des applications. Cette section porte sur les failles de sécurité des applications et des sites web.

Deux listes importantes recensent les faiblesses qui exposent les applications web et les sites web aux risques de cybersécurité. La première est tenue par l’

Open Web Application Security Project (OWASP), une communauté mondiale ouverte. Parmi les quelque 60 faiblesses de sécurité des applications décrites par l’OWASP, le Top 10 des vulnérabilités OWASP recense celles qui sont le plus souvent exploitées. 

La deuxième liste est la CWE (Common Weakness Enumeration), une « liste de types de faiblesses logicielles et matérielles courantes, élaborée par la communauté et ayant des conséquences en matière de sécurité ». La CWE, tout comme le célèbre dictionnaire normalisé Common Vulnerabilities and 

Exposures (CVE), est gérée par MITRE Corporation, une organisation à but non lucratif qui exploite des centres de recherche et développement financés par le gouvernement fédéral. La CWE-25 est une liste actualisée chaque année des 25 faiblesses logicielles les plus dangereuses.

La MITRE CWE-25 recense trois grandes catégories de faiblesses de sécurité des applications et des sites web :

1. Défenses perméables

Cette première catégorie de faiblesses comprend les failles qui peuvent permettre aux utilisateurs de contourner ou d’usurper les processus d’authentification et d’autorisation. L’authentification vérifie l’identité d’une personne qui tente d’accéder à un système, tandis que l’autorisation désigne l’ensemble des droits d’accès et d’utilisation attribués à l’utilisateur.

Voici quelques exemples de failles liées à des défenses perméables :

  • Chiffrement faible des mots de passe

  • Identifiants insuffisamment protégés

  • Absence d’authentification ou authentification à un seul facteur

  • Héritage non sécurisé des autorisations

  • Sessions qui n’expirent pas dans un délai raisonnable

Si des entités non autorisées accèdent à des ressources sensibles et en abusent, toutes ces vulnérabilités liées à des défenses perméables peuvent gravement compromettre la posture de sécurité de l’organisation.

Les exploits qui tirent parti des vulnérabilités liées à des défenses perméables peuvent notamment prendre les formes suivantes :

  • Attaques par bourrage d’identifiants

  • Détournement d’identifiants de session

  • Vol d’identifiants de connexion

  • Attaques de l’homme du milieu (MITM) (en substance, de l’espionnage électronique)

2. Gestion risquée des ressources

De nombreuses vulnérabilités sont liées à la gestion risquée de ressources telles que la mémoire, les fonctions et les frameworks open source. Lors de la conception et du développement d’applications web et de sites web, il est essentiel d’analyser les vulnérabilités de tous les composants tiers intégrés à l’architecture, comme les bibliothèques et les fonctions.

Les failles de cette catégorie comprennent :

  • Écriture ou lecture hors limites (débordement de tampon) : l’application peut être amenée à écrire ou à lire des données après la fin ou avant le début du tampon mémoire prévu.

  • Traversée de chemin : permet aux attaquants de créer des chemins d’accès pour consulter des fichiers situés en dehors des répertoires autorisés.

Les attaques par débordement de tampon illustrent parfaitement la façon dont les failles de gestion risquée des ressources exposent les applications web et les sites web aux risques de cybersécurité. Elles exploitent des contrôles insuffisants des tampons mémoire pour modifier le flux d’exécution et ainsi prendre le contrôle de l’application, endommager des fichiers ou exfiltrer des informations sensibles.

3. Interactions non sécurisées entre les composants

Les architectures applicatives hautement distribuées d’aujourd’hui envoient et reçoivent des données entre divers services, threads et processus. À l’exécution, les applications web et les sites web doivent appliquer une approche de confiance zéro, selon laquelle toute entrée est considérée comme suspecte tant qu’il n’a pas été activement vérifié qu’elle provient d’une source fiable et répond à l’objectif prévu.

Les faiblesses qui exposent une application web ou un site web à des interactions non sécurisées et risquées comprennent :

  • Cross-site scripting, ou XSS : neutralisation incorrecte des entrées contrôlées par l’utilisateur lors de la génération d’une page web. La chaîne d’événements qui aboutit à l’insertion d’un script malveillant dans une page web générée commence par l’arrivée de données non fiables dans une application web, généralement via une requête web.

  • Cross-site request forgery (CSRF) : vérification inadéquate du fait qu’une requête apparemment légitime et authentique a bien été envoyée intentionnellement. Ces attaques sont souvent lancées par des techniques d’ingénierie sociale, comme de faux e-mails qui incitent un utilisateur à cliquer sur un lien ou à envoyer une requête falsifiée à un site ou un serveur auquel il s’est déjà authentifié.

En général, les applications web et les sites web qui n’appliquent pas de contrôles de sécurité fondés sur la confiance zéro sont vulnérables aux attaques par porte dérobée, aux attaques par script, aux vers, aux chevaux de Troie et à d’autres exploits qui déploient du code malveillant pour semer le chaos dans l’infrastructure, les données et les systèmes.

Quelle est la vulnérabilité la plus courante ?

Les listes OWASP Top 10 et CWE-25 désignent toutes deux les failles par injection comme les vulnérabilités les plus courantes. Si l’injection de code peut prendre de nombreuses formes (SQL, NoSQL, OS, LDAP), elle consiste toujours à envoyer des données malveillantes à un interpréteur via une commande ou une requête. L’interpréteur est alors amené à effectuer des actions non autorisées, telles que l’exécution de commandes ou l’accès à des données.

Comment détecter et corriger les vulnérabilités de sécurité

Les vulnérabilités de sécurité sont détectées et corrigées dans le cadre de programmes formels de gestion des vulnérabilités. La gestion des vulnérabilités repose sur des bonnes pratiques et des procédures transversales permettant d’identifier, de hiérarchiser et de corriger les vulnérabilités rapidement et à grande échelle.

L’évaluation des vulnérabilités de sécurité est un élément important du programme de gestion des vulnérabilités. Elle vise à évaluer l’efficacité des processus et des procédures de gestion des vulnérabilités de l’organisation au moyen de tests d’intrusion et d’autres tests automatisés d’évaluation des vulnérabilités.

Schéma du cycle de développement logiciel sécurisé présentant les exigences, la conception, le développement, les tests, le déploiement et les activités de sécurité.

La gestion et l’évaluation des vulnérabilités de sécurité doivent faire partie intégrante d’un cycle de développement logiciel sécurisé (Secure SDLC), qui teste le code, les bibliothèques, les images de conteneurs et les autres composants à la recherche de faiblesses et de vulnérabilités à toutes les étapes du cycle de vie du produit.

Outils de correction des vulnérabilités de sécurité tout au long du SDLC

Les outils automatisés qui aident les équipes DevSecOps à mettre en œuvre un Secure SDLC comprennent :

De nombreux outils de gestion des vulnérabilités s’appuient sur une base de données de vulnérabilités connues pour effectuer des analyses et des évaluations. La base de données des vulnérabilités Snyk Intel, par exemple, s’appuie sur des sources publiques et propriétaires de vulnérabilités et de renseignement sur les menaces, qu’elle enrichit pour proposer le scanner de vulnérabilités open source le plus complet et le plus efficace du secteur.

Lancez-vous dans les compétitions Capture The Flag

Apprenez à résoudre des défis Capture The Flag en regardant à la demande notre atelier virtuel d’initiation.

Lire la suite

Blog

Les modèles de pointe ont trouvé les vulnérabilités. Seul l’attaquant a trouvé les chaînes d’exploitation.

L’analyse statique a détecté les failles, mais seuls des tests d’attaque en conditions réelles ont prouvé comment elles pouvaient être enchaînées pour provoquer des compromissions. Comparaison d’Evo COS, de Claude Security et de Claude Code Security.

feature insights context
Blog

Les attaques autonomes sont déjà là. La défense doit suivre leur rythme.

Les attaquants autonomes réduisent la fenêtre de défense. Découvrez comment la découverte, la correction, la validation et la prévention continues peuvent aider les équipes de sécurité à suivre le rythme.

Blog

Pourquoi les agents de codage IA créent-ils sans cesse des failles de contrôle d’accès ?

Les agents de codage IA peuvent générer une logique d’autorisation qui compile et passe la revue, tout en exposant les données d’un tenant à un autre. Découvrez pourquoi les failles de contrôle d’accès sont difficiles à détecter et comment les prévenir.