Brevet FR3128544A1 — publié le 20230428

L’invention concerne un système d’analyse de la sécurité informatique d’un système d’information (10) comportant un ensemble de périphériques (11-14) reliés en réseau ; le système comportant : - un agent (15) installé sur plusieurs périphériques ; et - une unité de centralisation (16) connectée au réseau ; chaque agent comportant : - un module d’identification configuré pour détecter les composants du périphérique ; et - un module d’exécution configuré pour exécuter les requêtes envoyées par l’unité de centralisation ; l’unité de centralisation comportant : - un module d’identification de l’ensemble des périphériques du réseau ; - un module de génération de mesures permettant de détecter des informations de sécurité ; - un module d’interprétation des résultats des mesures, configuré pour détecter si les périphériques répondent à plusieurs recommandations de sécurité ; et - un module d’estimation d’une conformité à des objectifs de sécurité en fonction des réponses des périphériques. Figure pour abrégé : Fig 1 SYSTEME D’ANALYSE DE LA SECURITE INFORMATIQUE D’UN SYSTEME D’INFORMATION L’invention concerne le domaine de la sécurité informatique et, elle vise plus particulièrement, l’analyse du niveau de sécurité informatique d’un système d’information afin de permettre à un opérateur de mettre en place les éventuels correctifs de sécurités nécessaires. Au sens de l’invention, un « système d’information » est un ensemble organisé de ressources qui permet de collecter, stocker, traiter et distribuer de l’information, grâce à un réseau de périphériques, par exemple des ordinateurs. L’opérateur peut correspondre à un responsable de la sécurité des systèmes d’information, ou RSSI, également appelé CISO pour « Chief Information Security Officer » dans la littérature anglo-saxonne, ou tout autre personne en charge de la sécurité d’un système d’information. La sécurité informatique des systèmes d’information connait un besoin croissant avec le développement du numérique et de la dématérialisation. Ainsi, la problématique d’analyse du niveau de sécurité informatique d’un système d’information concerne désormais tous les secteurs. Par exemple, l’invention peut être utilisée pour analyser la sécurité informatique d’un système d’information d’une entreprise ou d’une collectivité territoriale. Art antérieur Il existe plusieurs solutions permettant d’analyser la sécurité informatique d’un système d’information. Certaines solutions utilisent des logiciels malveillants pour tester la résistance des ordinateurs d’un système d’information aux tentatives d’intrusions, de manière analogue aux pratiques qui pourraient être utilisées par un pirate informatique. Pour ce faire, le document EP 3643036 propose d'utiliser un agent installé sur chaque ordinateur d’un système d’information. L’agent est utilisé pour lancer des attaques préprogrammées sur les différents ordinateurs afin d'obtenir un score de vulnérabilité en fonction des failles détectées lors de ces attaques. Par exemple, une attaque consiste à lancer un programme malveillant de collecte des mots de passe administrateur des périphériques. Cependant, ces solutions utilisant des simulations d’attaques sont peu fiables pour analyser la résistance d’un système d’information aux attaques que peuvent mener les pirates informatiques car les stratégies d’attaques des pirates informatiques évoluent constamment. En outre, ces solutions doivent présenter des algorithmes très distincts d’un système d’exploitation à un autre. Or, dans un système d’information, plusieurs systèmes d’exploitation peuvent cohabiter, qui plus est avec des versions différentes. Par exemple, le réseau d’une entreprise peut permettre l’accès à des téléphones fonctionnant avec le système d’exploitation de Google ou d’Apple alors que les ordinateurs et les serveurs peuvent présenter des systèmes d’exploitation de Microsoft avec plusieurs version distinctes. Dans ces conditions, un agent réalisant des simulations d’attaques sur ces différents systèmes d’exploitation serait très complexe à mettre en œuvre car il devrait intégrer les possibilités d’inspection de tous les systèmes, ou il devrait être différent d’un système à un autre. En tous les cas, il serait nécessaire de mettre à jour l’agent à chaque modification des composants matériels et/ou logiciels. Une autre solution consiste à détecter les modifications réalisées par les utilisateurs ou les logiciels malveillants présents sur les ordinateurs d’un système d’information. Pour ce faire, chaque système d’exploitation du système d’information est dupliqué sous la forme d’une configuration de référence stockée sur un serveur. Un agent installé sur les ordinateurs du système d’information est configuré pour comparer périodiquement la configuration de l’ordinateur sur lequel il est installé avec la configuration de référence pour détecter des éventuelles failles de sécurité. Cette solution est par exemple décrite dans le document US 10,412,120. Cette solution pose encore le problème de l’interopérabilité de la solution car il convient d’utiliser un grand nombre de configurations de référence et de les mettre à jour régulièrement pour pouvoir détecter les éventuelles failles de sécurités d’un ensemble de périphériques présentant des systèmes d’exploitation et/ou des versions distincts. Dans tous les cas, avec ces deux premières solutions, des failles de sécurités peuvent être exploitées lorsqu’un ordinateur est connecté sur le réseau sans que l’agent ne soit installé. Pour résoudre ce problème, une autre solution consiste à analyser l’ensemble des informations transmises par le réseau d’un système d’information pour détecter des communications provenant éventuellement d’un logiciel malveillant. En effet, un logiciel malveillant est souvent configuré pour communiquer avec un pirate informatique distant. Pour ce faire, des communications réseaux génèrent classiquement un trafic réseau à des heures inattendues, à destination ou en provenance d’adresses réseaux suspectes. Par exemple, lorsqu’un trafic réseau important est constaté entre 23h et minuit alors que l’utilisateur de l’ordinateur n’est pas présent dans une entreprise, il peut être considéré que ce trafic provient d’un logiciel malveillant si l’adresse réseau à destination de ce trafic ne correspond pas à une adresse connue, typiquement l’adresse d’un serveur de mis à jour. Une telle solution est par exemple décrite dans le document US 10,686,825. Cependant, cette solution permet uniquement de détecter, au cours du temps, l’utilisation d’une faille de sécurité mais elle ne permet pas de traiter les causes de cette faille de sécurité. De nos jours, la solution la plus efficace pour traiter les causes des failles de sécurité est encore de faire une analyse de la conformité de l’ensemble des périphériques d’un système d’information avec un ensemble de recommandations de sécurité. Ces recommandations sont classiquement fournies dans un référentiel qui peut prendre la forme d'une norme ou d'un guide rédigé par un organisme agréé, par exemple en France, l'Autorité Nationale en matière de Sécurité et de défense des Systèmes d'Information (ANSSI). L’ANSSI propose 40 mesures visant à garantir la sécurité d’un système d’information. La catégorie « SENSIBILISER ET FORMER » regroupe les trois mesures suivantes : 1. Former les équipes opérationnelles à la sécurité des systèmes d'information ; 2. Sensibiliser les utilisateurs aux bonnes pratiques élémentaires de sécurité informatique ; et 3. Maîtriser les risques de l'infogérance. La catégorie « CONNAITRE LE SYSTEME D'INFORMATION » regroupe les quatre mesures suivantes : 4. Identifier les informations et serveurs les plus sensibles et maintenir un schéma du réseau ; 5. Disposer d’un inventaire exhaustif des comptes privilégiés et le maintenir à jour ; 6. Organiser les procédures d’arrivée, de départ et de changement de fonction des utilisateurs ; et 7. Autoriser la connexion au réseau de l’entité aux seuls équipements maîtrisés. La catégorie « AUTHENTIFIER ET CONTRÔLER LES ACCES » regroupe les onze mesures suivantes : 8. Identifier nommément chaque personne accédant au système et distinguer les rôles utilisateur/administrateur ; 9. Attribuer les bons droits sur les ressources sensibles du système d’information ; 10. Définir et vérifier des règles de choix et de dimensionnement des mots de passe ; 11. Protéger les mots de passe stockés sur les systèmes ; 12. Changer les éléments d’authentification par défaut sur les équipements et services ; 13. Privilégier lorsque c’est possible une authentification forte ; 14. Mettre en place un niveau de sécurité minimal sur l’ensemble du parc informatique ; 15. Se protéger des menaces relatives à l’utilisation de supports amovibles ; 16. Utiliser un outil de gestion centralisée afin d’homogénéiser les politiques de sécurité ; 17. Activer et configurer le pare-feu local des postes de travail ; et 18. Chiffrer les données sensibles transmises par voie Internet. La catégorie « SECURISER LE RESEAU » regroupe les huit mesures suivantes : 19. Segmenter le réseau et mettre en place un cloisonnement entre ces zones ; 20. S’assurer de la sécurité des réseaux d’accès Wi-Fi et de la séparation des usages ; 21. Utiliser des protocoles réseaux sécurisés dès qu’ils existent ; 22. Mettre en place une passerelle d’accès sécurisé à Internet ; 23. Cloisonner les services visibles depuis Internet du reste du système d’information ; 24. Protéger sa messagerie professionnelle ; 25. Sécuriser les interconnexions réseau dédiées avec les partenaires ; et 26. Contrôler et protéger l’accès aux salles serveurs et aux locaux techniques. La catégorie « SECURISER L'ADMINISTRATION » regroupe les trois mesures suivantes : 27. Interdire l’accès à Internet depuis les postes ou serveurs utilisés pour l’administration du système d’information ; 28. Utiliser un réseau dédié et cloisonné pour l’administration du système d’information ; et 29. Limiter au strict besoin opérationnel les droits d’administration sur les postes de travail. La catégorie « GERER LE NOMADISME » regroupe les quatre mesures suivantes : 30. Prendre des mesures de sécurisation physique des terminaux nomades ; 31. Chiffrer les données sensibles, en particulier sur le matériel potentiellement perdable ; 32. Sécuriser la connexion réseau des postes utilisés en situation de nomadisme ; et 33. Adopter des politiques de sécurité dédiées aux terminaux mobiles. Pour finir, la catégorie « MAINTENIR LE SYSTEME D'INFORMATION A JOUR » regroupe les sept mesures suivantes : 34. Définir une politique de mise à jour des composants du système d’information ; 35. Anticiper la fin de la maintenance des logiciels et systèmes et limiter les adhérences logicielles ; 36. Activer et configurer les journaux des composants les plus importants ; 37. Définir et appliquer une politique de sauvegarde des composants critiques ; 38. Procéder à des contrôles et audits de sécurité réguliers puis appliquer les actions correctives associées ; 39. Désigner un référent en sécurité des systèmes d’information et le faire connaître auprès du personnel ; et 40. Définir une procédure de gestion des incidents de sécurité. Pour analyser la sécurité informatique d’un système d’information à partir de ce guide de l’ANSSI, un RSSI analyse la structure et la gestion du réseau du système d’information, ainsi que les mesures de sécurité mises en place sur chaque périphérique du système d’information. Pour ce faire, le RSSI doit donc se connecter sur chaque périphérique pour rechercher, par exemple, si l’accès au périphérique est protégé par un mot de passe (mesure 11) ou si le système d’exploitation du périphérique est à jour (mesure 34). Classiquement, cette analyse est réalisée tous les 6 mois ou tous les ans, compte tenu du temps nécessaire pour rechercher toutes les informations requises. En fonction de la conformité ou non du système d’information à l’ensemble des recommandations de l’ANSSI, il est possible d’obtenir un score de sécurité informatique. La définition de ce score peut prendre en compte différents poids en fonction de l’importance de chaque catégorie. Par exemple, le document US 10,592,938 propose de calculer un score de sécurité informatique d’un système d’information en fonction de réponses fournies sur la base d’un questionnaire reprenant une grande partie des recommandations de l’ANSSI. Le problème de cette solution réside dans le temps d’analyse, qui empêche que l’analyse ne soit réalisée suffisamment souvent, si bien que des failles de sécurité peuvent apparaitre entre deux analyses et il est possible de devoir attendre plusieurs mois avant de détecter ces failles de sécurité lors de la prochaine analyse. Le problème technique de l’invention est donc d’obtenir une analyse plus rapide de la sécurité informatique d’un système d’information sur la base de la conformité des périphériques du système d’information avec des recommandations de sécurités, par exemple les recommandations de l’ANSSI. Pour répondre à ce problème technique, l’invention propose d’utiliser des agents installés sur chaque périphérique du système d’information ainsi qu’une unité de centralisation configurée pour communiquer avec les différents agents. Les agents sont des programmes très simples qui permettent principalement de détecter la configuration matérielle et/ou logicielle des périphériques et d’exécuter des commandes transmises par l’unité de centralisation. L’unité de centralisation permet, pour sa part, de générer des requêtes circonstanciées en fonction de la configuration matérielle et/ou logicielle de chaque périphérique de sorte à obtenir des mesures de conformité ou non à des recommandations de sécurité. Ainsi, l’invention propose d’automatiser une partie des mesures de conformité à des recommandations de sécurité pour simplifier l’analyse de la sécurité informatique d’un système d’information. Il s’ensuit que les mesures automatisées peuvent être réalisées très souvent, par exemple une fois par jour voire une fois par heure. Les mesures peuvent être soit issues d’un référentiel soit correspondre à une analyse ponctuelle issue d'un bulletin de sécurité comme la recherche d'un marqueur d'une cyber menace. A cet effet, l’invention concerne un système mis en œuvre par ordinateur d’analyse de la sécurité informatique d’un système d’information comportant un ensemble de périphériques reliés en réseau ; le système d’analyse comportant : - un agent installé sur plusieurs périphériques ; et - une unité de centralisation connectée au réseau du système d’information ; chaque agent comportant : - un module de communication configuré pour établir une communication avec l’unité de centralisation ; - un module d’identification configuré pour détecter les composants matériels et/ou logiciels du périphérique sur lequel l’agent est installé ; et - un module d’exécution configuré pour exécuter les requêtes envoyées par l’unité de centralisation et transmettre les résultats de ces requêtes ; l’unité de centralisation comportant : - un module d’identification de l’ensemble des périphériques du réseau du système d’information, le module d’identification étant configuré pour détecter les agents installés sur ces périphériques et obtenir la liste des composants matériels et/ou logiciels des périphériques ; - un module de communication configuré pour établir une communication avec les agents ; - un module de génération de mesures permettant de détecter des informations de sécurité, le module de génération de mesures étant configuré pour générer des requêtes circonstanciées en fonction des composants matériels et/ou logiciels des périphériques ; - un module d’interprétation des résultats des mesures, configuré pour détecter si les périphériques répondent à plusieurs recommandations de sécurité ; et - un module d’estimation d’une conformité à des objectifs de sécurité en fonction des réponses des périphériques aux recommandations de sécurité. De préférence, la communication établie entre chaque agent et l’unité de centralisation correspond à une communication utilisant un protocole sécurisé, par exemple le protocole SFTP, SSH. Pour ce faire, les modules de communication de l’agent et de l’unité de centralisation sont configurés pour établir une communication sécurisée. L’agent peut correspondre à un service Microsoft Windows ou un daemon Linux installé sur un système d’exploitation d’un périphérique. Bien entendu, d’autres systèmes d’exploitation peuvent être utilisés sans changer l’invention et en adaptant l’agent. Pour installer l’agent sur chaque périphérique du réseau, un opérateur peut se déplacer physiquement au niveau de chaque périphérique pour installer cet agent. De préférence, l’agent est déployé depuis l’unité de centralisation. Par exemple, l’opérateur peut commander manuellement le déploiement de l’agent par l’intermédiaire d’une commande depuis l’unité de centralisation. L’agent peut également être déployé automatiquement, par exemple au moyen paquet d’installation transmis selon une stratégie de groupe d’une forêt Microsoft Active Directory. En effet, une stratégie de groupe, également appelée GPO pour « Group Policy Objects » dans la littérature anglo-saxonne, permet de transmettre automatiquement des paquets d’installation, par exemple en utilisant le protocole installateur Windows ou « Windows Installer » dans la littérature anglo-saxonne. L’unité de centralisation peut également être configurée pour mettre à jour l’agent. Ce processus de mise à jour peut également être utilisé par l’unité de centralisation pour installer automatiquement une nouvelle version de l’agent. L’unité de centralisation correspond préférentiellement à un boitier physique connecté sur le réseau avec une carte mère, un processeur et une carte réseau connectée sur le réseau du système d’information. En variante, l’unité de centralisation peut être implémentée sous la forme d’un logiciel sur un périphérique du système d’information, par exemple un serveur physique ou virtuel. Quelle que soit son implémentation, l’unité de centralisation comporte ou a accès à une mémoire de stockage permettant de regrouper les différentes mesures issues du module d’estimation. De préférence, pour interpréter ces mesures, le module d’estimation est configuré pour associer un score par exemple une valeur binaire, notamment égale à 0 ou 1, à chaque mesure de chaque périphérique ; un objectif de sécurité pour une recommandation précise étant obtenu en calculant la somme des valeurs des mesures des périphériques divisée par le nombre de périphériques mesurés. A partir de ces mesures, l’unité de centralisation peut directement intégrer une interface de visualisation de la conformité de chaque périphérique du réseau avec un ensemble de recommandations. Cette interface est alors accessible à un opérateur, par exemple un responsable de la sécurité du système d’information. En outre, l’unité de centralisation peut également être configurée pour déclencher automatiquement une alerte lorsqu’un ou plusieurs périphériques ne sont pas conformes à une recommandation de sécurité. De préférence, les informations collectées par l’unité de centralisation sont exploitées au niveau d’une unité distante connectée sur Internet. Dans ce mode de réalisation, le système comporte également une unité distante connectée à l’unité de centralisation à travers Internet, l’unité distante comportant : - un module de collecte configuré pour permettre à un opérateur de répondre à des questions relatives à la sécurité du système d’information ; et - un module de supervision d’une conformité du système d’information à des objectifs de sécurité en fonction des réponses de l’opérateur aux questions relatives à la sécurité et des réponses des périphériques aux recommandations de sécurité. Ce mode de réalisation permet d’agréger, au niveau de l’unité distante, des informations automatisables et des informations non automatisables en appliquant simplement un score entre 0 et 1 pour chaque recommandation. En utilisant comme base de recommandations le guide de l’ANSSI, un score du système d’information peut être obtenu entre 0 et 40. Ce score peut être illustré au niveau d’un module d’affichage, par exemple avec un jeu de couleurs montrant en vert les recommandations qui sont suivies et en rouge celles qui ne le sont pas. Selon ce mode de réalisation, le module de supervision comporte également un module d’affichage de la sécurité information du système d’information reprenant, pour chaque recommandation, une conformité ou non du système d’information avec la recommandation. Par ailleurs, l’unité distante peut être configurée pour mettre à jour l’unité de centralisation. Ce mode de réalisation permet de modifier la configuration de l’unité de centralisation au cours du temps, par exemple les requêtes que peut formuler l’unité de centralisation, pour s’adapter à l’évolution des systèmes d’exploitation et pour s’adapter à l’évolution d’une stratégie de recommandations. Il permet aussi d’intégrer et d’utiliser un autre référentiel de mesures. L’unité distante peut également être configurée pour transmettre une alerte à un opérateur lorsque le module d’identification de l’unité de centralisation détecte un nouveau périphérique sans agent installé. En outre, l’unité distante peut être configurée pour transmettre une alerte lorsqu’une mesure d’un périphérique n’est pas conforme à une recommandation de sécurité particulière. Description sommaire des figures La manière de réaliser l’invention ainsi que les avantages qui en découlent, ressortiront bien des modes de réalisation qui suivent, donnés à titre indicatif mais non limitatif, à l’appui des figures 1 et 2 dans lesquelles : La est une représentation schématique d’un système d’information intégrant un système d’analyse de la sécurité informatique selon un mode de réalisation de l’invention ; et La est une représentation schématique d’un agent et de l’unité de centralisation du système d’analyse de la sécurité informatique de la . Système mis en œuvre par ordinateur d’analyse de la sécurité informatique d’un système d’information (10) comportant un ensemble de périphériques (11-14) reliés en réseau ; le système d’analyse comportant : - un agent (15) installé sur plusieurs périphériques (11-14) ; et - une unité de centralisation (16) connectée au réseau du système d’information (10) ; chaque agent (15) comportant : - un module de communication (20) configuré pour établir une communication avec l’unité de centralisation (16) ; - un module d’identification (21) configuré pour détecter les composants matériels et/ou logiciels du périphérique (11-14) sur lequel l’agent (15) est installé ; et - un module d’exécution (22) configuré pour exécuter les requêtes envoyées par l’unité de centralisation (16) et transmettre les résultats de ces requêtes ; l’unité de centralisation (16) comportant : - un module d’identification (25) de l’ensemble des périphériques (11-14) du réseau du système d’information (10), le module d’identification (25) étant configuré pour détecter les agents installés sur ces périphériques (11-14) et obtenir la liste des composants matériels et/ou logiciels des périphériques (11-14) ; - un module de communication (26) configuré pour établir une communication avec les agents (15) ; - un module de génération de mesures (27) permettant de détecter des informations de sécurité, le module de génération de mesures (27) étant configuré pour générer des requêtes circonstanciées en fonction des composants matériels et/ou logiciels des périphériques (11-14) ; - un module d’interprétation (28) des résultats des mesures, configuré pour détecter si les périphériques (11-14) répondent à plusieurs recommandations de sécurité ; et - un module d’estimation (29) d’une conformité à des objectifs de sécurité en fonction des réponses des périphériques (11-14) aux recommandations de sécurité. Système selon la revendication 1, dans lequel les modules de communication (20, 26) de l’agent (15) et de l’unité de centralisation (16) sont configurés pour établir une communication sécurisée. Système selon la revendication 1 ou 2, dans lequel l’agent (15) correspond à un service Microsoft Windows ou un daemon Linux installé sur un système d’exploitation d’un périphérique (11-14). Système selon l’une des revendications 1 à 3, dans lequel le système comporte des moyens de mise à jour de l’agent (15). Système selon l’une des revendications 1 à 4, dans lequel le module d’estimation (29) est configuré pour associer une valeur de 0 ou de 1 à chaque mesure de chaque périphérique (11-14) ; un objectif de sécurité pour une recommandation précise étant obtenu en calculant la somme des valeurs des mesures des périphériques (11-14) divisée par le nombre de périphériques (11-14) mesurés. 6. Système selon l’une des revendications 1 à 5, dans lequel le système comporte également une unité distante (17) connectée à l’unité de centralisation (16) à travers Internet (18), l’unité distante (17) comportant : - un module de collecte configuré pour permettre à un opérateur de répondre à des questions relatives à la sécurité du système d’information (10) ; et - un module de supervision d’une conformité du système d’information (10) à des objectifs de sécurité en fonction des réponses de l’opérateur aux questions relatives à la sécurité et des réponses des périphériques (11-14) aux recommandations de sécurité. Système selon la revendication 6, dans lequel le module de supervision comporte également un module d’affichage de la sécurité information du système d’information (10) reprenant, pour chaque recommandation, une conformité ou non du système d’information (10) avec la recommandation. 8. Système selon la revendication 6 ou 7, dans lequel l’unité distante (17) est configurée pour mettre à jour l’unité de centralisation (16). 9. Système selon l’une des revendications 6 à 8, dans lequel l’unité distante (17) est configurée pour transmettre une alerte lorsque le module d’identification (25) de l’unité de centralisation (16) détecte un nouveau périphérique (11-14) sans agent (15) installé. Système selon l’une des revendications 6 à 9, dans lequel l’unité distante (17) est configurée pour transmettre une alerte lorsqu’une mesure d’un périphérique (11-14) n’est pas conforme à une recommandation de sécurité particulière.