Pentest, Phase de Scan et Identification des vulnérabilités

Pentest Identification vulnerabilites

Les pirates informatiques, pour réussir une cyberattaque contre le système de votre entreprise, doivent profiter d’une vulnérabilité. Il peut s’agir de ports ouverts qui leur permettront de pénétrer sur votre réseau interne, d’une application web mal sécurisée ou d’un firewall mal configuré par exemple. Un système informatique d’entreprise n’est pas figé et évolue constamment. Il est donc primordial d’établir régulièrement une cartographie du système d’information, des logiciels et du matériel le constituant. Un scan des vulnérabilités permet ainsi de détecter les failles de sécurité et de les corriger avant qu’elles ne puissent être exploitées.

En quoi consiste un scan de vulnérabilités ?

Une vulnérabilité est une faille de sécurité informatique. Elle peut se trouver au niveau des logiciels présents sur le réseau interne (progiciels, applicatif…) ou externe (applications web, extranet, sites web…). Elle peut également se trouver au niveau du matériel. Une erreur de conception, d’installation ou de configuration est généralement à l’origine de cette vulnérabilité.

Ces failles de sécurité potentiellement exploitables par une personne malveillante doivent absolument être repérées et corrigées. C’est l’objet d’un scan de vulnérabilités. Le scan consiste à explorer de façon automatisée l’ensemble des composants du système d’information à la recherche de failles de sécurité.

Un grand nombre d’équipements différents peuvent être testés : ordinateur, serveur, routeur, pare-feu, application, site web, objet connecté, robot, caméra IP, poste téléphonique sur IP… Les seules conditions nécessaires pour qu’un élément puisse être testé, sont qu’il soit joignable sur le réseau via une adresse IP et que le scanner utilisé dispose d’un module adapté pour communiquer.

Le scan de vulnérabilité pouvant être facilement automatisé, il va pouvoir être réalisé régulièrement de façon à s’assurer qu’une faille dans la sécurité informatique n’a vu le jour depuis le dernier audit.

Comment réaliser un scan de vulnérabilités ?

Les systèmes d’information sont de plus en plus complexes. Ils sont constitués de nombreux applicatifs reliés entre eux par un réseau. Chaque élément étant potentiellement vulnérable, les risques d’intrusion sont d’autant plus élevés. Il n’est donc pas envisageable de recourir à un examen manuel d’un système d’information pour en repérer les vulnérabilités.

Un scanner de vulnérabilité est utilisé afin d’automatiser et de faciliter la recherche de failles de sécurité. Il s’agit d’un logiciel capable d’explorer le réseau et d’effectuer une cartographie des matériels et logiciels utilisés. Chaque élément identifié est examiné afin de déterminer s’il a un niveau de sécurité suffisant. Un scanner de vulnérabilité est en mesure de déterminer par exemple si certains ports sont ouverts sur un serveur alors qu’ils ne devraient pas l’être, si une application est correctement protégée contre les différentes cyberattaques possibles ou encore si des services sont actifs (SSH, http…) alors qu’ils ne sont pas utilisés.

Comment fonctionne un scanner de vulnérabilité ?

Les scanners peuvent utiliser plusieurs méthodes de détection complémentaires.

Le scan de configuration

Une mauvaise configuration est aussi dangereuse qu’un code source défaillant. Trop de serveurs ou de logiciels installés fonctionnent encore avec la configuration par défaut. Le scanner va donc examiner la configuration des composants qu’il rencontre pour vérifier s’il existe des vulnérabilités.

L’exploration active

Des vulnérabilités sont régulièrement identifiées sur des logiciels ou du matériel. Lorsqu’elles sont rendues publiques, elles peuvent être accompagnées d’un programme permettant de les exploiter. Le scanner de vulnérabilité peut donc exploiter ce programme afin de vérifier si la faille de sécurité recherchée est présente ou non au sein du système d’information. Cette méthode est particulièrement efficace. Il faut cependant être attentif au fait que l’exploitation de ce programme externe peut perturber le fonctionnement du système audité. Il est donc nécessaire d’être particulièrement prudent.

Le footprinting de version

Très répandue parce que très simple à mettre en place, cette méthode consiste à exploiter les informations transmises par les cibles du scanner elles-mêmes. Souvent, les services et applications, lorsqu’ils sont sollicités, renvoient des informations les concernant. Par exemple, dans l’entête d’une page web, il est généralement possible d’identifier précisément le serveur web utilisé. Le scanner peut par exemple lire dans l’entête renvoyée par le serveur « Apache httpd 2.4.46 ». Il saura alors que le serveur web utilisée est Apache et que la version installée est la 2.4.46. A partir de ces informations, il est facile de trouver la liste des vulnérabilités publiques recensées pour cette version. Chaque vulnérabilité peut alors être testée par le scanner.

L’inconvénient de cette méthode est que si un logiciel ou un serveur est configuré pour ne pas renvoyer d’informations sur son nom ou sa version, il sera impossible de mener une analyse fiable.

Le scan authentifié

Cette méthode consiste à réaliser le test à partir d’un compte utilisateur authentifié sur la machine. Le scanner ne se limite pas ainsi à ce qu’il peut trouver depuis l’extérieur. Il peut analyser le contenu de la machine et identifier par exemple des logiciels obsolètes, n’ayant pas fait l’objet d’une mise à jour depuis trop longtemps, et donc susceptibles d’être vulnérables.

Cette méthode est particulièrement fiable et rapide (même si elle nécessite un compte par machine analysée) et constitue un excellent complément aux autres méthodes.

Que faire une fois les vulnérabilités identifiées ?

Le scan des vulnérabilités d’un système d’information permet de produire un rapport.

Une liste complète des vulnérabilités est constituée et leurs différentes caractéristiques sont détaillées. Elles sont classées par niveau de criticité. L’échelle comporte quatre niveaux. On peut trouver des vulnérabilités mineures (faible impact), moyennes (impact limité ou nécessitant des conditions particulières pour être exploitées), majeures (permettant une prise de contrôle à distance, mais difficiles à exploiter) ou critiques (permettant une prise de contrôle à distance et faciles à exploiter).

Le rapport fourni permet également de lister ces vulnérabilités par machine.

A chaque vulnérabilité est également associé un score CVSS (Common Vulnerability Scoring System) allant de 0 à 10. Ce score permet de pondérer les risques liés à une vulnérabilité identifiée sur une machine. Parmi les éléments pris en compte pour calculer ce score, on trouve notamment le vecteur d’attaque, la complexité de mise en œuvre, les droits utilisateurs requis, l’interaction nécessaire avec un utilisateur, le périmètre concerné et les impacts potentiels lors d’une exploitation réussie.

La suite à donner à un scan de vulnérabilité dépend ensuite de la DSI. En fonction de la criticité et du score CVSS, il va être possible de prioriser les travaux à faire pour éliminer les failles de sécurité les plus dangereuses.

Vous pourriez également être intéressé par les articles suivants :