Comment nous avons construit la gestion des vulnérabilités



Introduction au problème


Dans notre pratique de travailler avec différents types de clients - des grandes entreprises internationales aux petites entreprises ou même aux entrepreneurs individuels - nous observons des problèmes similaires lorsque nous essayons de travailler systématiquement avec des vulnérabilités.

Bien que l'entreprise soit relativement petite, il suffit d'avoir un ou plusieurs scanners de vulnérabilité et un spécialiste qui vérifieront périodiquement l'ensemble de l'infrastructure, couvrant les problèmes les plus évidents ou les plus faciles à résoudre.

En pratique, lorsqu'une entreprise se développe, que le nombre d'appareils sur le réseau augmente, de nouveaux systèmes d'information sont utilisés, y compris des non standard, une approche simple ne suffit plus, car l'entreprise veut des réponses aux questions:

  • Et avec quelles vulnérabilités du rapport du scanner (il peut y avoir des milliers et des dizaines de milliers) vous devez travailler et pourquoi?
  • Combien cela coûte-t-il de corriger ces vulnérabilités?
  • Et quelqu'un peut-il vraiment les utiliser pour lancer une attaque?
  • Et qu'est-ce que je risque si je ne corrige rien?
  • Et comment s'assurer que tout est réparé?

Tous les agents de sécurité et administrateurs système n'auront pas immédiatement une réponse claire à toutes ces questions. N'oubliez pas non plus que la gestion de la vulnérabilité en soi est un processus assez compliqué et que de nombreux facteurs influencent la prise de décision:

  • risques élevés de devenir victime d'une attaque de masse ou ciblée si les vulnérabilités ne sont pas éliminées à temps (en particulier le périmètre externe);
  • le coût élevé de l'élimination de nombreuses vulnérabilités, en particulier s'il n'y a pas de correctif prêt à l'emploi ou si une vulnérabilité est exposée à un grand nombre de périphériques distribués (il s'agit souvent d'un facteur d'arrêt et, par conséquent, des problèmes persistent);
  • si différentes personnes ou même des entreprises qui n'ont pas toujours les qualifications nécessaires pour évaluer correctement les vulnérabilités détectées sont responsables de différents types d'équipements, le processus d'élimination peut prendre beaucoup de temps ou ne pas démarrer du tout;
  • si des équipements spécialisés ou des systèmes SCADA sont utilisés, il y a une forte probabilité d'absence des correctifs nécessaires du fabricant ou de l'impossibilité de mettre à jour le système en principe.

Pour toutes ces raisons, le processus de gestion des vulnérabilités, mis en œuvre au hasard, ne semble pas efficace et compréhensible aux yeux de l'entreprise.

Compte tenu des besoins de l'entreprise et de la compréhension des spécificités du travail avec les vulnérabilités de sécurité de l'information, nous à Akribia avons mis au point un service distinct.

Qu'avons-nous trouvé?


Nous pensions que la gestion des vulnérabilités devait être abordée systématiquement, comme tout processus. Et c'est précisément le processus, d'ailleurs, continu et itératif, composé de plusieurs étapes.

Connexion client


Nous prenons en charge la fourniture, la configuration et le support de tous les outils nécessaires. Le client doit uniquement allouer un serveur virtuel ou physique (éventuellement plusieurs si le réseau est étendu et distribué). Nous installerons nous-mêmes tout le nécessaire et configurerons pour le bon fonctionnement.

Inventaire et profilage des actifs


En bref, il s'agit d'identifier tous les appareils sur le réseau, de les diviser en groupes du même type (le niveau de détail d'une telle panne peut varier en fonction de l'échelle du réseau du client ou de la présence d'un grand nombre d'appareils spécifiques), sélectionner les groupes pour lesquels le service est fourni, découvrir responsables des groupes sélectionnés.



Il est important non seulement d'effectuer cette procédure une fois, mais de mettre en évidence les modèles afin de pouvoir comprendre à tout moment ce qui se passe sur le réseau, trouver de nouveaux appareils, trouver d'anciens appareils qui ont été déplacés, trouver de nouveaux sous-types au sein des groupes, etc. C'est important. L'inventaire se produit constamment avec une fréquence donnée. Dans notre pratique, nous sommes arrivés à la conclusion que sans comprendre la structure des actifs, une gestion efficace de la vulnérabilité n'est pas possible.

Nous avons travaillé sur l'algorithme de profilage d'actifs pendant longtemps, chaque fois que nous avons ajouté de nouvelles conditions ou tout modifié à partir de zéro. Nous ne révélerons pas tous les détails techniques et ne donnerons pas de lignes de code qui implémentent notre algorithme, nous ne donnons qu'une séquence générale d'actions:

  1. Le client fournit un plan de réseau IP.
  2. À l'aide d'un scanner réseau, une empreinte digitale est formée pour chaque appareil en fonction des ports réseau ouverts et du système d'exploitation.
  3. Les profils sont combinés par périphérique et type (par exemple, équipement Cisco Catalyst 2960 \ Network).
  4. Lorsqu'un nouvel appareil apparaît, le profil le plus similaire est recherché.
  5. Si la précision est insuffisante, le type d'appareil est spécifié par le client.
  6. Des analyses de réseau répétées sont effectuées périodiquement pour mettre à jour les données et rechercher de nouveaux appareils et types.

En l'absence d'un plan IP précis du réseau (par exemple, lors de l'utilisation de DHCP ou du "facteur humain"), l'option de profilage en ligne basée sur plusieurs adresses IP connues est possible. Ensuite, des périphériques similaires sont définis dans le type et le profil est mis à niveau.

Cette approche nous permet de déterminer le type d'appareil avec une précision d'environ 95%, mais nous en voulons toujours plus. Nous sommes ouverts à de nouvelles idées, commentaires et commentaires. S'il y a quelque chose que nous n'avons pas pris en compte, nous sommes prêts à en discuter dans les commentaires.

Calendrier d'analyse


Lorsque nous disposons déjà de toutes les informations nécessaires sur le réseau du client, nous établissons un calendrier de recherche des vulnérabilités, en tenant compte de la fréquence de contrôle requise pour chaque type d'appareil. La fréquence peut être quelconque - de 1 jour à 1 an. La fréquence dépend d'une part de la rapidité et de la fréquence à laquelle le client est prêt à travailler avec les vulnérabilités de l'un ou l'autre équipement, d'autre part elle affecte le prix du service.

Par exemple, un plan pourrait ressembler à ceci:



Il est important de noter que nous recommandons fortement de vérifier quotidiennement le périmètre du réseau externe pour minimiser le risque d'exploiter les vulnérabilités d'un jour (qui viennent d'être publiées). La même recommandation s'applique aux ressources Web publiques du client.

En fait, la numérisation


Une semaine avant la date de début prévue pour l'analyse des groupes d'appareils, nous contactons le responsable du groupe, l'informons des dates d'analyse et envoyons une liste complète des appareils que nous allons vérifier. À ce stade, vous pouvez ajuster (si nécessaire) la zone de vérification. Ceci est fait pour minimiser les risques de reconnaissance incorrecte des appareils sur le réseau.

Une fois l'analyse terminée, la personne responsable est également informée. C'est-à-dire les parties prenantes sont TOUJOURS à jour.

Nous utilisons plusieurs scanners différents, y compris des outils distincts pour rechercher les vulnérabilités dans les systèmes Web. Nous obtenons donc plus d'informations pour l'analyse et pouvons trouver plus de problèmes potentiels.

Pour optimiser les coûts, nous ne pouvons pas analyser l'ensemble du groupe d'appareils du même type, mais nous limiter à un échantillon représentatif, par exemple, 30 à 50% d'appareils sélectionnés au hasard dans le groupe ou 30 à 50% d'appareils dans chaque bureau géographiquement distribué. Lorsque des vulnérabilités critiques sont détectées sur des appareils sélectifs, une recherche est lancée pour rechercher des vulnérabilités spécifiques déjà présentes sur tous les appareils du groupe. Nous obtenons donc la couverture la plus complète en moins de temps.

Il est important de noter qu'il existe des vulnérabilités distinctes qui ne sont pas déterminées par les outils standard. Lorsque nous commençons à analyser un certain type d'appareil, nous vérifions toutes les vulnérabilités publiques et nous assurons que nos scanners peuvent les trouver. Si nous comprenons que les outils standard ne suffisent pas, nous recherchons manuellement les vulnérabilités individuelles ou développons nos propres outils de vérification.

Et surtout, lorsque des informations sur une nouvelle vulnérabilité dangereuse apparaissent dans l'espace public, nous n'attendrons pas une analyse planifiée. Tous les clients qui pourraient potentiellement souffrir de la vulnérabilité qui vient d'être découverte seront rapidement informés du problème et nous procéderons à une vérification imprévue.

En général, une description détaillée de notre technologie de recherche de vulnérabilités dépasse quelque peu le cadre de cet article, mais vous pouvez en prendre connaissance par la présentation que nous avons faite au SOC-Forum en 2017.

Analyse des résultats de l'analyse


Si vous avez déjà exécuté un scanner de vulnérabilités sur un réseau d'entreprise de plus de 100 hôtes, vous vous souvenez probablement du sentiment même qui se produit lorsque vous regardez une liste d'un kilomètre d'enregistrements du même type, à partir du contenu dont, à première vue, peu est compris. Sans connaissances particulières, il est difficile d'évaluer correctement ce qu'il faut laisser tel quel, ce qui doit être réparé et dans quel ordre agir.

Nous prenons cette étape sur nous-mêmes, nous examinons les résultats, sélectionnons les problèmes vraiment critiques qui peuvent nuire réellement à l’entreprise du client.

Nous évaluons des paramètres tels que:

  • Disponibilité d'un appareil / service vulnérable pour un attaquant potentiel;
  • la présence d'un exploit public;
  • complexité du fonctionnement;
  • risque potentiel pour l'entreprise;
  • Est-ce un faux positif?
  • complexité de l'élimination;
  • et ainsi de suite.

Après traitement, les vulnérabilités «vérifiées et approuvées» sont publiées par nous dans le système de gestion des incidents (nous en parlerons séparément), où le personnel du client peut les consulter, poser des questions, les amener au travail ou les rejeter si les risques sont acceptés.

Si nécessaire, nous organisons également une consultation avec la personne responsable des appareils vulnérables et expliquons en détail ce qui a été trouvé, à quoi il fait face et quelles sont les options pour minimiser les risques.

Une fois la vulnérabilité transférée au travail, la balle va du côté client et nous procédons à l'analyse du groupe d'appareils suivant.

Mais le processus du premier groupe ne s'arrête pas là.

Contrôle de la vulnérabilité


Dans le système, pour chaque vulnérabilité publiée, vous pouvez définir le statut et la date limite d'élimination. Nous surveillons les changements de statut ainsi que les délais.

Si la vulnérabilité est fermée par le client, nous le voyons et exécutons une vérification pour nous assurer que la vulnérabilité a vraiment disparu. Parce que la vérification n'est lancée que pour une vulnérabilité, alors cela ne prend pas beaucoup de temps, le résultat peut être obtenu en une journée pour des centaines de milliers d'hôtes ou même en quelques secondes pour un petit groupe d'appareils.

Si la vulnérabilité est vraiment corrigée, nous le confirmons. Si la vulnérabilité sur tout ou partie des périphériques du groupe est préservée, nous reviendrons pour révision.

Le cycle de travail avec chaque vulnérabilité se termine uniquement lorsque nous confirmons qu'elle n'est plus sur tous les appareils vulnérables.

Le schéma général ressemble à ceci:



Dans le processus de contrôle de l'élimination des vulnérabilités, 2 sous-processus auxiliaires peuvent être distingués: le contrôle des délais et le travail avec les responsables de la fermeture de la vulnérabilité côté client.

Contrôle de synchronisation

Je répète, pour chaque vulnérabilité, un délai doit être attribué pour son élimination. Ce paramètre est défini par le client indépendamment, c'est-à-dire nous ne dictons pas la vitesse à laquelle les employés des clients responsables doivent travailler, mais nous surveillons la réalisation des objectifs. Si les tâches sont en retard, le titulaire du processus de gestion des vulnérabilités du client en est informé. Des informations sur des vulnérabilités qui ont été fermées à temps ou expirées sont reflétées par nous dans des rapports périodiques avec les noms, pour ainsi dire, «d'excellents élèves» et «doubles». Nous considérons également un tel indicateur comme la vitesse moyenne de correction des vulnérabilités. Ainsi, le client recueille les informations nécessaires à la planification, au chargement responsable, ainsi qu'à leurs réalisations ou omissions.

Travailler avec des responsables

Parfois, pour des vulnérabilités individuelles, il est nécessaire d'affecter plusieurs personnes responsables, de transférer tout ou partie du travail sur la tâche à une autre personne, ou simplement de changer la personne responsable, car la première a échoué, est partie en vacances, en arrêt maladie, etc. Tout cela nous permet de mettre en place notre système.

L'image ci-dessous montre le schéma du service dans le contexte d'une vulnérabilité.


Efficacité


C'est ainsi que nous avons construit le processus de travail et voyons dans notre approche un certain nombre d'avantages et d'opportunités qui aideront à travailler plus efficacement avec les vulnérabilités et en même temps à résoudre les problèmes identifiés dans la première partie de l'article:

  1. Nous nous engageons non seulement à lancer des scanners pour rechercher les vulnérabilités du réseau, mais aussi à analyser les résultats de leur travail. Nous filtrons les excès et le résultat final est une liste de vulnérabilités avec lesquelles nous pouvons et devons travailler.
  2. En faisant cette liste et en la présentant aux spécialistes du client responsable, nous écrivons toujours 2 choses: une description détaillée de la signification de la vulnérabilité et de l'impact négatif sur l'entreprise qu'elle exerce, et des recommandations pour éliminer ou minimiser les risques. Ainsi, vous pouvez toujours comprendre ce qui se passera si vous ne faites rien, et vous pouvez estimer le temps et le coût de la mise en œuvre des mesures recommandées.
  3. S'il subsiste des doutes ou des arguments en faveur de l'élimination d'une certaine vulnérabilité, on peut en outre tester la possibilité d'exploiter cette vulnérabilité en conditions réelles ou proches de réelles. Après un tel «mini-pentest», on verra à quel point il est possible et difficile pour un attaquant potentiel de mener une attaque.
  4. Enfin, lorsque le travail de suppression de vulnérabilité est terminé, nous le vérifions toujours. Ainsi, le risque d'erreurs ou d'omissions peut être éliminé.

Et le client, à son tour, reçoit de précieuses opportunités à notre avis et peut:

  • se concentrer sur des groupes d'appareils vraiment importants et surveiller leur état plus souvent;
  • se concentrer sur les vulnérabilités vraiment dangereuses qui peuvent causer de réels dommages;
  • surveiller le travail sur chaque vulnérabilité, suivre les changements de statut et les délais;
  • recevoir des conseils individuels sur la fermeture des vulnérabilités;
  • libérer le temps de ses collaborateurs nécessaire au lancement et au traitement des résultats des scans, ainsi qu'à la mise en place et au support de tous les outils nécessaires;
  • Eh bien, et en prime pour le directeur financier - traduire les coûts d'investissement liés à l'achat de vos propres outils de numérisation en coûts d'exploitation pour payer les services d'experts.

Intéressant? Dans la section services de notre site Web, vous pouvez voir les prix, ainsi que commander des services de test à des conditions spéciales.

Source: https://habr.com/ru/post/fr460048/


All Articles