Brevet FR3004304A1 — publié le 20141010

Procédé de caractérisation d'un réseau informatique La présente invention concerne un procédé de caractérisation d'un réseau informatique présentant une topologie. La présente invention se rapporte aussi à un procédé de contrôle d'un réseau informatique. La présente invention se rapporte également à un programme d'ordinateur comportant des instructions de code de programmation aptes à être mises en oeuvre par un processeur. Un réseau informatique est un ensemble de stations reliées entre elles. Un réseau informatique est généralement géré par un ou plusieurs administrateurs. Un administrateur a notamment pour rôle de contrôler le fonctionnement du réseau. Pour cela, il est souhaitable de connaître en temps réel les caractéristiques du réseau. Pour cela, il est connu d'utiliser des logiciels actifs donnant la cartographie du réseau par envoi de paquets de données aux différentes stations. Mais, de tels logiciels ne peuvent pas être utilisés dans un réseau informatique sécurisé dans lequel les paquets restent bloqués par les pare-feu du réseau. Il est également possible d'employer des logiciels passifs impliquant le branchement préalable de sondes dans le réseau. Mais, dans un réseau informatique sécurisé, le branchement de sondes est interdit, ce qui empêche d'utiliser un tel logiciel passif. Il est connu du document EP-A-1 777 875 une méthode consistant à agencer graphiquement les composants d'un réseau selon une représentation en couches à des fins de visualisation, le réseau comprenant des composantes de réseau et de différents types et des liaisons connectant les composantes de réseau. La méthode comprend la considération de plusieurs composantes de réseau comme des composantes sources. Pour chaque composante source, il est attribué des valeurs de distance minimale et pour chaque composante de réseau, il est attribué une valeur minimale de l'ensemble des valeurs minimales attribuées à la composante de réseau comme un niveau de hiérarchie. Le procédé comporte alors l'affichage des composantes de réseau dans une représentation en couches selon le niveau de hiérarchie attribué à chaque composante. Toutefois, le procédé du document EP-A-1 777 875 est non automatique, de mise en oeuvre assez longue et s'applique donc difficilement aux réseaux informatiques présentant une taille importante. Il existe donc un besoin pour un procédé de caractérisation d'un réseau informatique qui soit de mise en oeuvre rapide et s'applique à tout type de réseau sécurisé ou non. A cet effet, l'invention a pour objet un procédé de caractérisation d'un réseau informatique présentant une topologie et comprenant une pluralité de stations propres à échanger des données entre elles et une pluralité de routeurs assurant l'acheminement des données entre les différentes stations. Le procédé comprend la fourniture d'un journal comportant un ensemble d'événements ayant eu lieu dans le réseau informatique. Le procédé comporte, en outre, la sélection des événements correspondant à un échange de données entre deux stations parmi la pluralité des événements du journal. Le procédé comprend également, pour au moins un échange sélectionné, l'extraction d'informations relatives à l'un ou plusieurs des éléments du groupe constitué de la station émettrice de données, la station réceptrice des données, les routeurs par lequel les données ont transité, la nature des données échangées, et la date et ou l'heure de l'échange. Le procédé comporte aussi la détermination d'au moins une partie de la topologie du réseau informatique sur la base des informations extraites. Suivant des modes de réalisation particuliers, le procédé de caractérisation comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles : - le procédé comprend, en outre, pour chaque échange, le choix parmi la pluralité des événements du journal des événements impliquant une station de la pluralité de stations, la détermination parmi les événements choisis, des événements impliquant également des données particulières, le calcul du rapport entre le nombre d'événements déterminés sur la nombre d'événements choisis, et la déduction de la nature de la station considérée en fonction de la valeur du rapport. - le procédé comporte, en outre, la détermination des données les plus fréquentes émises dans la pluralité des événements du journal, par une station, et la déduction de caractéristiques relatives à la station en fonction des données les plus fréquentes déterminées. - le réseau comporte un serveur de messagerie électronique, les données les plus fréquentes déterminées utilisent un protocole de communication spécifique, et la caractéristique déduite est la connexion de la station considérée au serveur de messagerie électronique. - le procédé comporte, en outre, l'affichage de la topologie du réseau informatique. - le regroupement des stations à l'aide d'une méthode de classification de données. - le regroupement des routeurs à l'aide d'une méthode de classification de données. - le regroupement des stations et des routeurs à l'aide d'une méthode de classification de données. L'invention a également pour objet un procédé de contrôle d'un réseau informatique présentant une topologie et comprenant une pluralité de stations propres à échanger des données entre elles et une pluralité de routeurs assurant l'acheminement des données entre les différentes stations. Le procédé comprend la caractérisation du réseau informatique à l'aide du procédé de caractérisation précédemment décrit pour obtenir un réseau informatique caractérisé, et la comparaison du réseau informatique caractérisé à un réseau informatique de référence. Suivant des modes de réalisation particuliers, le procédé de contrôle comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles : - le réseau de référence correspond à un réseau désiré et le procédé de contrôle comprend la détermination des modifications à apporter au réseau informatique caractérisé pour que le réseau informatique soit identique au réseau désiré. - le réseau de référence correspond à un réseau en l'absence d'anomalies et le procédé de contrôle comprend la détermination de la présence d'une anomalie dans le réseau à l'aide du résultat de l'étape de comparaison. L'invention concerne aussi un programme d'ordinateur comportant des instructions de code de programmation aptes à être mises en oeuvre par un processeur, caractérisé en ce que le programme est apte à mettre en oeuvre un procédé de caractérisation d'un réseau informatique tel que précédemment décrit ou le procédé de contrôle d'un réseau informatique tel que précédemment décrit D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description qui suit de modes de réalisation de l'invention, donnés à titre d'exemple uniquement et en référence aux dessins qui sont : figure 1, une représentation schématique d'un réseau informatique, et figure 2, un ordinogramme d'un exemple de mise en oeuvre du procédé de caractérisation selon l'invention. Un réseau informatique 10 est représenté sur la figure 1. Par simplification, le réseau informatique 10 de la figure 1 comprend trois stations 12, un routeur 14 et un serveur de messagerie électronique 16. Dans un réseau informatique 10 plus complexes, le réseau informatique 10 comprend des milliers de stations 12 et des centaines de routeurs 14. Les stations 12 sont propres à échanger des données entre elles. Selon l'exemple de la figure 1, les stations 12 sont des ordinateurs. Le routeur 14 assure l'acheminement des données entre les différentes stations 12. Un serveur de messagerie électronique 16 est une station (mais de type station serveur) dédiée spécifiquement à la réception de messages électroniques et à leur acheminement vers les autres stations 12 (station de type station client). Selon l'invention, il est proposé un procédé de caractérisation du réseau informatique 10 tel qu'illustré par l'ordinogramme de la figure 2. Le procédé de caractérisation comprend une étape 100 de fourniture d'un journal J comportant un ensemble d'événements ayant eu lieu dans le réseau informatique 10. En informatique, le concept d'historique des événements ou de logging désigne l'enregistrement séquentiel dans un fichier ou une base de données de tous les événements affectant un processus particulier (application, activité d'un réseau informatique...). Le journal (en anglais « log file » ou plus simplement « log »), désigne alors le fichier contenant ces enregistrements. Généralement datés et classés par ordre chronologique, ces derniers permettent d'analyser pas à pas l'activité interne du processus et ses interactions avec son environnement. Pour des questions juridiques, le journal est conservé pour une période d'au moins six mois ce qui rend possible sa fourniture durant une période de temps relativement longue. L'étape 100 de fourniture du journal J est généralement mise en oeuvre par fourniture de fichiers compressés comprenant un ensemble d'événements ayant eu lieu dans le réseau informatique 10. Le procédé de caractérisation comporte alors une étape 102 de la sélection des événements correspondant à un échange de données entre deux stations 12 parmi la pluralité des événements du journal J. Le procédé de caractérisation comprend une étape 104 d'extraction d'informations pour au moins un des événements sélectionnés. Les informations extraites sont, par exemple, relatives à la station 12 émettrice de données, à la station 12 réceptrice des données, le routeur 14 par lequel les données ont transité, la nature des données échangées et la date et/ou l'heure de l'échange. Le procédé de caractérisation comporte une étape 106 de détermination de la topologie du réseau informatique 10 grâce aux informations extraites. Le procédé comporte, en outre, une étape 108 d'affichage de la topologie du réseau informatique 10. En option, l'affichage de la topologie est modifiable par utilisation de fonctions permettant d'obtenir des vues très précises sur les dimensions spatio-temporelles. Il est par exemple, possible d'afficher la topologie du réseau informatique 10 déduite des échanges du journal J durant une période temporelle donnée (week-end à titre d'illustration) ou correspondant à un usage particulier (échange de données selon le protocole FTP). Le protocole File Transfer Protocol (protocole de transfert de fichiers) ou FTP est un protocole de communication destiné à l'échange de fichiers sur un réseau Internet. De manière alternative, seule une partie de la topologie du réseau 10 est affichée. Le procédé proposé permet donc d'obtenir la topologie d'un réseau informatique 10 de manière passive, non intrusive et sans connaissance préalable sur la topologie le réseau informatique 10. Le procédé proposé est, effectivement, un procédé passif par opposition aux technologies actives impliquant un envoi de paquets de données, par exemple sous forme d'une requête, pour détecter les différentes stations 12 du réseau 10. De plus, le procédé n'implique pas un accès physique au réseau 10 par ajout de sondes, ceci permettant que le procédé puisse être mise en oeuvre n'importe où même à une distance importante des stations 12 du réseau 10. Cela rend le procédé applicable même pour des réseaux informatiques 10 sécurisés dans lesquels l'envoi de requête ou la pose de sondes physiques sont interdits. De plus, le procédé est opérationnel sans aucune connaissance a priori sur le réseau 10, comme la nature des stations 12 présentes, la position des routeurs 14 ou la présence d'éventuels pare-feu. En effet, pour établir la topologie du réseau informatique 10, seules les informations du journal J comportant un ensemble d'événements ayant eu lieu dans le réseau informatique 10 sont utilisées par le procédé. En ce sens, le procédé selon l'invention est automatique par rapport aux procédés de l'état de la technique impliquant l'entrée de données relatives aux stations 12 pour fonctionner. Le procédé présente, en outre, l'avantage d'être simple à mettre en oeuvre. Le procédé est, par exemple, mis en oeuvre par une architecture de calculs propre à effectuer des opérations de calculs sur un volume conséquent d'informations, typiquement plusieurs à quelques dizaines de téraoctets de données. Ainsi, le coût associé à sa mise en oeuvre est faible. La mise en oeuvre est rapide, ce qui confère un caractère dynamique au procédé. En effet, le procédé rend possible la visualisation des évolutions potentielles de la topologie du réseau 10 en temps réel. La détection des changements intervenant dans la topologie du réseau 10 est, par exemple, effectuée de manière automatique, grâce à des algorithmes d'apprentissage. De préférence, le procédé analyse les évènements du journal J et procède à un regroupement des stations 12 ou des routeurs 14 possédant des caractéristiques proches pour certaines variables de manière à former des sous-réseaux du réseau 10. L'adresse IP (pour protocole Internet) est un exemple de variable de regroupement. Typiquement, il peut être décidé que toutes les machines partageant le même en-tête d'adresse IP appartiennent au même sous-réseau. Le regroupement est mise en oeuvre à l'aide d'une méthode de classification de données souvent désigné sous le terme anglais de « clustering ». La méthode de regroupement hiérarchique ou la méthode de partitionnement de données sont des exemples connus de clustering. Ainsi, le procédé permet une caractérisation et une détermination automatique et sans connaissance a priori des sous-réseaux du réseau 10. De manière optionnelle, le procédé permet également de caractériser certaines parties du réseau 10 ou de préciser la topologie. Selon une première option, le réseau informatique 10 est mieux caractérisé par la détermination d'informations relatives aux stations 12. Dans cette première option, le procédé de caractérisation comprend également une étape de choix, parmi la pluralité des événements du journal J, des événements impliquant uniquement une station 12. Notamment, tous les échanges impliquant uniquement une autre station 12 ne sont pas considérés. Il est ainsi obtenu un nombre total d'évènements. Le procédé comporte alors une étape de détermination des évènements associés aux protocoles les plus fréquemment utilisés par la station 12 considérée. Dans la pratique, deux ou trois protocoles sont considérés. Le procédé comporte ensuite une étape de calcul du rapport entre le nombre d'événements déterminés sur le nombre total d'événements de la station 12. Le procédé comprend aussi une étape de déduction de la nature de la station 12 considérée (serveur ou client) en fonction de la valeur du rapport. Par exemple, lorsque le rapport a une valeur supérieure à une certaine valeur seuil, il est considéré que la station 12 est d'un type donné (serveur ou client). Selon une deuxième option complémentaire de la première option, il est possible d'obtenir des caractérisations plus fines des stations 12. Selon cette deuxième option, le procédé comporte également une étape de détermination des données les plus fréquentes dans la pluralité des événements du journal J. A titre d'exemple, les données déterminées peuvent être des échanges réseau utilisant le protocole SMTP. Le protocole Simple Mail Transfer Protocol (littéralement « Protocole simple de transfert de courrier »), généralement abrégé SMTP, est un protocole de communication utilisé pour transférer le courrier électronique (courriel) vers les serveurs de messagerie électronique. Le procédé comprend alors une étape de déduction de caractéristiques relatives à la station 12 en fonction des données utilisées par la station 12 considérée. En suivant le même exemple, la caractéristique déduite est la connexion de la station 12 considérée au serveur de messagerie électronique 16. Le procédé permet ainsi de caractériser le réseau informatique 10 en précisant des données non directement liées à la topologie, notamment relatives aux stations 12. Le réseau informatique 10 ainsi caractérisé par le procédé de caractérisation est notamment exploitable dans le cadre d'un procédé de contrôle du réseau informatique 10. Un tel procédé de contrôle comporte une étape de caractérisation du réseau informatique 10 à l'aide du procédé de caractérisation telle que précédemment décrit pour obtenir un réseau informatique 10 caractérisé. Le procédé de contrôle comprend une étape de comparaison du réseau informatique 10 ainsi caractérisé à un réseau informatique 10 de référence. Selon un mode de réalisation, le réseau 10 de référence correspond à un réseau désiré. Dans le cadre de la gestion des réseaux informatiques, un réseau désiré est, par exemple, un réseau 10 dans lequel toutes les stations 12 ont été mises en conformité avec une mise à jour informatique. Le procédé de contrôle comprend alors une étape de détermination des modifications à apporter au réseau informatique 10 caractérisé pour que le réseau informatique 10 soit identique au réseau désiré. Selon un autre mode de réalisation, le réseau de référence correspond au réseau informatique 10 en l'absence intrusions sur le réseau informatique 10. Le procédé de contrôle comprend alors une étape de détermination de la présence d'une intrusion dans le réseau informatique 10 à l'aide du résultat de l'étape de comparaison. Le procédé de contrôle est alors un procédé de protection du réseau informatique 10 contre les intrusions. La sécurité du réseau informatique 10 est donc augmentée. En outre, le procédé de contrôle fonctionne de manière furtive ce qui améliore les chances de trouver l'intrusion sans que l'auteur de l'intrusion ne se doute qu'il a été détecté. Plus généralement ce procédé de contrôle permet de détecter automatiquement les changements le réseau 10, et notamment les anomalies. Une anomalie correspond par exemple à l'apparition d'une station 12 avec des droits administratifs importants. Une activité observée du serveur 16 durant une période de supposée inactivité est également une anomalie. Il est alors possible d'évaluer la criticité des changements détectés. REVENDICATIONS1.- Procédé de caractérisation d'un réseau informatique (10) présentant une topologie et comprenant : - une pluralité de stations (12) propres à échanger des données entre elles et - une pluralité de routeurs (14) assurant l'acheminement des données entre les différentes stations (12), le procédé comprenant la fourniture d'un journal (J) comportant un ensemble d'événements ayant eu lieu dans le réseau informatique (10), le procédé étant caractérisé en ce que le procédé comporte, en outre : - la sélection des événements correspondant à un échange de données entre deux stations (12) parmi la pluralité des événements du journal (J), - pour au moins un échange sélectionné, l'extraction d'informations relatives à l'un ou plusieurs des éléments du groupe constitué de : - la station (12) émettrice de données, - la station (12) réceptrice des données, - les routeurs (14) par lequel les données ont transité, - la nature des données échangées, et - la date et ou l'heure de l'échange, - la détermination d'au moins une partie de la topologie du réseau informatique (10) sur la base des informations extraites. 2.- Procédé de caractérisation selon la revendication 1, dans lequel le procédé comprend, en outre, pour chaque échange : - le choix parmi la pluralité des événements du journal (J) des événements impliquant une station (12) de la pluralité de stations (12), - la détermination parmi les événements choisis, des événements impliquant également des données particulières, - le calcul du rapport entre le nombre d'événements déterminés sur la nombre d'événements choisis, et - la déduction de la nature de la station (12) considérée en fonction de la valeur du rapport. 3.- Procédé de caractérisation selon la revendication 2, dans lequel le procédé comporte, en outre :- la détermination des données les plus fréquentes émises dans la pluralité des événements du journal (J), par une station (12), - la déduction de caractéristiques relatives à la station (12) en fonction des données les plus fréquentes déterminées. 4.- Procédé de caractérisation selon la revendication 3, dans lequel : - le réseau (10) comporte un serveur de messagerie électronique (16), - les données les plus fréquentes déterminées utilisent un protocole de communication spécifique, et - la caractéristique déduite est la connexion de la station (12) considérée au serveur de messagerie électronique (16). 5.- Procédé de caractérisation selon l'une quelconque des revendications 1 à 4, dans lequel le procédé comporte, en outre, l'affichage de la topologie du réseau informatique (10). 6.- Procédé de caractérisation selon l'une quelconque des revendications 1 à 5, comprenant le regroupement des stations (12) et/ou routeurs (14) à l'aide d'une méthode de classification de données. 7.- Procédé de contrôle d'un réseau informatique (10) présentant une topologie et comprenant : - une pluralité de stations (12) propres à échanger des données entre elles et - une pluralité de routeurs (14) assurant l'acheminement des données entre les différentes stations (12), le procédé étant caractérisé en ce que le procédé comprend : - la caractérisation du réseau informatique (10) à l'aide du procédé de caractérisation selon l'une quelconque des revendications 1 à 6 pour obtenir un réseau informatique (10) caractérisé, et - la comparaison du réseau informatique (10) caractérisé à un réseau informatique de référence. 8.- Procédé de contrôle selon la revendication 7, dans lequel : - le réseau de référence correspond à un réseau désiré et- le procédé de contrôle comprend la détermination des modifications à apporter au réseau informatique (10) caractérisé pour que le réseau informatique (10) soit identique au réseau désiré. 9.- Procédé de contrôle selon la revendication 7, dans lequel : - le réseau de référence correspond à un réseau (10) en l'absence d'anomalies et - le procédé de contrôle comprend la détermination de la présence d'une anomalie dans le réseau (10) à l'aide du résultat de l'étape de comparaison. 10.- Programme d'ordinateur comportant des instructions de code de programmation aptes à être mises en oeuvre par un processeur, caractérisé en ce que le programme est apte à mettre en oeuvre un procédé de caractérisation d'un réseau informatique (10) selon l'une quelconque des revendications 1 à 6 ou le procédé de contrôle d'un réseau informatique (10) selon l'une quelconque des revendications 7 à 9.