FR3087912A1 - COMPUTER INTRUSION ANTICIPATION PROCESS - Google Patents

COMPUTER INTRUSION ANTICIPATION PROCESS Download PDF

Info

Publication number
FR3087912A1
FR3087912A1 FR1859970A FR1859970A FR3087912A1 FR 3087912 A1 FR3087912 A1 FR 3087912A1 FR 1859970 A FR1859970 A FR 1859970A FR 1859970 A FR1859970 A FR 1859970A FR 3087912 A1 FR3087912 A1 FR 3087912A1
Authority
FR
France
Prior art keywords
internet address
class
data
linked
representing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1859970A
Other languages
French (fr)
Other versions
FR3087912B1 (en
Inventor
Fabienne Veyre
Thierry Veyre
Fabrice Koszyk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Serenicity
Original Assignee
Serenicity
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Serenicity filed Critical Serenicity
Priority to FR1859970A priority Critical patent/FR3087912B1/en
Publication of FR3087912A1 publication Critical patent/FR3087912A1/en
Application granted granted Critical
Publication of FR3087912B1 publication Critical patent/FR3087912B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Abstract

L'invention concerne un procédé d'anticipation d'intrusion informatique comportant les étapes suivantes : - agrégation de données d'intrusions ou de tentatives d'intrusions passées (14a-14e); - enrichissement de chaque donnée (Dx) ; - création de classes de données symboliques (Cx) sur lesdites données enrichies (Dx) ; - pour plusieurs conditions initiales (Ci), regroupement (54) desdites classes de données symboliques (Cx) à partir d'une condition initiale (Ci) au moyen d'un algorithme de nuées dynamiques (23) ; - détermination (55) des regroupements (R1-R5) les plus récurrents formant des ensembles d'intrusions ou de tentatives d'intrusions passées concomitantes ; - recherche (56) d'au moins un élément précurseur (Ep) lié à un ensemble ; et - mise en œuvre (57) de moyens de détection (15a-15e) dudit au moins un élément précurseur (Ep) de sorte à anticiper la survenue d'une tentative d'intrusion informatique. The invention relates to a computer intrusion anticipation method comprising the following steps: - aggregation of data from past intrusions or attempted intrusions (14a-14e); - enrichment of each data (Dx); - creation of symbolic data classes (Cx) on said enriched data (Dx); - for several initial conditions (Ci), grouping (54) of said symbolic data classes (Cx) on the basis of an initial condition (Ci) by means of a dynamic cloud algorithm (23); - determination (55) of the most recurring groupings (R1-R5) forming sets of concomitant intrusions or attempts at past intrusions; - search (56) for at least one precursor element (Ep) linked to a set; and - implementation (57) of detection means (15a-15e) of said at least one precursor element (Ep) so as to anticipate the occurrence of a computer intrusion attempt.

Description

PROCEDE D'ANTICIPATION D'INTRUSION INFORMATIQUE DOMAINE TECHNIQUE L'invention concerne un procédé d'anticipation d'intrusion informatique, c'est-à-dire un procédé permettant de détecter l'imminence d'une tentative d'intrusion informatique afin d'activer les contres mesures efficaces.TECHNICAL FIELD The invention relates to a method of computer intrusion anticipation, that is to say a method for detecting the imminence of a computer intrusion attempt in order to activate effective countermeasures.

Par exemple, l'invention permet de limiter les accès à un serveur informatique pour un ensemble d'adresses internet lorsqu'un risque d'attaque en provenance de ces adresses est détecté.For example, the invention makes it possible to limit access to a computer server for a set of Internet addresses when a risk of attack originating from these addresses is detected.

L'invention trouve une application particulièrement avantageuse pour contrer les pirates 15 informatiques qui mènent des attaques massives sur un système informatique au moyen de bots.The invention finds a particularly advantageous application for countering computer hackers who carry out massive attacks on a computer system by means of bots.

Le terme « bot » est la contraction du terme « robot ».The term "bot" is the contraction of the term "robot".

Au sens de l'invention, un bot est un agent logiciel automatique ou semi-automatique qui interagit avec au moins un serveur 20 informatique à la manière d'un programme client utilisé par un humain.Within the meaning of the invention, a bot is an automatic or semi-automatic software agent which interacts with at least one computer server in the manner of a client program used by a human.

Cette interaction entre le serveur et le bot est facilitée par l'utilisation du réseau Internet et du protocole de transmission et de contrôle des adresses Internet, plus connu sous l'abréviation TCP/IP pour « Transmission Control Protocol / Internet Protocol » dans la littérature anglo-saxonne.This interaction between the server and the bot is facilitated by the use of the Internet network and of the Internet address transmission and control protocol, better known by the abbreviation TCP / IP for “Transmission Control Protocol / Internet Protocol” in the literature. Anglo-Saxon.

25 La présente invention concerne un domaine d'analyse particulier, à savoir l'analyse de données symboliques.The present invention relates to a particular field of analysis, namely the analysis of symbolic data.

ART ANTERIEUR 30 La dernière décennie a vu l'émergence d'attaques informatiques massives visant à déstabiliser un ou plusieurs systèmes informatiques.BACKGROUND ART The last decade has seen the emergence of massive computer attacks aimed at destabilizing one or more computer systems.

De nombreuses analyses sont menées sur ces attaques afin de déterminer les protagonistes et/ou les motivations cachées derrière ces attaques massives.Many analyzes are carried out on these attacks in order to determine the protagonists and / or the motivations behind these massive attacks.

2 En outre, certaines analyses ont montré des comportements récurrents chez les pirates, tels que les techniques de harponnage par des messages électroniques.2 In addition, some analyzes have shown recurring behaviors among hackers, such as spear phishing techniques through email messages.

Suite à ces analyses, le personnel d'un grand nombre d'entreprises a été formé pour déjouer ce type 5 d'attaque.As a result of these analyzes, the staff of a large number of companies have been trained to thwart this type of attack.

Cependant, seuls les comportements observables les plus évidents sont détectables avec les méthodes d'analyses de données numériques classiques.However, only the most obvious observable behaviors are detectable with classical digital data analysis methods.

10 La présente invention concerne un domaine d'analyse plus général que le domaine numérique, à savoir l'analyse de données symboliques.The present invention relates to a more general field of analysis than the digital one, namely the analysis of symbolic data.

L'analyse de données symboliques permet d'étendre l'analyse de données classique à des données plus complexes et souvent plus proches de la réalité multidimensionnelle.Symbolic data analysis extends classical data analysis to more complex data and often closer to multidimensional reality.

Ce nouveau domaine d'analyse mathématique est notamment décrit dans les publications scientifiques « Analyse de données symboliques et graphe de connaissance d'un agent » par Philippe Caillou et Edwin Diday (EGC 2005, Paris) et « Introduction à l'analyse de données symboliques » de Edwin Diday (HAL, mai 2006).This new field of mathematical analysis is described in particular in the scientific publications “Analysis of symbolic data and the knowledge graph of an agent” by Philippe Caillou and Edwin Diday (EGC 2005, Paris) and “Introduction to the analysis of symbolic data By Edwin Diday (HAL, May 2006).

L'analyse de données symboliques (ADS) est basée sur une modélisation du monde réel supposé constitué d'individus et de concepts.Symbolic Data Analysis (ADS) is based on modeling the real world assumed to be made up of individuals and concepts.

Les individus sont modélisés dans un espace de description qui exprime les propriétés à l'aide de variables et une description est constituée d'un ou plusieurs produits exprimant ces propriétés par leur domaine de variation pour l'individu considéré.The individuals are modeled in a description space which expresses the properties using variables and a description consists of one or more products expressing these properties by their domain of variation for the individual considered.

Une classe d'individus est modélisée dans l'espace des descriptions à l'aide d'un opérateur utilisant les descriptions des individus qui la constituent.A class of individuals is modeled in the description space using an operator using the descriptions of the individuals that constitute it.

Chaque individu est ainsi considéré comme un cas particulier de classes d'individus.Each individual is thus considered as a particular case of classes of individuals.

Les concepts sont modélisés dans un espace dit des « objets symboliques».The concepts are modeled in a space called “symbolic objects”.

Chaque objet symbolique est défini par un triplet formé par une description d'une classe d'individus, un opérateur de comparaisons entre deux descriptions et une fonction de reconnaissance.Each symbolic object is defined by a triplet formed by a description of a class of individuals, a comparison operator between two descriptions and a recognition function.

3 Le principe de l'ADS est d'analyser un ensemble d'individus tout en prenant en compte la statistique propre, les données répétées et la variation interne de chacun d'entre eux.3 The principle of ADS is to analyze a set of individuals while taking into account the specific statistics, the repeated data and the internal variation of each of them.

En résumé, l'ADS est un nouveau domaine d'analyse mathématique visant à conserver la 5 complexité d'un grand nombre de données agglomérées.In summary, ADS is a new field of mathematical analysis aimed at conserving the complexity of a large number of agglomerated data.

L'ADS a déjà montré des résultats intéressants pour des applications multiples, telles que la détection d'anomalies sur des ouvrages d'art, la surveillance de la santé structurale des ouvrages d'art, la prédiction de la durée de vie des ouvrages d'art, la mise en oeuvre de systèmes intelligents pour la prévention des risques structurels, l'étude des parcours de soins des patients d'un 10 territoire, ou encore l'étude et la prévention des risques naturels et technologiques d'un territoire.ADS has already shown interesting results for multiple applications, such as the detection of anomalies on structures, the monitoring of the structural health of structures, the prediction of the service life of structures. art, the implementation of intelligent systems for the prevention of structural risks, the study of patient care pathways in a territory, or the study and prevention of natural and technological risks in a territory.

Cependant, l'ADS n'a jamais été utilisée dans le domaine des intrusions informatiques.However, ADS has never been used in the area of computer intrusions.

15 Le problème technique objectif que ce propose de résoudre l'invention est d'anticiper certaines tentatives d'intrusion informatique.The objective technical problem which the invention proposes to solve is to anticipate certain computer intrusion attempts.

EXPOSE DE L'INVENTION 20 La présente invention est issue d'une découverte selon laquelle l'analyse de données symboliques sur les attaques passées permet de regrouper plusieurs intrusions ou tentatives d'intrusions antérieures à une attaque massive donnée.DISCLOSURE OF THE INVENTION The present invention results from a discovery according to which the analysis of symbolic data on past attacks makes it possible to group together several intrusions or attempted intrusions prior to a given massive attack.

Pour chaque attaque massive, il est possible de rechercher la survenue d'évènements précurseurs de l'attaque.For each massive attack, it is possible to search for the occurrence of precursor events of the attack.

Ces évènements précurseurs correspondent, le plus souvent, à des tests réalisés pour 25 configurer les bots destinés à perpétrer les attaques.These precursor events correspond, most often, to tests carried out to configure the bots intended to perpetrate the attacks.

Ainsi, en recherchant la survenue de ces évènements précurseurs, souvent mineurs, difficilement décelables et isolés, il est possible d'anticiper une future tentative d'intrusion informatique.Thus, by looking for the occurrence of these precursor events, often minor, difficult to detect and isolated, it is possible to anticipate a future attempt at computer intrusion.

30 Dans le contexte de l'invention, l'ADS vise à détecter ces évènements précurseurs dans un grand nombre de données collectées hétérogènes.In the context of the invention, ADS aims to detect these precursor events in a large number of heterogeneous data collected.

L'ADS permet de fusionner et 4 exploiter ces données hétérogènes au moyen d'un algorithme de nuées dynamiques avec plusieurs conditions initiales.ADS makes it possible to merge and exploit these heterogeneous data 4 by means of a dynamic cloud algorithm with several initial conditions.

A cet effet, l'invention concerne un procédé d'anticipation d'intrusion informatique 5 comportant les étapes suivantes : - agrégation de données d'intrusions ou de tentatives d'intrusions passées, chaque donnée comportant au moins une indication d'horodatage, une adresse internet de provenance, une adresse internet cible et un port lié à l'intrusion ou à la tentative d'intrusion passée ; 10 - enrichissement de chaque donnée de sorte à associer ladite adresse internet de provenance avec au moins une information géographique et ladite adresse internet cible avec au moins un secteur d'activité ; - création de classes de données symboliques sur lesdites données enrichies, lesdites classes de données symboliques comportant : 15 - au moins une classe liée à une information temporelle de première détection de chaque adresse internet de provenance ; - au moins une classe liée à une information de récurrence de chaque adresse internet de provenance - au moins une classe liée à une information de récurrence de chaque 20 adresse internet cible ; et - au moins une classe liée à une information de récurrence de chaque port de chaque donnée ; - pour plusieurs conditions initiales, regroupement desdites classes de données symboliques à partir d'une condition initiale au moyen d'un algorithme de nuées 25 dynamiques; - détermination des regroupements les plus récurrents formant des ensembles d'intrusions ou de tentatives d'intrusions passées concomitantes ; - recherche d'au moins un élément précurseur lié à un ensemble , et - mise en oeuvre de moyens de détection dudit au moins un élément précurseur de 30 sorte à anticiper la survenue d'une tentative d'intrusion informatique.To this end, the invention relates to a computer intrusion anticipation method comprising the following steps: aggregation of data on intrusions or past intrusion attempts, each data item comprising at least one time-stamp indication, a originating internet address, a target internet address and a port linked to the intrusion or past intrusion attempt; 10 - enrichment of each piece of data so as to associate said originating internet address with at least one geographic information item and said target internet address with at least one business sector; - creation of symbolic data classes on said enriched data, said symbolic data classes comprising: - at least one class linked to time information for the first detection of each originating internet address; - at least one class linked to recurrence information for each originating internet address; at least one class linked to recurrence information for each target internet address; and - at least one class linked to recurrence information for each port of each data item; - for several initial conditions, grouping of said symbolic data classes on the basis of an initial condition by means of a dynamic cloud algorithm; - determination of the most recurring groupings forming sets of concomitant past intrusions or attempted intrusions; - search for at least one precursor element linked to a set, and - implementation of means for detecting said at least one precursor element so as to anticipate the occurrence of a computer intrusion attempt.

L'invention permet ainsi d'exploiter les classes de données symboliques pour former des regroupements et détecter des récurrences dans ces regroupements formant des ensembles d'intrusions ou de tentatives d'intrusions passées concomitantes.The invention thus makes it possible to use the symbolic data classes to form groupings and to detect recurrences in these groupings forming sets of concomitant intrusions or attempts at past intrusions.

Par exemple, il est possible de détecter qu'un grand nombre d'attaques sont réalisées concomitamment depuis plusieurs adresses internet simultanément et que ces attaques visent généralement le même secteur d'activité.For example, it is possible to detect that a large number of attacks are carried out simultaneously from several Internet addresses simultaneously and that these attacks generally target the same sector of activity.

5 En recherchant les activités précédentes de ces adresses internet, il est possible de détecter que des tests à petite échelle sont tout d'abord réalisés depuis une adresse internet particulière et dans des conditions particulières, par exemple un jour férié dans le pays de l'adresse internet attaquante.5 By researching the previous activities of these internet addresses, it is possible to detect that small-scale tests are first performed from a particular internet address and under particular conditions, for example on a public holiday in the country of attacking internet address.

Ce faisant, il est possible de détecter un évènement 10 précurseur lié à un ensemble d'intrusions ou de tentatives d'intrusions passées.In doing so, it is possible to detect a precursor event linked to a set of intrusions or past intrusion attempts.

Au sens de l'invention, l'adresse internet se comprend au sens du protocole TCP/IP, par exemple le protocole TCP/IP version 4 ou version 6.For the purposes of the invention, the internet address is understood within the meaning of the TCP / IP protocol, for example the TCP / IP version 4 or version 6 protocol.

La détection de cet évènement précurseur est particulièrement intéressante pour protéger 15 un réseau, car il suffit de mettre en oeuvre des moyens de détection de cet évènement précurseur, sous la forme d'un scénario, pour détecter l'imminence d'une tentative d'intrusion.The detection of this precursor event is particularly advantageous for protecting a network, since it suffices to implement means for detecting this precursor event, in the form of a scenario, in order to detect the imminence of an attempt to intrusion.

Dans l'exemple précédent, en détectant que des tests à petite échelle, précédant une attaque massive, sont réalisés par une adresse internet particulière ou par une adresse internet de la même ville, il suffit de mettre en oeuvre une détection des 20 requêtes provenant de cette adresse internet pour anticiper une attaque massive.In the previous example, by detecting that small-scale tests, preceding a massive attack, are carried out by a particular internet address or by an internet address in the same city, it suffices to implement a detection of the 20 requests coming from this internet address to anticipate a massive attack.

En outre, si la requête est réalisée un jour férié, il y a de fortes chances qu'elle constitue un test de vulnérabilité avant une attaque massive.Additionally, if the request is made on a public holiday, there is a good chance that it will be a vulnerability test before a massive attack.

Il est également possible de détecter le temps entre la première requête et l'attaque 25 massive, correspondant généralement au temps nécessaire au pirate pour préparer son attaque massive.It is also possible to detect the time between the first request and the massive attack, generally corresponding to the time necessary for the hacker to prepare his massive attack.

Par exemple, si le temps moyen entre la première requête émanant d'une adresse internet et l'attaque massive associée à cette adresse internet est d'une semaine.For example, if the average time between the first request from an internet address and the massive attack associated with that internet address is one week.

Il est possible d'anticiper le jour d'une attaque massive en détectant une première requête provenant de l'adresse internet détectée comme évènement précurseur.It is possible to anticipate the day of a massive attack by detecting a first request from the internet address detected as a precursor event.

30 Le jour de l'attaque massive anticipée, il est possible de limiter le nombre de requête ou de bloquer les requêtes provenant d'une liste d'adresse, d'une ville, d'une région, d'un pays ou d'un ensemble numérique défini comme une communauté d'objets connectés.30 On the day of the anticipated massive attack, it is possible to limit the number of requests or block requests from a list of addresses, cities, regions, countries or a digital whole defined as a community of connected objects.

En 6 variante, si le jour de l'attaque massive n'est pas détecté, il est possible de bloquer ces requêtes pendant une durée prédéterminée, par exemple pendant une semaine.Alternatively, if the day of the massive attack is not detected, it is possible to block these requests for a predetermined period of time, for example for a week.

Ce faisant, l'invention permet d'anticiper une attaque massive planifiée par un pirate ou 5 un groupe de pirates afin de minimiser ou d'annuler les effets de cette attaque massive.In doing so, the invention makes it possible to anticipate a planned massive attack by a hacker or a group of hackers in order to minimize or cancel out the effects of this massive attack.

Pour ce faire, il est important de former des regroupements efficaces des classes de données symboliques.To do this, it is important to form efficient groupings of symbolic data classes.

En amont, il convient donc de former des classes de données symboliques pertinentes pour ces regroupements.Upstream, it is therefore necessary to form relevant symbolic data classes for these groupings.

10 Pour obtenir des résultats exploitables, l'invention propose de former les classes suivantes : - au moins une classe liée à une information temporelle de première détection de chaque adresse internet de provenance, par exemple une première classe représentant le 15 jour de ladite première détection de chaque adresse internet de provenance, une seconde classe représentant le mois de ladite première détection de chaque adresse internet de provenance, une troisième classe représentant le trimestre de ladite première détection de chaque adresse internet de provenance, une quatrième classe représentant l'heure de ladite première détection de chaque adresse internet de provenance, et une cinquième classe 20 représentant la présence ou non d'un jour férié, dans le pays de l'adresse internet cible, le jour de ladite première détection de chaque adresse internet de provenance ; - au moins une classe liée à une information de récurrence de chaque adresse internet de provenance, par exemple une classe représentant le nombre de données liées à un pays ou une ville spécifique de ladite adresse internet de provenance, et une classe 25 représentant, sous forme d'histogrammes, lesdites données liées à un pays ou une ville spécifique de ladite adresse internet de provenance ; - au moins une classe liée à une information de récurrence de chaque adresse internet cible, par exemple une première classe représentant le nombre de données liées à une adresse internet cible et/ou un secteur d'activité, et une seconde classe représentant, 30 sous forme d'histogrammes, lesdites données liées à une adresse internet cible et/ou un secteur d'activité ; et - au moins une classe liée à une information de récurrence de chaque port de chaque donnée, par exemple une première classe représentant l'évolution de l'intervalle 7 de récurrence des données associées au port , et une seconde classe représentant, sous forme d'histogrammes, lesdites évolutions de ladite première classe.To obtain exploitable results, the invention proposes forming the following classes: at least one class linked to a first detection time information item for each originating internet address, for example a first class representing the 15th day of said first detection of each originating internet address, a second class representing the month of said first detection of each originating internet address, a third class representing the quarter of said first detection of each originating internet address, a fourth class representing the time of said first detection of each originating internet address, and a fifth class 20 representing the presence or absence of a public holiday, in the country of the target internet address, on the day of said first detection of each originating internet address; at least one class linked to recurrence information for each originating internet address, for example a class representing the number of data items linked to a specific country or city of said originating internet address, and a class representing, in the form histograms, said data linked to a specific country or city of said originating internet address; - at least one class linked to recurrence information for each target internet address, for example a first class representing the number of data linked to a target internet address and / or a sector of activity, and a second class representing, 30 sub in the form of histograms, said data linked to a target internet address and / or a sector of activity; and - at least one class linked to recurrence information for each port of each data item, for example a first class representing the evolution of the recurrence interval 7 of the data associated with the port, and a second class representing, in the form of 'histograms, said evolutions of said first class.

En variante, il est possible de sélectionner seulement une ou plusieurs des classes décrites 5 pour peu que l'ensemble des classes présente une classe liée à une information temporelle de première détection de chaque adresse internet de provenance, une classe liée à une information de récurrence de chaque adresse internet de provenance, une classe liée à une information de récurrence de chaque adresse internet cible et une classe liée à une information de récurrence de chaque port de chaque donnée.As a variant, it is possible to select only one or more of the classes described as long as all of the classes have a class linked to time information of the first detection of each internet address of origin, a class linked to recurrence information. of each originating internet address, a class linked to recurrence information for each target internet address and a class linked to recurrence information for each port of each data.

10 Il est également possible de lier l'adresse internet de provenance avec un sous-réseau, tel qu'un quartier, région ou un continent géographique.10 It is also possible to link the originating internet address with a subnet, such as a neighborhood, region or geographic continent.

Ainsi, il est possible de déterminer des classes de données symboliques liées à un sous-réseau spécifique de l'adresse internet de provenance.Thus, it is possible to determine symbolic data classes linked to a specific subnet of the originating internet address.

Au sens de l'invention, un sous-réseau se comprend en référence aux 15 couches du protocole TCP/IP, par exemple le protocole TCP/IP version 4 ou version 6.For the purposes of the invention, a subnetwork is understood with reference to the 15 layers of the TCP / IP protocol, for example the TCP / IP version 4 or version 6 protocol.

Lorsque les classes sont définies, un algorithme de nuées dynamiques effectue des regroupements à partir de conditions initiales.When the classes are defined, a dynamic cloud algorithm performs groupings based on initial conditions.

Cet algorithme est une méthode itérative qui, quel que soit son point de départ converge vers une solution.This algorithm is an iterative method which, whatever its starting point, converges towards a solution.

Par exemple, pour une 20 première itération, un premier point de départ vise à associer le centre des classes à des objets.For example, for a first iteration, a first starting point aims to associate the center of the classes with objects.

Dans une seconde itération, la distance entre les objets et les centres est calculée et les objets sont affectés aux centres dont ils sont les plus proches.In a second iteration, the distance between objects and centers is calculated and the objects are assigned to the centers to which they are closest.

Dans une troisième itération, les centres sont redéfinis à partir des objets qui ont été affectés aux différentes classes.In a third iteration, the centers are redefined from the objects that have been assigned to the different classes.

Dans une quatrième itération, les objets sont réaffectés en fonction de leur 25 distance aux nouveaux centres et ainsi de suite jusqu'à ce que la convergence soit atteinte.In a fourth iteration, the objects are reassigned based on their distance to the new centers and so on until convergence is reached.

La solution obtenue n'est pas nécessairement la même quel que soit le point de départ.The solution obtained is not necessarily the same regardless of the starting point.

Pour cette raison, les calculs de regroupement sont réalisés pour plusieurs conditions initiales pour ne retenir que la solution la plus optimale pour le critère choisi.For this reason, the grouping calculations are carried out for several initial conditions in order to retain only the most optimal solution for the chosen criterion.

Ces points de départ peuvent être un horodatage sur une période donnée, une adresse internet de 30 provenance dans un intervalle donné, un port dans une liste donnée, et une adresse internet cible et/ou un secteur d'activité dans une liste donnée.These starting points can be a timestamp over a given period, a originating internet address in a given range, a port in a given list, and a target internet address and / or industry in a given list.

DESCRIPTION SOMMAIRE DES FIGURES 8 La manière de réaliser l'invention ainsi que les avantages qui en découlent, ressortiront bien du mode de réalisation qui suit, donné à titre indicatif mais non limitatif, à l'appui des figures annexées dans lesquelles les figures 1 et 2 représentent : 5 - Figure 1 : une représentation schématique d'un ensemble de serveurs protégés par un dispositif d'anticipation d'intrusion informatique ; et - Figure 2 : un ordinogramme des étapes du procédé d'anticipation d'intrusion informatique selon un mode de réalisation de l'invention.BRIEF DESCRIPTION OF THE FIGURES 8 The manner of carrying out the invention as well as the advantages which result therefrom will emerge clearly from the following embodiment, given by way of indication but not limiting, in support of the appended figures in which FIGS. 1 and 2 represent: 5 - Figure 1: a schematic representation of a set of servers protected by a computer intrusion anticipation device; and - Figure 2: a flowchart of the steps of the computer intrusion anticipation method according to one embodiment of the invention.

10 DESCRIPTION DETAILLEE DE L' INVENTION Dans la présente description qui suit, la théorie mathématique complète de l'analyse de données symboliques ne sera pas décrite dans le détail en raison de sa complexité.DETAILED DESCRIPTION OF THE INVENTION In the present description which follows, the complete mathematical theory of symbolic data analysis will not be described in detail due to its complexity.

Cependant, tel que décrit précédemment, l'invention concerne le domaine technique de 15 l'analyse de données symboliques et un homme du métier connaît les théories mathématiques liées à l'analyse de données symboliques.However, as described above, the invention relates to the technical field of symbolic data analysis and a person skilled in the art is familiar with the mathematical theories related to symbolic data analysis.

Plus particulièrement, tel qu'illustré sur la figure 1, l'invention requiert l'utilisation d'un algorithme de nuées dynamiques 23 pour effectuer des regroupements R1-R5 à partir de 20 conditions initiales Ci.More particularly, as illustrated in FIG. 1, the invention requires the use of a dynamic cloud algorithm 23 to perform groupings R1-R5 from initial conditions Ci.

Il existe plusieurs méthodes pour implémenter physiquement cet algorithme de nuées dynamiques 23.There are several methods to physically implement this dynamic cloud algorithm 23.

Par exemple, trois de ces méthodes sont décrites dans la publication scientifique « trois nouvelles méthodes de classification automatique de données symboliques de type intervalle », Rev.For example, three of these methods are described in the scientific publication "Three new methods of automatic classification of symbolic interval-type data", Rev.

Statistique Appliquée, 2003, LI (4), 529, M.Applied Statistics, 2003, LI (4), 529, M.

Chavent & co.Chavent & co.

25 L'une ou l'autre de ces méthodes peut être utilisée pour réaliser l'invention.Either of these methods can be used to carry out the invention.

En outre, le logiciel SYR de la société SYMBAD® peut être utilisé pour former ces regroupements R1-R5 à partir de classes Cx et de conditions initiales Ci prédéfinies.In addition, the SYR software from the SYMBAD® company can be used to form these R1-R5 groupings from classes Cx and from predefined initial conditions Ci.

30 Avant d'obtenir des classes cohérentes, tel qu'illustré sur la figure 2, une première étape consiste à agréger 50 des données d'intrusions.Before obtaining coherent classes, as illustrated in FIG. 2, a first step consists in aggregating 50 of the intrusion data.

Comme dans de nombreux systèmes d'analyses statistiques, plus le nombre de données d'intrusion est important, plus il est possible de caractériser des phénomènes.As in many statistical analysis systems, the greater the number of intrusion data, the more it is possible to characterize phenomena.

A cet effet, les données 14a-14e d'intrusions 9 et/ou de tentatives d'intrusions de multiples serveurs 13a-13e connectés sur internet 11 sont récupérées par un module 20.To this end, the data 14a-14e of intrusions 9 and / or attempted intrusions of multiple servers 13a-13e connected to the internet 11 are retrieved by a module 20.

Ces serveurs 13a-13e comportent généralement un dispositif de filtrage des requêtes 12a- 5 12e et chaque requête peut être répertoriée au niveau de ce dispositif de filtrage des requêtes 12a-12e ou au niveau du serveur 13a-13e.These servers 13a-13e generally include a request filter device 12a-12e and each request can be listed at the level of this request filter device 12a-12e or at the level of the server 13a-13e.

Après une intrusion d'un pirate ou, plus généralement, une tentative d'intrusion, les informations 14a-14e contenues dans les requêtes du pirate peuvent être distinguées des autres requêtes reçues par le serveur 13a-13e.After an intrusion by a hacker or, more generally, an intrusion attempt, the information 14a-14e contained in the hacker's requests can be distinguished from other requests received by the server 13a-13e.

10 Pour effectuer une requête sur un serveur 13a-13e, le logiciel transmettant la requête doit fournir une adresse internet IP_D correspondant aux serveurs ciblés 13a-13e ainsi qu'un numéro de port P de ce serveur 13a-13e sur lequel la requête doit être exécutée.10 To perform a request on a server 13a-13e, the software transmitting the request must provide an internet address IP_D corresponding to the targeted servers 13a-13e as well as a port number P of this server 13a-13e on which the request must be executed.

15 Au niveau du serveur 13a-13e, lorsqu'une requête est reçue, l'adresse internet IP_A de l'ordinateur sur lequel la requête a été générée apparaît.At the level of the server 13a-13e, when a request is received, the internet address IP_A of the computer on which the request was generated appears.

Le répertoire de stockage des requêtes liste classiquement, de manière chronologique et horodatée, l'ensemble des requêtes reçues par le serveur 13a-13e en indiquant, sur chaque ligne, la date et l'heure de la requête ainsi que l'adresse internet de provenance IP_A et le port P sur lequel la 20 requête a été présentée.The request storage directory classically lists, in a chronological and time-stamped manner, all the requests received by the server 13a-13e, indicating, on each line, the date and time of the request as well as the internet address of from IP_A and the port P on which the request was made.

Le module d'agrégation 20 récupère l'ensemble des requêtes identifiées comme provenant d'un pirate et, pour chaque requête, associe l'adresse internet IP_D du serveur 13a-13e sur lequel la requête a été présentée.The aggregation module 20 retrieves all of the requests identified as coming from a hacker and, for each request, associates the internet address IP_D of the server 13a-13e on which the request was presented.

Au cours du temps, le module d'agrégation 20 liste un grand nombre de requêtes de 25 pirates informatiques avec, pour chaque requête, au moins l'adresse internet de l'attaquant [P_A, l'adresse internet de destination EP D sur laquelle le la requête a été présentée, le port P sur lequel la requête a été présentée, et une information d'horodatage Dt de la requête, typiquement la date et l'heure à laquelle la requête a été présentée.Over time, the aggregation module 20 lists a large number of requests from 25 computer hackers with, for each request, at least the attacker's internet address [P_A, the destination internet address EP D on which the request has been presented, the port P on which the request has been presented, and timestamp information Dt of the request, typically the date and time at which the request was presented.

D'autres informations peuvent également être agrégées au niveau du 30 module 20.Other information can also be aggregated at the level of the module 20.

Par exemple, il est possible de détecter un temps avant qu'une adresse internet IP_A d'un pirate soit référencée dans une liste noire.For example, it is possible to detect a time before an Internet address IP_A of a hacker is referenced in a blacklist.

10 Tel qu'illustré sur la figure 2, lorsque les données Dx sont collectées, le procédé comporte une étape 51 visant à enrichir ses données Dx.As illustrated in FIG. 2, when the data Dx is collected, the method comprises a step 51 aimed at enriching its data Dx.

En effet, en analysant une adresse internet, il est possible d'en déduire la ville, le pays, la région, le quartier ainsi qu'un grand nombre d'informations géographiques et structurelles du réseau à travers lequel l'adresse internet 5 est contenue.Indeed, by analyzing an internet address, it is possible to deduce from it the city, the country, the region, the district as well as a large number of geographical and structural information of the network through which the internet address 5 is. contained.

Cette étape d'enrichissement vise à déterminer au moins le pays et/ou la ville associée à l'adresse internet IP A d'un pirate.This enrichment step aims to determine at least the country and / or the city associated with the Internet IP address A of a hacker.

De même, l'adresse internet IP_D du serveur ciblé peut être référencée dans une base de données associant l'adresse internet de chaque serveur avec une information sur la nature 10 de la société utilisant le serveur 13a-13e.Likewise, the internet address IP_D of the targeted server can be referenced in a database associating the internet address of each server with information on the nature of the company using the server 13a-13e.

Par exemple, chaque adresse internet des différents serveurs 13a-13e peut correspondre à un code APE, utilisé en France pour catégoriser les produits et services d'une entreprise.For example, each internet address of the different 13a-13e servers can correspond to an APE code, used in France to categorize the products and services of a company.

En utilisant les données Dx associées au port P mentionné dans la requête, il est possible 15 de déterminer le type d'attaque perpétrée par le pirate.By using the data Dx associated with the port P mentioned in the request, it is possible to determine the type of attack perpetrated by the hacker.

Par exemple, lorsqu'une requête est présentée sur un port spécifique, il peut être interprété que le pirate cherche à réaliser une tentative d'intrusion selon un mode opératoire spécifique, tel que la prise de contrôle à distance ou la tentative de surmenage d'un site internet.For example, when a request is presented on a specific port, it can be interpreted that the hacker seeks to carry out an intrusion attempt according to a specific operating mode, such as the remote takeover or the attempt to overwork. an Internet site.

20 Il est ainsi possible d'obtenir des données enrichies Dx correspondant aux données agrégées dans l'étape 50 associées à certaines données déduites à partir des données agrégées.It is thus possible to obtain enriched data Dx corresponding to the data aggregated in step 50 associated with certain data deduced from the aggregated data.

Sur la base de ces données enrichies générées par un module 21, l'invention propose de générer des classes de données symboliques.On the basis of these enriched data generated by a module 21, the invention proposes to generate symbolic data classes.

25 Au sens de l'invention, le mot « classe » prend un sens mathématique, c'est-à-dire qu'il correspond un sous-ensemble d'individus munis d'une propriété commune.For the purposes of the invention, the word “class” takes on a mathematical meaning, that is to say that it corresponds to a subset of individuals endowed with a common property.

Diverses sortes de variabilités sont décrites à l'intérieur des classes.Various kinds of variability are described within classes.

Dans l'analyse de données symboliques, deux types de variables sont utilisés : 30 - les variables « initiales », appelées ainsi car elles sont définies sur la population initiale des individus et 11 - les variables dites « symboliques », dont la première caractéristique est d'être définies sur des classes d'individus de la population initiale, et la seconde caractéristique est de prendre des valeurs symboliques non réductibles à des nombres ou à des catégories.In the analysis of symbolic data, two types of variables are used: 30 - “initial” variables, so called because they are defined on the initial population of individuals and 11 - so-called “symbolic” variables, whose first characteristic is to be defined on classes of individuals of the initial population, and the second characteristic is to take symbolic values not reducible to numbers or to categories.

5 Dans le contexte de l'invention, les variables initiales correspondent aux données enrichies.In the context of the invention, the initial variables correspond to the enriched data.

Les classes de données symboliques peuvent correspondre au jour Jd de la première détection de l'adresse internet IP_A du pirate sur l'ensemble des serveurs ainsi qu'au trimestre Td, au mois Md et à l'heure Hd de cette première détection.The symbolic data classes can correspond to the day Jd of the first detection of the Internet address IP_A of the pirate on all the servers as well as to the quarter Td, the month Md and the hour Hd of this first detection.

En outre, une classe de données symboliques binaires Jf peut indiquer, pour chaque adresse internet 10 IP_A, si le jour Jd de la première détection correspond un jour férié.In addition, a class of binary symbolic data Jf can indicate, for each internet address IP_A, whether the day Jd of the first detection corresponds to a public holiday.

Pour former une classe de données symboliques, il est possible d'analyser et d'extraire des informations dans un fichier initial regroupant l'ensemble des données enrichies Dx.To form a symbolic data class, it is possible to analyze and extract information in an initial file grouping together all the enriched data Dx.

15 D'autres classes de données symboliques peuvent correspondre au nombre de lignes du fichier initial comportant un pays identique nb_pays_IP_A.15 Other symbolic data classes can correspond to the number of lines of the initial file comprising an identical country nb_pays_IP_A.

Ce type de classe est appelé intervalle dans le domaine de l'analyse de données symboliques.This type of class is called an interval in the field of symbolic data analysis.

Sur la base de ce nombre de lignes du fichier initial présentant un pays identique nb_pays_IP_A, il est possible de créer une nouvelle classe de données symboliques nb_pays_IP_A_h5 représentant cette 20 première classe données symboliques sous le forme d'un histogramme discrétisé.On the basis of this number of lines of the initial file presenting an identical country nb_pays_IP_A, it is possible to create a new symbolic data class nb_pays_IP_A_h5 representing this first symbolic data class in the form of a discretized histogram.

Par exemple, en utilisant une discrétisation de niveau 5, la première colonne de l'histogramme peut contenir uniquement les pays qui sont présents une seule fois sur l'ensemble des attaques, la deuxième colonne de l'histogramme peut contenir les pays qui sont représentés deux à quatre fois sur l'ensemble des attaques, la troisième colonne de 25 l'histogramme peut contenir les pays qui sont présents entre cinq et neuf fois dans l'ensemble des attaques, la quatrième colonne de l'histogramme peut contenir les pays présents entre 10 et 20 fois alors que la cinquième colonne peut contenir les pays présents plus de 20 fois.For example, by using a level 5 discretization, the first column of the histogram can contain only the countries which are present only once on all the attacks, the second column of the histogram can contain the countries which are represented two to four times out of the set of attacks, the third column of the histogram can contain countries that are present between five and nine times in the set of attacks, the fourth column of the histogram can contain the countries present between 10 and 20 times while the fifth column can contain countries present more than 20 times.

30 Ces classes peuvent être formées de manière identique sur les villes nb_ville_IP_A, nb_ville_IP_A_h5 de l'adresse internet IP_A du pirate ou sur le sous-réseau nb_IP_tr, nb_IP_tr _h5 utilisé par le pirate.These classes can be formed in an identical manner on the cities nb_ville_IP_A, nb_ville_IP_A_h5 of the pirate's IP_A internet address or on the nb_IP_tr, nb_IP_tr _h5 subnet used by the pirate.

De la même manière, il est possible de regrouper les attaques visant un même secteur d'activité en identifiant le nombre de lignes du fichier 12 initial correspondant à une activité identique.Likewise, it is possible to group together the attacks targeting the same sector of activity by identifying the number of lines of the initial file 12 corresponding to an identical activity.

À partir de cette classe nb_act_IP_D, il est possible de discrétiser le nombre de lignes du fichier initial sous forme d'histogramme nb_act_IP_D_h5.From this class nb_act_IP_D, it is possible to discretize the number of lines of the initial file in the form of a histogram nb_act_IP_D_h5.

Une autre classe de données symboliques peut correspondre au nombre de lignes du fichier initial concernant à un port P identique nb_port ou encore 5 une classe di scrétisée nb_port_h5 sur cette classe correspondant aux ports P utilisés par les pirates.Another class of symbolic data can correspond to the number of lines of the initial file relating to an identical port P nb_port or else a class di secretized nb_port_h5 on this class corresponding to the P ports used by the hackers.

Ces classes de données symboliques correspondent uniquement à des exemples d'interprétation des données enrichies Dx.These symbolic data classes correspond only to examples of interpretation of the enriched data Dx.

En fonction de la nature des attaques dont la 10 prévision est souhaitée, il est possible de modifier ou d'ajouter des classes de données symboliques.Depending on the nature of the attacks the prediction of which is desired, it is possible to modify or add symbolic data classes.

Par exemple, il est possible de détecter la date à laquelle une adresse internet du pirate est inscrite dans une liste noire de chaque serveur 13a-13e et de détecter une durée au cours de laquelle le pirate utilise toujours cette adresse pour réaliser des requêtes avant de faire évoluer ses attaques, typiquement en utilisant une nouvelle adresse 15 internet.For example, it is possible to detect the date on which an internet address of the hacker is entered in a blacklist of each server 13a-13e and to detect a period during which the hacker always uses this address to carry out requests before making evolve its attacks, typically by using a new internet address.

En utilisant cette information, il est possible de suivre l'activité d'un pirate spécifique afin de rechercher son identité ou, à tout le moins, son pays d'origine.Using this information, it is possible to track the activity of a specific hacker in order to trace their identity or, at the very least, their country of origin.

Il est également possible d'intégrer dans les classes de données symboliques le nombre d'attaques réalisées depuis 20 une même adresse internet IP_A ou sur un même serveur ciblé 13a-13e.It is also possible to integrate into the symbolic data classes the number of attacks carried out from the same internet address IP_A or on the same targeted server 13a-13e.

Comme pour les classes précédentes, ce nombre d'attaques peut être obtenu en associant à chaque adresse internet du pirate détecté dans le fichier initial le nombre de lignes du fichier initial correspondant à cette adresse internet.As for the previous classes, this number of attacks can be obtained by associating with each internet address of the hacker detected in the initial file the number of lines of the initial file corresponding to this internet address.

Une autre classe de données symboliques peut également discrétiser ces valeurs.Another symbolic data class can also discretize these values.

Par exemple, en discréti sant cette valeur en 7 colonnes, 25 il est possible de former une première colonne dans laquelle l'adresse internet IP_A a réalisé moins de 10 attaques, une seconde colonne dans laquelle l'adresse internet IP_A a réalisé entre 11 et 50 attaques, une troisième colonne dans laquelle l'adresse internet IP_A a réalisé entre 51 et 200 attaques, une quatrième colonne dans laquelle l'adresse internet IP_A a réalisé entre 200 et 1000 attaques, une cinquième colonne dans laquelle 30 l'adresse internet IP_A a réalisé entre 1001 et 10 000 attaques, une sixième colonne dans laquelle l'adresse internet IP_A a réalisé entre 10 001 et 100 000 attaques, et une septième colonne dans laquelle l'adresse internet IP_A a réalisé plus de 100 000 attaques.For example, by discretizing this value in 7 columns, it is possible to form a first column in which the internet address IP_A has carried out less than 10 attacks, a second column in which the internet address IP_A has carried out between 11 and 50 attacks, a third column in which the internet address IP_A carried out between 51 and 200 attacks, a fourth column in which the internet address IP_A carried out between 200 and 1000 attacks, a fifth column in which the internet address IP_A carried out between 1001 and 10,000 attacks, a sixth column in which the internet address IP_A carried out between 10,001 and 100,000 attacks, and a seventh column in which the internet address IP_A carried out more than 100,000 attacks.

13 En utilisant la durée de détection des adresses internet du pirate avant qu'elles soient positionnées en liste noire, il est possible de former une classe de données symboliques sur cette durée de détection afin d'obtenir une information sur la réactivité de la sécurité du serveur 13a-13e.13 By using the detection time of the hacker's internet addresses before they are blacklisted, it is possible to form a symbolic data class on this detection time in order to obtain information on the responsiveness of the security of the hacker. server 13a-13e.

Encore une fois, une classe discrétisée de cette durée de détection 5 peut être formée sur 8 colonnes distinctes, une première colonne dans laquelle la durée de mise en liste noire de l'adresse internet est inférieure à 20 secondes, une deuxième colonne dans laquelle la durée est comprise entre 20 secondes et une minute, une troisième colonne dans laquelle la durée est comprise entre une minute et 10 minutes, quatrième colonne dans laquelle la durée est comprise entre 10 minutes et une heure, une 10 cinquième colonne dans laquelle la durée comprise entre une heure et 24 heures, une sixième colonne dans laquelle la durée comprise entre un jour et 10 jours, une septième colonne dans laquelle la durée comprise entre 10 jours et 60 jours, et une huitième colonne dans laquelle la durée supérieure à 60 jours.Once again, a discretized class of this detection duration 5 can be formed on 8 distinct columns, a first column in which the duration of the blacklisting of the internet address is less than 20 seconds, a second column in which the duration is between 20 seconds and one minute, a third column in which the duration is between one minute and 10 minutes, fourth column in which the duration is between 10 minutes and one hour, a fifth column in which the duration is between between one hour and 24 hours, a sixth column in which the duration comprised between one day and 10 days, a seventh column in which the duration comprised between 10 days and 60 days, and an eighth column in which the duration greater than 60 days.

15 Il est également possible de former des classes de données symboliques par des opérations entre des classes précédemment définies.It is also possible to form symbolic data classes by operations between previously defined classes.

Par exemple, il est possible de former une classe de données symboliques qui multiplie la durée avant la mise en liste noire d'une adresse internet par le nombre d'attaques associées 20 à cette adresse internet.For example, it is possible to form a symbolic data class which multiplies the duration before the blacklisting of an internet address by the number of attacks associated with this internet address.

Ainsi, un grand nombre de classes de données symboliques peuvent être formées sur les données enrichies Dx par un module 22 de création des classes Cx.Thus, a large number of symbolic data classes can be formed on the enriched data Dx by a module 22 for creating the classes Cx.

25 Ces classes Cx sont ensuite transmises à l'algorithme 23 précédemment décrit.These classes Cx are then transmitted to the algorithm 23 described above.

Cet algorithme 23 va utiliser des conditions initiales Ci pour regrouper les différentes classes de données symboliques Cx.This algorithm 23 will use initial conditions Ci to group together the different classes of symbolic data Cx.

Il convient donc de définir, dans une étape 53, une condition initiale Ci afin de réaliser un regroupement particulier, dans une étape 54.It is therefore appropriate to define, in a step 53, an initial condition Ci in order to carry out a particular grouping, in a step 54.

Lorsque le regroupement est réalisé, tel qu'illustré sur la figure 1, un ou plusieurs regroupements R1- 30 R5 de classes de données symboliques Cx peuvent être détectés.When the grouping is carried out, as illustrated in FIG. 1, one or more groupings R1-R5 of symbolic data classes Cx can be detected.

Ces regroupements R1-R5 sont stockés et de nouveaux regroupements sont recherchés pour d'autres conditions initiales Ci.These R1-R5 groupings are stored and new groupings are sought for other initial conditions Ci.

14 Les conditions initiales Ci, peuvent correspondre un horodatage sur une période donnée, une adresse internet de provenance dans un intervalle donné, un port dans une liste donnée et une adresse ciblée ou un secteur d'activité dans une liste donnée.The initial conditions Ci, can correspond to a time stamp over a given period, an Internet address of origin in a given interval, a port in a given list and a targeted address or a sector of activity in a given list.

Pour chacune de ces conditions initiales Ci, des regroupements R1-R5 identiques ou distincts peuvent 5 apparaître.For each of these initial conditions Ci, identical or distinct R1-R5 groupings may appear.

À l'issue de la détermination de ces multiples regroupements R1-R5, des regroupements récurrents Rx sont détectés dans une étape 55.At the end of the determination of these multiple R1-R5 groupings, recurring Rx groupings are detected in a step 55.

Ainsi, les regroupements récurrents Rx font apparaître qu'une des classes de données symboliques est directement liée à une autre classe de données symboliques.Thus, the recurring groupings Rx show that one of the symbolic data classes is directly related to another symbolic data class.

Par exemple, 10 une adresse internet d'un pirate peut être liée à une classe illustrant la durée avant qu'une adresse internet soit stockée dans une liste noire.For example, a hacker's internet address can be linked to a class illustrating the length of time before an internet address is stored in a blacklist.

Ce regroupement peut indiquer qu'un pirate particulier a l'habitude de détecter les serveurs qui ne mettent pas à jour rapidement les adresses internet détectées dans la liste noire.This grouping may indicate that a particular hacker is used to detecting servers that do not quickly update internet addresses detected in the blacklist.

Le pirate peut alors avoir l'habitude de se servir de cette information pour mener une attaque massive avec des adresses internet 15 connues du serveur mais qui ne sont pas encore mises dans une liste noire.The hacker may then have the habit of using this information to carry out a massive attack with internet addresses known to the server but which have not yet been blacklisted.

En faisant ce type de regroupement, il est possible, dans une étape 56, de rechercher un élément précurseur Ep dans un regroupement récurrent Rx précédemment détecté.By doing this type of grouping, it is possible, in a step 56, to search for a precursor element Ep in a previously detected recurring grouping Rx.

20 Par exemple, cet élément précurseur Ep peut correspondre à une première attaque d'une adresse internet spécifique ou à une heure précise à laquelle un pirate réalise classiquement ces tests de vulnérabilités.For example, this precursor element Ep can correspond to a first attack on a specific internet address or to a precise time at which a hacker conventionally carries out these vulnerability tests.

Lorsque cet élément précurseur Ep est détecté par un module 24, un module 25 met en 25 oeuvre, dans une étape 55, des moyens de détection de cet élément précurseur Ep.When this precursor element Ep is detected by a module 24, a module 25 implements, in a step 55, means for detecting this precursor element Ep.

Typiquement, une information 15a-15e est propagée sur les différents serveurs 13a-13e afin qu'ils mettent en oeuvre les contre réactions nécessaires.Typically, a piece of information 15a-15e is propagated on the various servers 13a-13e so that they implement the necessary counter reactions.

L'invention permet ainsi d'anticiper une intrusion informatique sur la base d'un modus 30 operandi précédemment observé d'un pirate ou d'un ensemble de pirates.The invention thus makes it possible to anticipate a computer intrusion on the basis of a previously observed modus operandi of a hacker or of a set of hackers.

En effet, les pirates utilisent de plus en plus des logiciels malveillants avec un algorithme spécifique.Indeed, hackers are increasingly using malware with a specific algorithm.

En étudiant la nature, la fréquence et le type de requête, il est possible de détecter un fonctionnement récurrent issu d'un algorithme d'un logiciel malveillant.By studying the nature, frequency and type of request, it is possible to detect a recurring operation resulting from a malware algorithm.

Même si un pirate 15 utilise pour la première fois ce logiciel, les comportements intrinsèques du logiciel ont pu être précédemment observés et les actions du pirate peuvent être anticipées car des regroupements précédents ont montré comment un pirate allait agir par l'intermédiaire de ce logiciel malveillant.Even if a hacker 15 is using this software for the first time, the intrinsic behaviors of the software may have been previously observed and the hacker's actions can be anticipated because previous groupings have shown how a hacker would act through this malware. .

5 Ces logiciels malveillants peuvent être vendus à des pirates via des plateformes de commerce.5 These malware can be sold to hackers through trading platforms.

L'invention permet donc de neutraliser un logiciel malveillant utilisé par une communauté neutralisant ainsi plusieurs pirates.The invention therefore makes it possible to neutralize malicious software used by a community, thus neutralizing several hackers.

10 De manière plus générale, l'invention permet d'améliorer la sécurité informatique d'un10 More generally, the invention makes it possible to improve the computer security of a

Claims (10)

REVENDICATIONS1. Procédé d'anticipation d'intrusion informatique caractérisé en ce qu'il comporte les étapes suivantes : - agrégation (50) de données d'intrusions ou de tentatives d'intrusions passées (14a-14e), chaque donnée (Dx) comportant au moins une indication d'horodatage (Dt), une adresse internet de provenance (IP A), une adresse internet cible (IP D) et un port (P) lié à l'intrusion ou à la tentative d'intrusion passée ; - enrichissement (51) de chaque donnée (Dx) de sorte à associer ladite adresse 10 internet de provenance (IP_A) avec au moins une information géographique (villelP_A, payslP_A) et ladite adresse internet cible (IP_D) avec au moins un secteur d'activité (act IP D) ; - création (52) de classes de données symboliques (Cx) sur lesdites données enrichies (Dx), lesdites classes de données symboliques (Cx) comportant : 15 - au moins une classe (Jd, Jf, Hd, Md, Td) liée à une information temporelle de première détection de chaque adresse internet de provenance (IP_A) ; - au moins une classe (nb pays IP A, nb pays IP A h5, nb ville IP A, nb ville _ IP A h5) liée à une information de récurrence de chaque adresse 20 internet de provenance (IP_A) ; - au moins une classe (nb act IP D nb act IP D h5) liée à une information de récurrence de chaque adresse internet cible (IP_D) ; et - au moins une classe (nbport, nb_port h5) liée à une information de récurrence de chaque port (P) de chaque donnée ; 25 - pour plusieurs conditions initiales (Ci), regroupement (54) desdites classes de données symboliques (Cx) à partir d'une condition initiale (Ci) au moyen d'un algorithme de nuées dynamiques (23) ; - détermination (55) des regroupements (R1-R5) les plus récurrents formant des ensembles d'intrusions ou de tentatives d'intrusions passées concomitantes ; 30 - recherche (56) d'au moins un élément précurseur (Ep) lié à un ensemble ; et - mise en oeuvre (57) de moyens de détection (15a-15e) dudit au moins un élément précurseur (Ep) de sorte à anticiper la survenue d'une tentative d'intrusion informatique. 17CLAIMS 1. Computer intrusion anticipation method characterized in that it comprises the following steps: - aggregation (50) of intrusion data or past intrusion attempts (14a-14e), each data item (Dx) comprising at least a timestamp indication (Dt), an originating internet address (IP A), a target internet address (IP D) and a port (P) linked to the intrusion or the past intrusion attempt; - enrichment (51) of each datum (Dx) so as to associate said originating internet address (IP_A) with at least one geographic item of information (villelP_A, payslP_A) and said target internet address (IP_D) with at least one sector of activity (act IP D); - creation (52) of symbolic data classes (Cx) on said enriched data (Dx), said symbolic data classes (Cx) comprising: - at least one class (Jd, Jf, Hd, Md, Td) linked to time information of the first detection of each originating internet address (IP_A); at least one class (number of IP country A, number of IP country A h5, number of city IP A, number of city _ IP A h5) linked to recurrence information for each originating internet address (IP_A); - at least one class (nb act IP D nb act IP D h5) linked to recurrence information for each target internet address (IP_D); and - at least one class (nbport, nb_port h5) linked to recurrence information for each port (P) of each data item; - for several initial conditions (Ci), grouping (54) of said symbolic data classes (Cx) from an initial condition (Ci) by means of a dynamic cloud algorithm (23); - determination (55) of the most recurring groupings (R1-R5) forming sets of concomitant intrusions or attempts at past intrusions; 30 - search (56) for at least one precursor element (Ep) linked to a set; and - implementation (57) of detection means (15a-15e) of said at least one precursor element (Ep) so as to anticipate the occurrence of a computer intrusion attempt. 17 2. Procédé d'anticipation selon la revendication 1, dans lequel l'étape de regroupement (54) desdites classes de données symboliques (Cx) est réalisée à partir de quatre conditions initiales (Ci) : - un horodatage (Dt) sur une période donnée ; 5 - une adresse internet de provenance (IP A) dans un intervalle donné ; - un port (P) dans une liste donnée ; et - une adresse internet cible (IP D) et/ou un secteur d'activité (act IP D) dans une liste donnée.2. Anticipation method according to claim 1, wherein the grouping step (54) of said symbolic data classes (Cx) is carried out on the basis of four initial conditions (Ci): - a timestamp (Dt) over a period. given; 5 - a originating internet address (IP A) within a given interval; - a port (P) in a given list; and - a target internet address (IP D) and / or a sector of activity (act IP D) in a given list. 3. Procédé d'anticipation selon la revendication 2, dans lequel, lesdites classes de données symboliques comportent au moins deux classes liées à une information de récurrence de chaque port (P) de chaque donnée : - une première classe (nb_port) représentant l'évolution de l'intervalle de récurrence des données associées au port ; et - une seconde classe (nb_port_h5) représentant, sous forme d'histogrammes, lesdites évolutions de ladite première classe.3. Anticipation method according to claim 2, in which said symbolic data classes comprise at least two classes linked to recurrence information for each port (P) of each data: a first class (nb_port) representing the evolution of the recurrence interval of the data associated with the port; and - a second class (nb_port_h5) representing, in the form of histograms, said evolutions of said first class. 4. Procédé d'anticipation selon l'une des revendications 1 à 3, dans lequel, lesdites classes de données symboliques comportant au moins cinq classes liées à une information 20 temporelle de première détection de chaque adresse internet de provenance (IP A) : - une première classe (Jd) représentant le jour de ladite première détection de chaque adresse internet de provenance ; - une seconde classe (Md) représentant le mois de ladite première détection de chaque adresse internet de provenance ; 25 - une troisième classe (Td) représentant le trimestre de ladite première détection de chaque adresse internet de provenance ; - une quatrième classe (Hd) représentant l'heure de ladite première détection de chaque adresse internet de provenance ; et - une cinquième classe (7f) représentant la présence ou non d'un jour férié, dans le 30 pays de l'adresse internet cible (IP D), le jour de ladite première détection de chaque adresse internet de provenance (IP A). 184. Anticipation method according to one of claims 1 to 3, in which, said symbolic data classes comprising at least five classes linked to time information 20 of the first detection of each originating internet address (IP A): - a first class (Jd) representing the day of said first detection of each originating internet address; a second class (Md) representing the month of said first detection of each originating internet address; - a third class (Td) representing the quarter of said first detection of each originating internet address; a fourth class (Hd) representing the time of said first detection of each originating internet address; and - a fifth class (7f) representing the presence or not of a public holiday, in the country of the target internet address (IP D), on the day of said first detection of each originating internet address (IP A) . 18 5. Procédé d'anticipation selon l'une des revendications 1 à 4, dans lequel, ladite au moins une information géographique de ladite adresse internet de provenance (IP A) comporte une information (villelP A) sur la ville de ladite adresse internet de provenance et une information (payslP_A) sur le pays de ladite adresse internet de provenance. 55. Anticipation method according to one of claims 1 to 4, wherein said at least one geographic information item of said originating internet address (IP A) comprises information (villelP A) on the city of said internet address of provenance and information (payslP_A) on the country of said internet address of origin. 5 6. Procédé d'anticipation selon la revendication 5, dans lequel lesdites classes de données symboliques (Cx) comportent : - une classe (nb_pays IP A) représentant le nombre de données liées à un pays spécifique de ladite adresse internet de provenance (IP A) ; et 10 - une classe (nb_pays IP A h5) représentant, sous forme d'histogrammes, lesdites données liées à un pays spécifique de ladite adresse internet de provenance (IP_A).6. Anticipation method according to claim 5, in which said symbolic data classes (Cx) comprise: a class (nb_pays IP A) representing the number of data linked to a specific country of said originating internet address (IP A ); and 10 - a class (nb_pays IP A h5) representing, in the form of histograms, said data linked to a specific country of said originating internet address (IP_A). 7. Procédé d'anticipation selon la revendication 5 ou 6, dans lequel lesdites classes de 15 données symboliques (Cx) comportent : - une classe (nb ville _IP_A) IP _A) représentant le nombre de données liées à une ville _ spécifique de ladite adresse internet de provenance (IP A) ; et - une classe (nb _ ville _ IP _ A_ h5) représentant, sous forme d'histogrammes, lesdites données liées à une ville spécifique de ladite adresse internet de 20 provenance (IP A).7. Anticipation method according to claim 5 or 6, wherein said symbolic data classes (Cx) comprise: - a class (nb city _IP_A) IP _A) representing the number of data linked to a specific city of said. originating internet address (IP A); and - a class (nb _ city _ IP _ A_ h5) representing, in the form of histograms, said data linked to a specific city of said originating internet address (IP A). 8. Procédé d'anticipation selon l'une des revendications 1 à 7, dans lequel, ladite au moins une information géographique de ladite adresse internet de provenance (IP_A) comporte une information sur le sous-réseau (SR_IP_A) de ladite adresse internet de 25 provenance (IP_A).8. Anticipation method according to one of claims 1 to 7, wherein said at least one geographic information item of said originating internet address (IP_A) comprises information on the sub-network (SR_IP_A) of said internet address of 25 provenance (IP_A). 9. Procédé d'anticipation selon la revendication 8, dans lequel lesdites classes de données symboliques (Cx) comportent : - une classe (nb 1P tr) représentant le nombre de données liées au sous-réseau 30 spécifique de ladite adresse internet de provenance (IP A) ; et - une classe (nb IP tr h5) représentant, sous forme d'histogrammes, lesdites données liées à un sous-réseau spécifique de ladite adresse internet de provenance (IP_A). 199. Anticipation method according to claim 8, in which said symbolic data classes (Cx) comprise: a class (nb 1P tr) representing the number of data linked to the specific sub-network of said originating internet address ( IP A); and - a class (nb IP tr h5) representing, in the form of histograms, said data linked to a specific sub-network of said originating internet address (IP_A). 19 10. Procédé d'anticipation selon l'une des revendications 1 à 9, dans lequel, lesdites classes de données symboliques (Cx) comportent au moins deux classes liées à une information de récurrence de chaque adresse internet cible (IP D) : - une première classe (nb_act_IP_D) représentant le nombre de données liées à 5 une adresse internet cible (W D) et/ou un secteur d'activité (act W D) ; et - une seconde classe (nb _ act _ IP D _h5) représentant, sous forme d'histogrammes, _ lesdites données liées à une adresse internet cible (IP D) et/ou un secteur d'activité (act IP D).10. Anticipation method according to one of claims 1 to 9, wherein said symbolic data classes (Cx) include at least two classes linked to recurrence information for each target internet address (IP D): - a first class (nb_act_IP_D) representing the number of data items linked to a target internet address (WD) and / or a sector of activity (act WD); and a second class (nb _ act _ IP D _h5) representing, in the form of histograms, _ said data linked to a target internet address (IP D) and / or a sector of activity (act IP D).
FR1859970A 2018-10-26 2018-10-26 COMPUTER INTRUSION ANTICIPATION PROCESS Active FR3087912B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1859970A FR3087912B1 (en) 2018-10-26 2018-10-26 COMPUTER INTRUSION ANTICIPATION PROCESS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1859970A FR3087912B1 (en) 2018-10-26 2018-10-26 COMPUTER INTRUSION ANTICIPATION PROCESS

Publications (2)

Publication Number Publication Date
FR3087912A1 true FR3087912A1 (en) 2020-05-01
FR3087912B1 FR3087912B1 (en) 2020-12-11

Family

ID=65685626

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1859970A Active FR3087912B1 (en) 2018-10-26 2018-10-26 COMPUTER INTRUSION ANTICIPATION PROCESS

Country Status (1)

Country Link
FR (1) FR3087912B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9948663B1 (en) * 2015-12-07 2018-04-17 Symantec Corporation Systems and methods for predicting security threat attacks
US20180288063A1 (en) * 2017-03-31 2018-10-04 Oracle International Corporation Mechanisms for anomaly detection and access management

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9948663B1 (en) * 2015-12-07 2018-04-17 Symantec Corporation Systems and methods for predicting security threat attacks
US20180288063A1 (en) * 2017-03-31 2018-10-04 Oracle International Corporation Mechanisms for anomaly detection and access management

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"Rev. Statistique Appliquée", 2003, M. CHAVENT & CO., article "trois nouvelles méthodes de classification automatique de données symboliques de type intervalle", pages: 5 - 29
ALEROUD AHMED ET AL: "Contextual information fusion for intrusion detection: a survey and taxonomy", KNOWLEDGE AND INFORMATION SYSTEMS, SPRINGER VERLAG,LONDON, GB, vol. 52, no. 3, 17 February 2017 (2017-02-17), pages 563 - 619, XP036289390, ISSN: 0219-1377, [retrieved on 20170217], DOI: 10.1007/S10115-017-1027-3 *
EDWIN DIDAY, INTRODUCTION À L'ANALYSE DE DONNÉES SYMBOLIQUES, May 2006 (2006-05-01)
PHILIPPE CAILLOU; EDWIN DIDAY, ANALYSE DE DONNÉES SYMBOLIQUES ET GRAPHE DE CONNAISSANCE D'UN AGENT, 2005

Also Published As

Publication number Publication date
FR3087912B1 (en) 2020-12-11

Similar Documents

Publication Publication Date Title
US8356001B2 (en) Systems and methods for application-level security
EP3479285B1 (en) Method and device for monitoring the security of an information system
Baker et al. 2011 data breach investigations report
CN108183888B (en) Social engineering intrusion attack path detection method based on random forest algorithm
EP3156931B1 (en) Method for detecting vulnerabilities in a virtual production server of a virtual or cloud-based computer system
CN110210213B (en) Method and device for filtering malicious sample, storage medium and electronic device
FR2887385A1 (en) METHOD AND SYSTEM FOR REPORTING AND FILTERING MULTIMEDIA INFORMATION ON A NETWORK
Liu et al. Error prevalence in nids datasets: A case study on cic-ids-2017 and cse-cic-ids-2018
US20210281609A1 (en) Rating organization cybersecurity using probe-based network reconnaissance techniques
EP2705644A1 (en) Method for detecting intrusions on a set of virtual resources
Li et al. Double and nothing: Understanding and detecting cryptocurrency giveaway scams
Vishwakarma Network traffic based botnet detection using machine learning
EP1045304A1 (en) Method for controlling a decision process seeking a goal in a determined application domain, such as economical, technical, organisational or analogous and system for performing the method
FR3087912A1 (en) COMPUTER INTRUSION ANTICIPATION PROCESS
EP2849404B1 (en) Method for detecting unrequested intrusions in an information network, corresponding device, computer program product and storage means
EP2353272B1 (en) Method for characterising entities at the origin of fluctuations in a network traffic
AlMasri et al. Towards Generating a Practical SUNBURST Attack Dataset for Network Attack Detection.
CN114915485A (en) Abnormal behavior analysis method and device based on UEBA
IL279893A (en) A system and method for identifying exploited cves using honeypots
FR3079642A1 (en) COMPUTER INTRUSION SENSOR AND METHOD FOR CREATING AN INTRUSION SENSOR
US20230379361A1 (en) System and method for generating cyber threat intelligence
US20240089289A1 (en) Identification of invalid advertising traffic
EP4181002A1 (en) Method for detecting a cyber threat weighing on an information system; associated computer program product and computer system
WO2020058343A1 (en) Method for analysing malfunctions of a system and associated devices
FR3089321A1 (en) Computer attack defense methods and programs

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20200501

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6