Veille sécuritaire et gestion des vulnérabilités : mener une recherche efficace, tout ce qu’il faut s’avoir pour ne pas passer à côté d’une faille

Assurer la sécurité d’un système est un processus permanent nécessitant d’être toujours au fait des nouvelles formes de vulnérabilités auxquelles ledit système pourrait être exposé. Qu’il s’agisse ainsi d’un poste de travail Windows, Linux ou autre ; d’un équipement réseau Cisco, MikroTik, Huawei ou encore un terminal mobile, et même d’un équipement de sécurité en lui-même, la veille sécuritaire est un impératif intégrant l’identification et l’analyse, prérequis indispensables à la correction des vulnérabilités matérielles ou logicielles susceptibles de servir de vecteurs d’attaque et porter atteinte au système à protéger.  Ce post, premier d’une série se rapportant à la veille sécuritaire et à la gestion des vulnérabilités, s’attardera sur la première étape sans laquelle, rien de pertinent ne pourra se passer par la suite, soit, l’identification. Comment mener une recherche de vulnérabilités efficace ? Je vous livre ci-dessous, tout ce qu’il faut savoir pour trouver, bien comprendre, comprendre les éléments de priorisation et ne pas passer à côté d’une faille.  

Découverte des vulnérabilités

La découverte d’une vulnérabilité est rarement le fruit du hasard et résulte le plus souvent d’une recherche motivée par le concepteur d’un système ou d’un hacker. Entre frénésie pour le premier et sentiment de réussite pour le second, nous verrons que les vulnérabilités dites « zero-day » revêtent entre autres, une attention particulière.

Acteurs et motivations

Divers types d’acteurs permettent de lancer des attaques dans le but d’éprouver un système et de mettre au jour d’éventuelles vulnérabilités notamment :

  • Des cybercriminels dont la motivation est généralement financière ;
  • Des hacktivistes qui sont principalement mus par la volonté de défendre une cause politique ou sociale et souhaitent que leurs attaques soient visibles afin d’attirer le maximum d’attention ;
  • Des entreprises ou des gouvernements menant des opérations d’espionnage industriel à l’endroit de la concurrence ou d’un gouvernement étranger ;
  • Des hackeurs évoluant en solo ou réunis au sein d’une organisation, intéressés par des programmes de « bug bounties » encore appelés programmes de récompense des vulnérabilités (VRP), initiés par des entreprises afin d’encourager les pirates informatiques à rechercher des failles. Bien évidemment, ne sont payés que ceux qui produisent des résultats qui, dans le cas d’espèce se caractérisent par la divulgation d’une vulnérabilité.

Temps de réponse et cas « zero-day »

« Zero-day » ou « 0-day » est une expression employée pour décrire les dernières vulnérabilités de sécurité détectées. En d’autres termes, elle désigne le fait que le fournisseur ou le développeur d’un système vient de prendre connaissance de la faille et qu’il a « zéro jour » pour la corriger. Dans le même ordre d’idées, une attaque zero-day survient lorsque des cybercriminels parviennent à exploiter une vulnérabilité avant que les développeurs ou les fournisseurs n’en aient pris conscience et qu’aucun correctif n’existe.

Les vulnérabilités « zero-day » peuvent ainsi être difficiles à corriger et méritent la plus grande vigilance dans la mesure où les attaques zero-day enregistrent un taux de réussite des plus élevés, qu’elles soient ciblées ou non.

On parlera d’une attaque zero-day ciblée avec des cibles bien définies à l’instar de certaines grandes entreprises, des organismes gouvernementaux, des célébrités ou autres.  A contrario, elle sera dite non-ciblée lorsque les victimes sont en réalité les utilisateurs d’un système vulnérable comme un navigateur, un système d’exploitation ou un autre produit grand public. Les attaques non-ciblées ont pour but d’impacter autant d’utilisateurs que possible.

Métriques (mesures d’impact) appliquées aux vulnérabilités

Lorsque des vulnérabilités sont découvertes, elles ne sauraient se valoir tant les conséquences qu’elles pourraient engendrer sont différentes. Plusieurs méthodes permettant d’évaluer la gravité de chacune d’entre elles existent mais, le Common Vulnerability Scoring System (CVSS) est la technique dominante.

Pour calculer le score se rapportant au niveau de gravité de chaque vulnérabilité, plusieurs paramètres représentés dans les « vecteurs CVSS » sont utilisés.  Ces derniers sont en réalité une représentation textuelle standardisée des dites métriques mais on parle aussi de chaîne vectorielle.

La chaîne vectorielle contient chaque acronyme de métrique, suivi de la valeur attribuée. Les métriques utilisées pour calculer le score sont divisées en trois groupes :

Groupe de métriques de Base :

Les métriques de base renseignent sur les caractéristiques intrinsèques d’une vulnérabilité qui ne changent pas au fil du temps ou des environnements utilisateur. Elles contiennent plusieurs autres métriques réparties entre les Exploitability Metrics, Impact Metrics et Scope Metrics.

Les Exploitability Metrics, indiquent le niveau de facilité avec laquelle un acteur malveillant peut exploiter une vulnérabilité. Ils définissent quatre métriques d’exploitation spécifiques :

  • Le vecteur d’attaque (AV) : indique le canal par lequel la vulnérabilité peut être exploitée (réseau, adjacent, local ou physique) ;
  • La complexité de l’attaque (AC) : permet de se faire une idée du niveau de savoirs et savoir-faire requis pour mener à bien l’attaque permettant d’exploiter la vulnérabilité ;
  • Les privilèges requis (PR) : donnent l’information concernant le niveau de privilèges nécessaires afin de réussir l’attaque exploitant la vulnérabilité ;
  • L’interaction utilisateur (UI) : permet de savoir si une interaction utilisateur particulière est requise pour exploiter la vulnérabilité.

Les Impact Metrics, quant à eux se concentrent sur l’impact que pourrait avoir une attaque exploitant la vulnérabilité sur les principaux axes de sécurité en informatiques à savoir :

  • L’impact sur la Confidentialité (C) : fait référence au volume de données accessibles dont pourrait disposer un cybercriminel après une attaque exploitant la vulnérabilité ;
  • L’impact sur l’Intégrité (I) : montre à quel point les données protégées ont été altérées ou modifiées après une attaque exploitant la vulnérabilité ;
  • L’impact sur la Disponibilité (A) : présente la capacité à refuser le service aux utilisateurs et à leurs données une fois qu’une attaque exploitant la vulnérabilité a pu être menée à bien.

Les Scope Metrics, ou plutôt la Scope Metric permet d’évaluer si une vulnérabilité dans un système ou un composant est susceptible d’affecter un autre système ou composant :

  • Portée (S) : indique si une vulnérabilité dans un composant affecte les ressources au-delà de sa portée de sécurité.

Groupe de métriques Temporelles :

Les métriques temporelles font référence aux caractéristiques d’une vulnérabilité qui peuvent changer au fil du temps, mais pas des environnements utilisateur. Il s’agit :

  • De la maturité du code d’exploitation (E) : permet de mesurer la difficulté pour un cybercriminel à exploiter une vulnérabilité ;
  • Du niveau de remédiation (RL) : indique jusqu’à quel degré une vulnérabilité peut être atténuée via des correctifs, des mises à niveau, etc ;
  • Du Report Confidence (RC) : permet de se faire une idée de la confiance à accorder aux sources indiquant l’existence d’une vulnérabilité et son exploitabilité.

Groupes de métriques Environnementales :

Les métriques environnementales renvoient aux caractéristiques d’une vulnérabilité qui sont pertinentes et uniques à l’environnement d’un utilisateur particulier. Il s’agit :

  • Du potentiel de dommages collatéraux (CDP) : renseigne sur le potentiel de perte de données, de productivité ou de revenus qui pourrait se concrétiser si jamais la vulnérabilité était exploitée ;
  • De la Target Distribution (TD) : donne une vue d’ensemble sur le nombre de systèmes vulnérables qui existent dans la nature ;
  • Des exigences de sécurité (CR, IR, AR) : il s’agit des grands classiques en sécurité informatique notamment, confidentialité, intégrité et disponibilité dans l’environnement utilisateur.

Sur la base de toutes ces métriques, le CVSS applique un calcul complexe permettant de ressortir le score final de gravité d’une vulnérabilité. Si nous prenons par exemple la chaîne vectorielle  CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H, nous pouvons nous rendre compte que la méthode de calcul tiendra compte des données suivantes :

  • CVSS version 3.1 ;
  • Le vecteur d’attaque est le réseau (N) ;
  • La complexité de l’attaque est faible (L) ;
  • Aucun privilège requis (N) ;
  • Aucune interaction de l’utilisateur (N) ;
  • La portée est inchangée (U) ;
  • Scores d’impact élevés pour la confidentialité, l’intégrité et la disponibilité (H).

La résultante sera donc un score numérique allant de 0 à 10, 10 étant la plus grave. Les scores CVSS sont pris en compte lors de la divulgation de données relatives aux vulnérabilités découvertes. Ils permettront aux utilisateurs ou responsables informatiques d’avoir une base pour jauger les conséquences ou les dommages que pourraient engendrer les vulnérabilités se rapportant à leurs systèmes et de prioriser leurs actions correctives. 

Bases de données de vulnérabilités

Les bases de données de vulnérabilités ont pour effet d’alléger le travail de recherche dans la mesure où, une base de données de vulnérabilités (VDB) est mise en place par ses administrateurs pour collecter, maintenir et diffuser des informations sur les vulnérabilités de sécurité informatique découvertes. Elle décrira généralement, la vulnérabilité identifiée, le score ou l’impact qui lui est attribué, des informations techniques et si possible, des solutions de contournement ou mises à jour permettant d’atténuer ou corriger le problème. Les bases de données de vulnérabilités les plus courantes sont les suivantes :

  • cve.org : CVE (Common Vulnerabilities and Exposures) est une base de données internationale sur les vulnérabilités de sécurité, gérée par MITRE Corporation et financée par la Cybersecurity and Infrastructure Security Agency (CISA) du département américain de la Sécurité intérieure. Le site Web cve.org sert de plate-forme publique qui permet aux utilisateurs de rechercher, d’utiliser et d’incorporer librement des informations dans leurs produits et services. Il est toutefois important de noter que le système CVE n’inclut pas les risques, les impacts, les correctifs ou autres informations techniques, et qu’il ne fournit pas de fonctionnalités de gestion ou d’évaluation des vulnérabilités. Il s’agit plutôt d’un élément clé que ces types de capacités peuvent exploiter.
  • Mitre : Mitre.org est une organisation bien connue qui gère de nombreuses initiatives de cybersécurité, notamment le programme CVE. Créé en 1999, le programme CVE vise à identifier, définir et cataloguer de manière standardisée les vulnérabilités de sécurité divulguées publiquement. Cela aide les professionnels de la sécurité, les organisations et les développeurs à traiter et à gérer efficacement les vulnérabilités de leurs systèmes.
  • National Vulnerability Database (NVD) : Le NVD est le référentiel du gouvernement américain de données de gestion des vulnérabilités basées sur des normes et représentées à l’aide du Security Content Automation Protocol (SCAP). Ces données permettent d’automatiser la gestion des vulnérabilités, la mesure de la sécurité et la conformité. Le NVD comprend des bases de données de références de listes de contrôle de sécurité, de failles logicielles liées à la sécurité, de mauvaises configurations, de noms de produits et de mesures d’impact.
  • VulnDB : VulnDB est une base de données de vulnérabilités qui fournit des informations complètes sur les vulnérabilités de sécurité connues dans les produits logiciels. Il s’agit de l’une des sources les plus importantes pour les personnes responsables du traitement des vulnérabilités, de la gestion des vulnérabilités, de l’analyse des exploits, des renseignements sur les cybermenaces et de la gestion des réponses aux incidents.
  • Security Database : Security Database est une grande base de données de vulnérabilités en Europe, ayant eu un impact significatif sur le paysage de la cybersécurité et offrant une multitude de ressources sur lesquelles les professionnels de la sécurité peuvent s’appuyer.
  • Vuldb : VulDB a été fondée en 1998 et appartient maintenant à pyxyp inc. VulDB fournit des informations sur les vulnérabilités de sécurité, y compris leurs détails techniques, la disponibilité des exploits et leur impact. Il s’agit d’une ressource précieuse pour la gestion des vulnérabilités, l’analyse des exploits, les renseignements sur les cybermenaces et la réponse aux incidents.
  • Known Exploited Vulnerabilities Catalog : maintenue par la CISA, cette base de données de vulnérabilités met à disposition des organisations un catalogue qu’elles devraient utiliser comme contribution à leur cadre de priorisation de la gestion des vulnérabilités.
  • The Exploit Database : la base de données d’exploits est un projet à but non lucratif fourni en tant que service public par OffSec dans le but de proposer la collection la plus complète d’exploits rassemblés via des soumissions directes, des listes de diffusion, ainsi que d’autres sources publiques, et de les présenter dans une base de données disponible gratuitement.
  • CERT Coordination Center : La base de données Vulnerability Notes fournit des informations sur les vulnérabilités logicielles. Les notes de vulnérabilité comprennent des résumés, des détails techniques, des informations sur les mesures correctives et des listes des fournisseurs concernés.

Ne pas passer à côté d’une faille requiert au préalable d’avoir les moyens de l’identifier et pour ce faire, une bonne compréhension des mécanismes entourant la recherche des vulnérabilités nous a permis de savoir d’où peuvent venir les alertes, qui sont ceux impliqués dans les recherches ainsi que les motivations de chacun. L’un des moyens les plus simples de suivre les résultats de ces travaux passe par l’exploitation des bases de données de vulnérabilités dont les principales ont été énumérées ; ce d’autant plus qu’une bonne partie d’entre elles repose sur CVE à la différence que, certaines permettent de mieux expliquer ou d’approfondir la recherche relative à une vulnérabilité en particulier. Que faire une fois une vulnérabilité identifiée ? Les étapes d’analyse et de correction feront l’objet de posts à venir dans le sciage de ce dossier consacré à la veille sécuritaire et à la gestion des vulnérabilités.

Sources:

Vous aimerez aussi...