FR3094600A1 - Procédé d’extraction d’au moins un motif de communication dans un réseau de communication - Google Patents
Procédé d’extraction d’au moins un motif de communication dans un réseau de communication Download PDFInfo
- Publication number
- FR3094600A1 FR3094600A1 FR1903367A FR1903367A FR3094600A1 FR 3094600 A1 FR3094600 A1 FR 3094600A1 FR 1903367 A FR1903367 A FR 1903367A FR 1903367 A FR1903367 A FR 1903367A FR 3094600 A1 FR3094600 A1 FR 3094600A1
- Authority
- FR
- France
- Prior art keywords
- sequences
- connections
- pair
- similarity
- register
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000001105 regulatory effect Effects 0.000 claims abstract description 70
- 238000011524 similarity measure Methods 0.000 claims abstract description 52
- 238000013475 authorization Methods 0.000 claims abstract description 20
- 238000000605 extraction Methods 0.000 claims description 66
- 238000001514 detection method Methods 0.000 claims description 55
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012217 deletion Methods 0.000 claims description 8
- 230000037430 deletion Effects 0.000 claims description 8
- 238000010200 validation analysis Methods 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 7
- 239000000783 alginic acid Substances 0.000 claims description 5
- 239000011668 ascorbic acid Substances 0.000 claims description 5
- 230000003247 decreasing effect Effects 0.000 claims description 5
- 239000004148 curcumin Substances 0.000 claims description 4
- 239000004334 sorbic acid Substances 0.000 claims description 3
- 230000033228 biological regulation Effects 0.000 claims description 2
- 230000006399 behavior Effects 0.000 description 59
- 230000000670 limiting effect Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008685 targeting Effects 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 241000566613 Cardinalis Species 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000003340 combinatorial analysis Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Procédé d’extraction d’au moins un motif de communication dans un réseau de communication L’invention concerne un procédé d’extraction d’au moins un motif de communication à partir d’au moins un registre de réseau comportant un ensemble de connexions, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses. En outre, ledit procédé comporte :- une étape de détermination (E10) d’au moins un registre de paire relatif à une paire d’adresses associées à au moins deux connexions,- une étape de détermination (E20) de séquences de connexions contenues dans le registre de paire,- une étape de comparaison (E30) des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit « ensemble règlementaire », une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,et, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire (E40),- une étape d’extraction (E50) d’au moins un motif de communication, ledit motif comportant ledit ensemble règlementaire. Figure pour l’abrégé : Fig. 2.
Description
La présente invention appartient au domaine général de la sécurité informatique. Elle concerne plus particulièrement un procédé d’extraction d’au moins un motif de communication à partir d’un registre de réseau comportant des connexions préalablement établies dans un réseau de communication. Elle concerne aussi un procédé de détection d’un comportement dans un réseau de communication, à partir d’un registre de réseau courant comportant des connexions établies dans ledit réseau. L’invention trouve une application particulièrement avantageuse, bien que nullement limitative, dans le cas d’un réseau faisant l’objet d’une intrusion malveillante.
Par « réseau de communication », on fait référence ici à l’ensemble des ressources matérielles et logicielles utiles à la transmission et l’échange d’informations entre différentes entités regroupées dans ledit réseau.
Une détection rapide et précise de menaces et d’intrusions, correspondant le cas échéant à des attaques effectives, dans des réseaux de communication est une problématique critique pour la sécurité des entités partageant de tels réseaux. L’ampleur de cette problématique ne cesse en outre de s’accroître de nos jours à mesure que le volume de trafic généré dans ces réseaux augmente.
Aujourd’hui, la prise en charge de cette problématique est réalisée par des experts en sécurité des réseaux, éventuellement regroupés dans une entité dite « SOC » (acronyme de l’expression anglo-saxonne « Security Operating
Center ») au sein d‘une entreprise. Ces experts mettent en œuvre des outils dédiés de protection, typiquement des systèmes de type SIEM (acronyme de l’expression anglo-saxonne « Security Information and Event Management ») permettant de corréler des connexions établies au sein d’un réseau de communication entre deux entités, cela afin d’identifier d’éventuels liens entre lesdites connexions (une connexion correspondant à un « log » dans la littérature anglo-saxonne lorsqu’elle est horodatée). De cette manière, il est possible, via ces systèmes SIEM, d’émettre des alertes en cas d’intrusion malveillante au sein du réseau, ainsi que de générer des rapports relatifs aux incidents et anomalies analysées.
Center ») au sein d‘une entreprise. Ces experts mettent en œuvre des outils dédiés de protection, typiquement des systèmes de type SIEM (acronyme de l’expression anglo-saxonne « Security Information and Event Management ») permettant de corréler des connexions établies au sein d’un réseau de communication entre deux entités, cela afin d’identifier d’éventuels liens entre lesdites connexions (une connexion correspondant à un « log » dans la littérature anglo-saxonne lorsqu’elle est horodatée). De cette manière, il est possible, via ces systèmes SIEM, d’émettre des alertes en cas d’intrusion malveillante au sein du réseau, ainsi que de générer des rapports relatifs aux incidents et anomalies analysées.
Les systèmes SIEM ne peuvent toutefois pas être considérés comme optimaux en termes de stratégie de protection et de défense vis-à-vis d’intrusions dans un réseau de communication. En effet, ces derniers s’appuient sur des règles de détection statiques, et ne sont pas aptes à détecter des variantes d’attaques ciblées, de sorte qu’ils génèrent des fausses alertes en quantité non négligeable. Ces règles doivent donc être régulièrement mises à jour manuellement pour tenir compte d’évolutions des attaques, ce qui consomme énormément de temps d’experts tout en leur demandant des efforts considérables. Il en découle une stratégie de protection coûteuse, peu réactive, et dès lors peu adaptée à des détections rapides aptes à réduire le taux de fausses alertes.
D’autres systèmes ont alors été proposés en complément des systèmes SIEM. Il s’agit de systèmes de détection de type IDS (acronyme de l’expression anglo-saxonne « Intrusion Detection System »), conçus pour repérer des activités anormales dans un réseau ou sur une machine informatique, et pouvant se décliner selon deux alternatives.
Selon une première alternative, un système IDS repère automatiquement une activité anormale dans l’activité d’un réseau à partir d’une bibliothèque de signatures, chaque signature étant associée à une intrusion spécifique connue. Autrement dit, une signature correspond à un comportement anormal au sein du réseau. En sus de la détection d’une intrusion, un tel système IDS est capable de catégoriser une intrusion détectée, cela grâce à des étiquettes respectivement attribuées, de manière supervisée, aux signatures de la bibliothèque.
Selon une seconde alternative, un système IDS réalise une détection sur la base d’un modèle comportemental, dite encore « détection par anomalie ». Il s’agit ici d’apprendre de manière non supervisée, c’est-à-dire au cours d’une phase d’apprentissage automatique, un comportement normal des entités partageant le réseau. Par « comportement normal », on fait référence ici à un comportement nominal des entités sur le réseau, en dehors de toute intrusion malveillante. De cette manière, toute divergence par rapport au comportement normal peut ensuite être signalée au moyen d‘une alerte.
Cela étant, bien que les systèmes IDS permettent d’améliorer la surveillance des réseaux, ils présentent néanmoins aussi des inconvénients.
En effet, les systèmes de détection par signatures mettent en œuvre, finalement, une démarche similaire à celle d’un anti-virus, et restent par conséquent purement réactifs. Ils sont donc contournables, même par des variantes mineures des signatures enregistrées. Ils nécessitent donc là aussi des mises à jour récurrentes par les experts. Par ailleurs, l’efficacité de ces systèmes repose fondamentalement sur la qualité des étiquettes attribuées manuellement, ce qui les rend donc peu robustes en cas d’erreurs ou même de manque d’information sur lesdites étiquettes.
En ce qui concerne les systèmes IDS de détection par anomalie, on comprend qu’ils ne sont pas mis en œuvre pour reconnaître des intrusions spécifiques, mais pour signaler toute activité perçue comme anormale, que cette dernière soit malveillante ou non. Il en résulte une incapacité à catégoriser les intrusions détectées, et, plus fondamentalement, un besoin d’ajustements récurrents pour faire évoluer l’apprentissage du comportement normal des entités fonctionnant sur le réseau.
Par ailleurs, la manière selon laquelle un système IDS, quel que soit son type, analyse les connexions établies au sein d’un réseau peut elle aussi varier : connexion par connexion, ou bien paquet de connexions par paquet de connexions. Pour chacune de ces variantes, les connexions / paquets sont traités au fur et à mesure de leur établissement / arrivée dans le réseau, de sorte qu’elles / ils ne présentent pas de lien particulier entre elles / eux. Une telle manière de procéder est pénalisante car les alertes remontées par un système IDS sont alors trop peu détaillées quant au mode opératoire des intrusions détectées (cause d’alerte non expliquée, moment d’intrusion mal défini, etc.), et manquent alors de pertinence.
La présente invention a pour objectif de remédier à tout ou partie des inconvénients de l’art antérieur, notamment ceux exposés ci-avant, en proposant une solution qui permette de détecter automatiquement un comportement jusqu’alors inconnu, et correspondant par exemple à une intrusion malveillante, dans un réseau de communication, de sorte à obtenir une description très précise du mode opératoire de ce comportement. De cette manière, le temps à investir pour analyser et valider le comportement détecté est considérablement réduit, si bien qu’il est possible de mettre en place, le cas échéant, des mesures de sécurité adaptées très rapidement.
A cet effet, et selon un premier aspect, l’invention concerne un procédé d’extraction d’au moins un motif de communication à partir d’au moins un registre de réseau comportant un ensemble de connexions préalablement établies dans un réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire. En outre, ledit procédé comporte :
- une étape de détermination d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- une étape de détermination de séquences de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- une étape de comparaison des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit
« ensemble règlementaire », une règle de similarité étant évaluée en fonction d’au moins un attribut pour estimer si deux séquences sont similaires au regard de ladite règle, une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,
et, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire,
- une étape d’extraction, pour l’ensemble règlementaire considéré, d’au moins un motif de communication, ledit motif comportant ledit ensemble règlementaire.
- une étape de détermination d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- une étape de détermination de séquences de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- une étape de comparaison des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit
« ensemble règlementaire », une règle de similarité étant évaluée en fonction d’au moins un attribut pour estimer si deux séquences sont similaires au regard de ladite règle, une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,
et, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire,
- une étape d’extraction, pour l’ensemble règlementaire considéré, d’au moins un motif de communication, ledit motif comportant ledit ensemble règlementaire.
Ainsi, le procédé d’extraction utilise des registres de paire afin d’y répertorier des connexions. Sur la base de ces connexions, des séquences de connexions sont déterminées. Ces séquences de connexions correspondent à une suite de connexions effectuées par deux entités du réseau. De cette manière, si plusieurs paires d’adresses sont considérées, on obtient plusieurs registres de paire, et donc aussi des séquences de connexions réparties entre lesdits registres de paire.
Sous réserve de satisfaire une règle d’autorisation de comparaison, lesdites séquences de connexions sont comparées entre elles deux à deux au moyen de règles de similarité, afin d’évaluer leur similarité. Si au moins deux séquences sont jugées similaires, au regard d’un critère de similarité, un motif en est extrait, ce motif une représentation généralisée d’un comportement dans le réseau.
Cette manière de procéder pour extraire un motif est particulièrement avantageuse car elle permet de détecter automatiquement des comportements jusqu’alors inconnus.
En outre, le fait de déterminer au moins un motif sur la base desdites séquences de connexions permet d’identifier toutes les connexions impliquées dans le comportement associé au motif, et donc de précisément délimiter ledit comportement. Ainsi, la tâche d’un expert souhaitant identifier un comportement dans un réseau sur la base d’un motif extrait est significativement réduite, de sorte à diminuer son temps d’investigation.
De plus, le motif extrait décrit le comportement associé d’une manière particulièrement simple, à savoir au moyen de règles de similarité. Une telle description formalisée est particulièrement simple de lecture pour un expert, ainsi que manipulable au moyen d’une machine, comme par exemple un ordinateur. Il découle de ce formalisme une grande rapidité d’identification d’un comportement par un expert, de sorte que des mesures de sécurité adaptées peuvent très rapidement être mises en place
Dans des modes particuliers de mise en œuvre, le procédé d’extraction peut comporter en outre l’une ou plusieurs des caractéristiques suivantes, prises isolément ou selon toutes les combinaisons techniquement possibles.
Dans des modes particuliers de mise en œuvre, une règle d’autorisation de comparaison consiste à comparer des séquences n’ayant pas de connexions en commun.
Dans des modes particuliers de mise en œuvre, une règle d’autorisation de comparaison consiste à comparer des séquences de même taille.
De telles règles de comparaison permettent de réaliser un compromis entre une étape de comparaison qui soit la plus exhaustive possible et une charge de calcul qui reste contenue.
Dans des modes particuliers de mise en œuvre, l’étape de comparaison comporte, pour une taille donnée k de séquence :
- un regroupement des séquences de taille k dans un ensemble, dit « ensemble de niveau k »,
- une comparaison des séquences de l’ensemble de niveau k conformément à ladite au moins une règle d’autorisation de comparaison et audit au moins un ensemble règlementaire,
le regroupement et la comparaison de niveau k étant réalisés de manière itératives suivant les tailles k décroissantes.
- un regroupement des séquences de taille k dans un ensemble, dit « ensemble de niveau k »,
- une comparaison des séquences de l’ensemble de niveau k conformément à ladite au moins une règle d’autorisation de comparaison et audit au moins un ensemble règlementaire,
le regroupement et la comparaison de niveau k étant réalisés de manière itératives suivant les tailles k décroissantes.
Le fait de regrouper et de comparer les séquences de cette manière permet d’obtenir un bon compromis pour l’extraction de motifs. Plus particulièrement, les inventeurs ont constaté que procéder ainsi permet de ne pas comparer toutes les séquences entre elles, et donc d’alléger la charge de calcul, tout en obtenant une extraction de bonne qualité, c’est-à-dire qui soit exhaustive et qui limite également le risque d’extraire des motifs correspondant à de fausses intrusions malveillantes.
Dans des modes particuliers de mise en œuvre, au cours d’une itération, la comparaison de niveau k est suivie d’une suppression, parmi toutes les séquences de taille inférieure à k, des séquences comportant des connexions en commun avec les séquences de l’ensemble de niveau k.
Une telle mise en œuvre évite d’effectuer des comparaisons potentiellement redondantes, et donc d’augmenter inutilement la charge de calcul.
Dans des modes particuliers de mise en œuvre, au cours d’une itération, la comparaison de niveau k est suivie d’une suppression, parmi toutes les séquences de taille k, des séquences dont une mesure de similarité associée ne satisfait pas le critère de similarité et comportant des connexions en commun avec les séquences de taille k qui satisfont ledit critère de similarité.
En procédant ainsi, on effectue un tri à chaque niveau k afin d’écarter les séquences qui sont potentiellement moins pertinentes pour l’extraction de motif, du fait qu’elles ne satisfont pas le critère de similarité, et qui sont en outre susceptibles de créer des redondances dans les motifs extraits.
Dans des modes particuliers de mise en œuvre, l’ensemble d’attributs d’une connexion comporte un horodatage, le registre de paire étant déterminé de sorte que ses connexions sont classées par ordre chronologique, les séquences du registre de paire étant ensuite déterminées, pour tout k compris entre 2 et le cardinal du registre de paire, au moyen d’une fenêtre glissante de taille k.
Dans des modes particuliers de mise en œuvre, la paire d’adresses considérée pour déterminer le registre de paire est associée à au moins trois connexions, le nombre de connexions d’une séquence étant en outre supérieur ou égal à 3.
Le fait de considérer une telle minoration du nombre de connexions pour une paire d’adresses ainsi que pour une séquence permet de chercher à identifier des comportements de complexité plus grande que dans le cas où une séquence comporte uniquement deux connexions.
Dans des modes particuliers de mise en œuvre, au moins une règle de similarité d’un ensemble règlementaire est évaluée également en fonction d’un paramètre de tolérance prédéfini associé audit au moins un attribut de ladite règle de similarité.
La prise en compte d’un tel paramètre de tolérance permet avantageusement de relâcher la contrainte imposée par une règle. Dit autrement, le paramètre de tolérance permet d’interpréter une règle de manière plus large afin d’accroitre la probabilité que deux séquences soient similaires pour cette règle.
Dans des modes particuliers de mise en œuvre, l’étape de comparaison est itérée jusqu’à l’atteinte d’une condition d’arrêt prédéfinie, au moins un paramètre de tolérance associé à au moins un ensemble réglementaire étant mis à jour au cours de chaque itération, de sorte que :
- une règle de similarité mise à jour en conséquence permet potentiellement d’augmenter le nombre de paires de séquences considérées comme similaires pour ladite règle,
- des mesures de similarité mises à jour sont obtenues.
- une règle de similarité mise à jour en conséquence permet potentiellement d’augmenter le nombre de paires de séquences considérées comme similaires pour ladite règle,
- des mesures de similarité mises à jour sont obtenues.
Le fait d’augmenter, pour au moins une règle de similarité, le nombre potentiel de séquences considérées comme similaires permet de relâcher la contrainte de respect de ladite règle par les séquences déterminées auparavant. De cette manière, on peut avantageusement détecter des variantes d’une intrusion, c’est-à-dire des variations d’exécution d’une même intrusion.
Dans des modes particuliers de mise en œuvre, la condition d’arrêt correspond à un nombre maximal de mesures de similarité satisfaisant ledit critère de similarité.
Majorer ainsi le nombre de mesures de similarité satisfaisant ledit critère de similarité tend à favoriser une limitation du nombre de variantes potentielles recherchées.
Dans des modes particuliers de mise en œuvre, un motif extrait comporte également une valeur correspondant à la taille maximale des séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité.
De telles dispositions permettent d’obtenir un motif ciblant très précisément un comportement particulier caractérisé non seulement par les règles de similarité mais aussi par la taille d’une séquence de connexions pouvant être représentative dudit comportement.
Dans des modes particuliers de mise en œuvre, ledit procédé comportant en outre, à la suite de l’étape d’extraction, une étape de validation du comportement d’au moins un des motifs extraits, de sorte que ledit au moins un motif extrait est associé à une étiquette représentative dudit comportement en cas de validation.
En procédant ainsi, il est possible de confirmer ou d’infirmer la nature du comportement (malveillant, bénin) associé au motif extrait, ce qui permet d’éviter par la suite l’émission de fausses alertes. Le format d’un motif étant très simple à manipuler, le temps à consacrer pour réaliser une telle validation est fortement réduit.
Selon un deuxième aspect, l’invention concerne un programme d’ordinateur comportant des instructions pour la mise en œuvre d’un procédé d’extraction selon l’invention lorsque ledit programme est exécuté par un processeur.
Selon un troisième aspect, l’invention concerne un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur selon l’invention pour la mise en œuvre d’un procédé d’extraction selon l’invention.
Selon un quatrième aspect, l’invention concerne un dispositif d’extraction d’au moins un motif de communication à partir d’au moins un registre de réseau comportant un ensemble de connexions préalablement établies dans un réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit dispositif d’extraction comportant :
- un premier module de détermination, configuré pour déterminer au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- un second module de détermination, configuré pour déterminer des séquences de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- un module de comparaison, configuré pour comparer des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit « ensemble règlementaire », une règle de similarité étant évaluée en fonction d’au moins un attribut pour estimer si deux séquences sont similaires au regard de ladite règle, une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,
- un module d’extraction, configuré pour extraire, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire, au moins un motif de communication pour l’ensemble règlementaire considéré, ledit motif comportant ledit ensemble règlementaire.
- un premier module de détermination, configuré pour déterminer au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- un second module de détermination, configuré pour déterminer des séquences de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- un module de comparaison, configuré pour comparer des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit « ensemble règlementaire », une règle de similarité étant évaluée en fonction d’au moins un attribut pour estimer si deux séquences sont similaires au regard de ladite règle, une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,
- un module d’extraction, configuré pour extraire, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire, au moins un motif de communication pour l’ensemble règlementaire considéré, ledit motif comportant ledit ensemble règlementaire.
Selon un cinquième aspect, l’invention concerne un procédé de détection d’un comportement dans un réseau de communication, à partir d’au moins un registre de réseau courant comportant un ensemble de connexions établies dans ledit réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit procédé de détection comportant :
- une étape d’obtention d’au moins un motif de communication préalablement extrait, selon un procédé d’extraction conforme à l’invention, dans un registre de réseau comportant un ensemble de connexions établies antérieurement aux connexions dudit registre de réseau courant,
- une étape de détermination d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- une étape de détermination d’au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- une étape de vérification d’une correspondance entre le motif de communication et ladite séquence.
- une étape d’obtention d’au moins un motif de communication préalablement extrait, selon un procédé d’extraction conforme à l’invention, dans un registre de réseau comportant un ensemble de connexions établies antérieurement aux connexions dudit registre de réseau courant,
- une étape de détermination d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- une étape de détermination d’au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- une étape de vérification d’une correspondance entre le motif de communication et ladite séquence.
Ainsi, le procédé de détection s’appuie sur au moins un motif obtenu grâce au procédé d’extraction selon l’invention, et permet de vérifier si ce motif correspond à des séquences déterminées au cours du procédé de détection. La correspondance ici entre motif et séquence permet donc d’affirmer que le comportement associé au motif a été observé dans le réseau.
Une telle manière de procéder reprend tout ou partie des avantages liés à la mise en œuvre du procédé d’extraction selon l’invention. Par ailleurs, la détection d’un comportement à partir d’un motif extrait est très simple et très rapide à effectuer, étant donné le format dudit motif. En effet, il suffit de vérifier l’application des règles de similarité contenues dans le motif aux séquences déterminées pendant le procédé de détection.
Dans des modes particuliers de réalisation, le registre de réseau courant est mis à jour en temps réel à chaque nouvelle connexion dans le réseau de communication, les étapes de détermination d’au moins une séquence ainsi que de vérification étant itérées à chaque mis à jour dudit registre réseau courant.
Selon un sixième aspect, l’invention concerne un programme d’ordinateur comportant des instructions pour la mise en œuvre d’un procédé de détection selon l’invention lorsque ledit programme est exécuté par un processeur.
Selon un septième aspect, l’invention concerne un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur selon l’invention pour la mise en œuvre d’un procédé de détection selon l’invention.
Selon un huitième aspect, l’invention concerne un dispositif de détection d’un comportement dans un réseau de communication, à partir d’au moins un registre de réseau courant comportant un ensemble de connexions établies dans ledit réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit dispositif de détection comportant :
- un module d’obtention, configuré pour obtenir au moins un motif de communication préalablement extrait par un dispositif d’extraction selon l’invention dans un registre de réseau comportant des communications établies antérieurement aux connexions dudit registre de réseau courant,
- un module de détermination, configuré pour déterminer au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- un module de vérification, configuré pour vérifier une correspondance entre le motif de communication et ladite séquence.
- un module d’obtention, configuré pour obtenir au moins un motif de communication préalablement extrait par un dispositif d’extraction selon l’invention dans un registre de réseau comportant des communications établies antérieurement aux connexions dudit registre de réseau courant,
- un module de détermination, configuré pour déterminer au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- un module de vérification, configuré pour vérifier une correspondance entre le motif de communication et ladite séquence.
Selon un neuvième aspect, l’invention concerne un système de détection d’un comportement dans un registre de réseau courant comportant des connexions établies dans un réseau de communication, chaque connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit système comportant un dispositif d’extraction selon l’invention ainsi qu’un dispositif de détection selon l’invention.
D’autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout caractère limitatif. Sur les figures :
La présente invention trouve sa place dans le domaine de la sécurité informatique, plus précisément dans le domaine de la prévention contre des intrusions malveillantes dans des réseaux de communication.
Lafigure 1représente schématiquement un exemple de réalisation d’un système de détection 1 d’un comportement dans un réseau de communication. Tel qu’illustré dans la figure 1, le système de détection 1 comporte un dispositif d’extraction 2 et un dispositif de détection 4 qui sont décrits en détail ci-après.
Par « réseau de communication », on fait référence ici à l’ensemble des ressources matérielles et logicielles (encore dits « équipements ») utiles à la transmission et l’échange d’informations entre différentes entités regroupées en réseau. De telles entités sont par exemple des terminaux (ordinateurs, imprimantes, téléphone, etc.), serveurs (serveur Web, serveur d’application, etc.), routeurs, pare-feux, proxys, commutateurs, cartes réseau, etc. Cet aspect n’est pas détaillé plus avant ici car bien connu de l’homme du métier.
La suite de la description vise plus spécifiquement, mais de manière nullement limitative, un réseau de type IP sur lequel des échanges entre entités sont réalisées pour un mode de transport donné, c’est-à-dire un protocole de transport. Dans le présent exemple de réalisation, le protocole de transport considéré est TCP (acronyme de l’expression anglo-saxonne « Transmission Control Protocol »).En outre, le réseau IP est ici déployé au sein d’une entité organisationnelle, comme par exemple une entreprise.
Rien n’exclut cependant de considérer d’autres types de réseau, comme par exemple Internet, un réseau local (LAN, WLAN, etc.), un réseau personnel, etc., mais également d’autres types de protocole de transport (UDP, SCTP, etc.) adaptés aux échanges sur ces réseaux. D’une manière générale, aucune limitation n’est attachée au réseau de communication et au protocole considérés, ni même à l’étendue de ce réseau.
Les informations échangées par les différentes entités du réseau le sont sous la forme de données numériques au cours de connexions établies entre lesdites entités. Sauf indication contraire, le terme « comportement » fait référence ici à une séquence de connexions entre deux entités du réseau, cette séquence étant représentative d’un comportement particulier qui peut être attendu ou bien anormal. Dans l’exemple de réalisation décrit ici, cette séquence correspond à une intrusion malveillante au sein du réseau de communication.
Chaque connexion entre deux entités du réseau est associée à un ensemble d’attributs comportant au moins une paire d’adresses, à savoir une adresse source Aset une adresse destinataire Ad, plus particulièrement ici des adresses IP respectives des entités de la connexion. On note que l’association desdites adresses source Aset destinataire Adpour une connexion forme un identifiant de ladite connexion. Par ailleurs, l’adresse source Asd’une connexion correspond typiquement à l’adresse de l’entité à partir de laquelle la connexion est établie.
Pour la suite de la description, on se place de manière non limitative dans le cas où un horodatage, en tant qu’attribut, est associé à chaque connexion en sus des adresses source Aset destinataire Ad(une connexion correspondant ainsi notamment à un log). Il faut néanmoins noter que le fait de considérer un horodatage parmi les attributs d’une connexion n’est en rien essentiel à l’invention. La manière dont l’invention s’applique lorsqu’aucun horodatage n’est considéré est explicitée ultérieurement.
D’une manière plus générale, il convient de noter qu’aucune limitation n’est attachée aux attributs associés à une connexion au sein du réseau de communication, hormis celle de comporter a minima ladite paire d’adresses (As ,Ad). Ainsi, d’autres attributs peuvent être considérés pour une connexion, comme par exemple, à titre nullement limitatif :
- un port source (de l’entité à laquelle correspond l’adresse source) et un port destinataire (de l’entité à laquelle correspond l’adresse destinataire),
- un nombre total de données, par exemple compté en octets, envoyés de la source vers le destinataire,
- un nombre total de données, par exemple compté en octets, reçus par le destinataire en provenance de la source,
- etc.
- un port source (de l’entité à laquelle correspond l’adresse source) et un port destinataire (de l’entité à laquelle correspond l’adresse destinataire),
- un nombre total de données, par exemple compté en octets, envoyés de la source vers le destinataire,
- un nombre total de données, par exemple compté en octets, reçus par le destinataire en provenance de la source,
- etc.
De manière connue en soi, les connexions au sein du réseau sont répertoriées dans au moins un registre de réseau (encore appelé « journal d’évènements ») après avoir été récoltées par des moyens dédiés associés aux ressources matérielles et logicielles partageant le réseau, et faisant par exemple partie du système de détection 1. Par exemple, un registre peut être généré localement pour des programmes d’arrière-plan (emails, bases de données, proxys, pare-feux, etc.), pour des serveurs (serveurs Web, d’application, etc.), etc. Il existe en outre des registres conçus pour centraliser les registres associés à plusieurs entités, voire toutes, du réseau.
De tels registres, locaux ou de centralisation, sont mis à jour de manière récurrente lorsque des connexions sont établies entre les entités qui les concernent. Chaque registre est en outre stocké de manière connue en soi, par exemple dans une base de données appartenant au système de détection 1 ou bien dans une base de données externe audit système de détection1. Il convient de noter que l’invention s’applique indistinctement aux registres centraux ou bien locaux.
En outre, il est fait référence par la suite à « un registre de réseau ». Une telle expression ne limite cependant pas le nombre de registres de réseau pouvant être considérés pour l’invention. L’homme du métier comprendra en effet qu’un registre de réseau peut correspondre à une agrégation de plusieurs registres de réseau.
Lorsqu’un ensemble de connexions a été répertorié dans un registre de réseau, cet ensemble est utilisé par le dispositif d’extraction 2 faisant partie du système de détection 1. Le dispositif d’extraction 2 est configuré pour effectuer des traitements visant à extraire au moins un motif de communication malveillant parmi les connexions répertoriées, en mettant en œuvre un procédé d’extraction d’un tel motif. On comprend donc que le procédé d’extraction est mis en œuvre à partir d’un registre de réseau figé. Bien entendu, un tel registre de réseau figé peut être extrait à partir d’un registre de réseau en cours d’écriture du fait d’entités actives sur le réseau.
A cet effet, le dispositif d’extraction 2 comporte par exemple un ou plusieurs processeurs et des moyens de mémorisation (disque dur magnétique, mémoire électronique, disque optique, etc.) dans lesquels sont mémorisés des données et un programme d'ordinateur, sous la forme d'un ensemble d'instructions de code de programme à exécuter pour mettre en œuvre tout ou partie des étapes du procédé d’extraction. Alternativement ou en complément, le dispositif d’extraction 2 comporte également un ou des circuits logiques programmables, de type FPGA, PLD, etc., et / ou circuits intégrés spécialisés (ASIC), et / ou un ensemble de composants électroniques discrets, etc. adaptés à mettre en œuvre tout ou partie des étapes du procédé d’extraction.
Dans le présent exemple de réalisation, le registre de réseau à partir duquel le dispositif d’extraction 2 extrait au moins un motif de communication malveillant est initialement stocké par les moyens de mémorisation dudit dispositif d’extraction 2. Alternativement, lorsque ce registre de réseau est stocké de manière externe au dispositif d’extraction, par exemple dans une base de données du réseau, le dispositif d’extraction 2 comporte un module de communication 3 configuré, de manière connue en soi, pour lui permettre d’avoir accès audit registre de réseau et ainsi exécuté le procédé d’extraction.
En d'autres termes, le dispositif d’extraction 2 comporte un ensemble de moyens configurés de façon logicielle (programme d'ordinateur spécifique) et / ou matérielle (FPGA, PLD, ASIC, etc.) pour mettre en œuvre les différentes étapes du procédé d’extraction d’au moins un motif de communication malveillant.
Lafigure 2représente schématiquement sous forme d’ordinogramme un mode de mise en œuvre du procédé d’extraction d’au moins un motif de communication malveillant selon l’invention.
Tel qu’illustré dans la figure 2, le procédé d’extraction comporte plusieurs étapes. Dans son principe général, le procédé d’extraction consiste tout d’abord à déterminer, à partir d’un registre de réseau, l’ensemble des connexions associées à au moins une paire d’adresses. Les séquences de connexions réalisables dans cet ensemble sont à leur tour déterminées pour ensuite être comparées entre elles, afin d’évaluer leur similarité. Lorsqu’au moins deux séquences sont jugées similaires, il est alors possible d’en extraire un motif de communication malveillant.
A cet effet, le procédé d’extraction comporte dans un premier temps uneétape E10de détermination d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions.
Dans un exemple de mise en œuvre, et dans la mesure où l’ensemble d’attributs comporte ici un horodatage, le registre de paire associé à une paire d’adresses (As, Ad) est déterminé de sorte que ses connexions sont classées par ordre chronologique. Rien n’exclut cependant de considérer que les connexions du registre de paire ne sont pas classées par ordre chronologique, et ce quand bien même elles seraient horodatées.
Les connexions associées à une paire sont extraites du registre réseau, et le cas échéant classées par ordre chronologique, de manière connue en soi, par exemple au moyen d’algorithmes de tri portant sur les attributs considérés (adresses, horodatage). Cet aspect de l’invention n’est par conséquent pas détaillé plus avant ici.
Dans un mode particulier de mise en œuvre, une seule paire d’adresses associée à au moins deux connexions est considérée. Il en résulte qu’un seul registre de paire est déterminé au cours de cette étape. Cette manière de procéder est avantageusement adaptée à l’extraction d’un motif correspondant à une intrusion malveillante de type DoS (acronyme de l’expression anglo-saxonne « Denial of Service attack »). En effet, dans ce type d’intrusions malveillantes, une même paire d’adresses est ciblée afin de réaliser en très peu de temps, par exemple de l’ordre de la seconde, un très grand nombre de connexions, par exemple environ une dizaine, cela afin de saturer, et donc rendre inutilisable, des services associés au réseau. La paire d’adresses considérée dans ce mode particulier correspond par exemple à des adresses d’entités du réseau dont il est connu qu’elles sont plus vulnérables ou bien plus souvent ciblées lors d’attaques DoS, ou bien encore dont on sait qu’elles ont été la cible d’une attaque antérieure DoS.
L’invention n’est cependant pas limitée à l’analyse d’intrusions malveillantes de type DoS. Elle peut en effet s’appliquer également à des intrusions malveillantes de type DDoS (acronyme de l’expression anglo-saxonne « Distributed Denial of Service attack »), qu’une ou plusieurs paires d’adresses soient considérées. On note que lorsque plusieurs paires d’adresses sont considérées, plusieurs registres de paire sont déterminés au cours de l’étape E10.
Selon encore d’autres alternatives, une ou plusieurs paires d’adresses sont considérées pour rechercher des intrusions malveillantes autres que DoS ou DDoS, comme par exemple une intrusion plus étalée dans le temps, par exemple de l’ordre de plusieurs minutes (propagation d’un virus à travers des ports destinataires selon un ou plusieurs protocoles présentant des vulnérabilités, téléchargement de code malveillant par une ou plusieurs entités infectées générant ainsi un volume de communication identifiable dans les connexions, etc.). En effet, il est plus aisé de constituer des séquences de connexions étalées dans le temps, comme cela est détaillé ci-après, à partir de plusieurs registres de paire.
D’une manière générale, quel que soit le type d’intrusion recherchée, le choix consistant à considérer une seule ou une pluralité de paires d’adresses ne constitue qu’une variante d’implémentation de l’invention.
Comme mentionné ci-avant, la paire d’adresses associée à un registre de paire est associée à au moins deux connexions. Dans un exemple plus particulier de mise en œuvre, ladite paire d’adresses est associée à au moins trois connexions. Cela permet de chercher à identifier des intrusions de complexité plus grande que dans le cas où le registre de paire comporte uniquement deux connexions. Ainsi, le risque d’extraire des motifs correspondant à de fausses intrusions malveillantes (faux positif) est réduit.
Pour la suite de la description, et à titre nullement limitatif, on considère désormais que n registres de paire H1, H2,…, Hnsont déterminés au cours de l‘étape E10, où n est un entier supérieur où égal à 2. Autrement dit, plusieurs paires d’adresse sont désormais considérées. Chaque registre de paire Hiest associé à une paire d’adresses source Asiet destinataire Adi. La manière dont l’invention s’applique au cas où un seul registre de paire est considéré apparaitra clairement à l’homme du métier, et ne sera que succinctement commentée ultérieurement.
Le procédé d’extraction comporte ensuite uneétape E20de détermination de séquences de connexions contenues dans des registres de paire Hirespectifs, le nombre de connexions d’une séquence étant supérieur ou égal à 2.
Le fait de déterminer des séquences de connexions au sein des registres de paire permet de rechercher des comportements susceptibles d’être suivis sur le réseau par les entités associées aux paires d’adresses. Ces comportements peuvent ensuite être analysés pour déterminer s’il s’agit d’intrusions malveillantes.
Il faut noter que par « séquence », il est fait référence ici une suite de connexions au sein d’un registre de paire, sans que soit nécessairement attaché à cette suite une notion d’ordre chronologique. En outre, la taille d’une séquence correspond au nombre de connexions formant cette séquence.
Dans un mode particulier de mise en œuvre, lorsque les registres de paire H1, H2,…, Hnsont déterminés de sorte que leurs connexions respectives sont classées par ordre chronologique, lesdites séquences sont déterminées, pour chaque registre Hiet pour tout k compris entre 2 et le cardinal dudit registre Hi, au moyen d’une fenêtre glissante de taille k. Le fait d’utiliser une fenêtre glissante de taille k permet d’obtenir facilement des séquences de taille k d’un registre de paire.
Par exemple, à titre purement illustratif, considérons un registre de paire Hicomportant six connexions C1, C2, C3, C4, C5, et C6avec Ciantérieure à Cjpour i<j. Dès lors, les séquences de taille 3 obtenues par un fenêtrage de taille 3 appliqué à Hicorrespondent à {C1, C2, C3}, {C2, C3, C4}, {C3, C4, C5} et {C4, C5, C6}. Ce processus est répété pour les autres tailles de séquences qu’il est possible de considérer dans ledit registre de paire Hi, à savoir : 2, 4, 5 et 6.
On note que dans cet exemple de mise en œuvre, toutes les séquences de taille 3 et ordonnées chronologiquement sont déterminées. Rien n’exclut cependant, lorsqu’une fenêtre glissante est utilisée, de déterminer seulement un sous-ensemble parmi toutes les séquences ordonnées chronologiquement. Ainsi, selon un autre exemple, les séquences sont déterminées au moyen d’une fenêtre glissante, de sorte que seules les séquences ne comportant pas de connexions communes sont retenues. De cette manière, le nombre potentiel de comportements susceptibles d’être suivis sur le réseau par les entités associées aux paires d’adresses est réduit, allégeant ainsi la charge de calcul.
A titre illustratif, en reprenant les données introduites dans l’exemple précédent, et en conservant une fenêtre glissante de taille 3, les séquences obtenues correspondent alors à {C1, C2, C3} et {C4, C5, C6}, qui n’ont pas donc pas de connexions communes.
Dans un autre mode particulier de mise en œuvre, pour chaque registre de paire Hi et pour tout k compris entre 2 et le cardinal dudit registre Hi, toutes les séquences de taille k de ce registre Hisont déterminées. Le fait de déterminer toutes les séquences de taille k dans les registres H1, H2,…, Hnpermet d’envisager tous les comportements susceptibles d’être suivis sur le réseau par les entités associées aux paires d’adresses.
Dans ce mode de mise en œuvre, il n’est pas tenu compte de l’ordre chronologique des connexions dans les registres de paires. Par contre, il est tenu compte de l’ordre des connexions au sein des séquences afin de les différencier entre elles. Autrement dit, le nombre de séquences de taille k déterminées pour un registre de paire Hicorrespond au nombre d’arrangements (au sens de l’analyse combinatoire mathématique) de taille k contenus dans ledit registre de paire Hi. La manière dont sont déterminés ces arrangements est connue de l’homme du métier qui saura choisir un algorithme combinatoire à cet effet.
Par exemple, à titre purement illustratif, considérons un registre de paire Hicomportant trois connexions C1, C2, C3. Dès lors, toutes les séquences de taille 3 correspondent à {C1, C2, C3}, {C1, C3, C2}, {C2, C3, C1}, {C2, C1, C3}, {C3, C2, C1} et {C3, C1, C2}.
Bien que les exemples de mise en œuvre précédemment décrits illustrent des cas où plusieurs séquences sont déterminées au sein d’un registre Hipour une taille k donnée, il faut noter que la détermination des séquences au cours de l’étape E20 n’impose pas d’obtenir pour chaque registre de paire Hiune pluralité de séquences. Ainsi, il est possible de déterminer des séquences de sorte qu’un ou plusieurs registres de paire n’en contiennent respectivement qu’une, voire aucune.
D’une manière générale, aucune limitation n’est attachée à la manière dont sont déterminées les séquences parmi les registres de paire H1, H2,…, Hn, dès lors qu’au moins deux séquences sont obtenues à l’issue de l’étape E20
Préférentiellement, afin de limiter les redondances de connexions dans les séquences, le nombre de connexions d’une séquence est compris entre 2 et le cardinal du registre de paire Hiconsidéré.
Rien n’exclut non plus de considérer un nombre de connexions supérieur ou égal à 3. Là encore, le fait de considérer des séquences comportant au moins trois connexions permet de chercher à identifier des comportements, et donc des intrusions, de complexité plus grande que dans le cas où une séquence comporte uniquement deux connexions. Au final, le risque d’extraire des motifs correspondant à de fausses intrusions malveillantes est réduit. Une telle mise en œuvre est bien entendu compatible avec le fait de considérer également des paires d’adresses respectivement associées à au moins trois connexions, de sorte à réduire encore plus le risque d’extraire des motifs correspondant à de fausses intrusions malveillantes.
Après que des séquences aient été déterminées au cours de l’étape E20, le procédé comporte uneétape E30de comparaison des séquences entre elles par paires de séquences. L’objectif de cette étape de comparaison E30 est d’évaluer la similarité entre paires de séquences autorisées à être comparées.
Une telle comparaison est mise en œuvre conformément à au moins une règle d’autorisation de comparaison. Par « règle d’autorisation de comparaison », on fait référence ici à une règle selon laquelle deux séquences sont autorisées ou non à être comparées entre elles.
Par exemple, une règle de comparaison consiste à comparer des séquences n’ayant pas de connexions en commun. Le fait de considérer une telle règle résulte d’un compromis entre une étape de comparaison qui soit la plus exhaustive possible et une charge de calcul qui reste contenue. On comprend en effet qu’une telle règle évite d’effectuer des comparaisons potentiellement redondantes, et donc d’augmenter inutilement la charge de calcul.
Selon un autre exemple, une règle d’autorisation de comparaison consiste à comparer des séquences de même taille. Là encore, la considération d’une telle règle résulte d’un compromis entre une étape de comparaison qui soit la plus exhaustive possible et une charge de calcul qui reste contenue.
Il est à noter qu’une règle d’autorisation de comparaison peut consister au moins en une comparaison de séquences de tailles respectives distinctes. Par exemple, considérons à titre illustratif deux séquences S1et S2de tailles respectives k1et k2distinctes, k2étant supérieure à k1, et appartenant respectivement à deux registres de paire H1et H2distincts. La comparaison de S1et S2s’effectue alors par exemple en comparant toutes les sous-séquences de taille k1issues de S2avec la séquence S1.
Les exemples de règles d’autorisation de comparaison donnés ci-dessus ne s’excluent pas les uns des autres, et peuvent être combinés ensemble, de sorte que plusieurs règles d’autorisation de comparaison peuvent être considérées simultanément. D’une manière générale, le choix d’une ou plusieurs règles d’autorisation de comparaison ne constitue qu’une variante d’implémentation de l’invention.
La comparaison des séquences entre elles par paires est également mise en œuvre conformément à au moins un ensemble d’au moins une règle de similarité, dit « ensemble réglementaire », et noté Ω.
Par « règle de similarité », on fait référence ici à une règle traduisant un comportement particulier lié à une séquence de connexions, et permettant également de quantifier un degré de similarité entre deux séquences qui sont comparées entre elles. A cet effet, une règle de similarité est évaluée en fonction d’au moins un attribut, et permet notamment d’estimer si deux séquences sont similaires au regard de ladite règle. Il en résulte, pour une paire de séquences données autorisées à être comparées et pour une règle de similarité donnée, l’obtention d’une valeur locale de similarité.
Par exemple, considérons un ensemble réglementaire Ω comprenant une règle notée R1visant à évaluer si les intervalles de temps entre connexions d’une séquence sont tous égaux à une quantité prédéfinie, par exemple 1 seconde. Par conséquent, une telle règle de similarité R1porte sur l’attribut correspondant à l’horodatage. Considérons également deux séquences de connexions S1et S2, de même taille, autorisées à être comparées. Une valeur locale de similarité est alors attribuée à l’évaluation de la règle R1sur ces séquences, notée R1(S1,S2). Par exemple, lorsque les séquences S1et S2présentent effectivement des intervalles de temps identiques entre leurs connexions respectives, la valeur locale de similarité R1(S1,S2) est égale à 1, sinon à 0.
Toujours selon cet exemple, considérons désormais deux séquences de connexions S3et S4de tailles respectives k3et k4distinctes, avec k3inférieure à k4. Dans ce cas, la comparaison de S3et S4s’effectue par exemple en comparant toutes les sous-séquences de taille k3issues de S4avec la séquence S3. Alors, dès que la comparaison entre S4et une de ces sous-séquences satisfait la règle de similarité R1, la valeur locale de similarité R1(S3,S4) est égale à 1. Si par contre aucune des paires formées d’une telle sous-séquence et de la séquence S3ne satisfait la règle R1, alors la valeur locale de similarité R1(S3,S4) est égale à 0.
Il importe de noter qu’une règle de similarité s’applique aussi bien à une séquence de connexions qu’à deux séquences de connexions, par exemple selon l’équation Ri(S1,S2) = Ri(S1) x Ri(S2), où Ri(S1) (respectivement Ri(S2)) peut prendre une valeur égale à 0 ou 1. A titre d’illustration, en reprenant les exemples précédents, et si on considère que les connexions de la première séquence S1sont effectivement toutes espacées d’une durée égale à 1 seconde, on obtient que R1(S1) est bien vérifiée, et prend par exemple une valeur égale 1.
D’une manière générale, aucune limitation n’est attachée aux attributs pouvant être considérés dans l’évaluation d’une règle de similarité, dès lors que ces attributs sont associés aux connexions des séquences à comparer. Ainsi, selon d’autres exemples de mise en œuvre, une règle de similarité permet d’évaluer si deux séquences autorisées à être comparées ont :
- le même nombre de ports source uniques, et / ou
- le même nombre de ports destinataire uniques, et / ou
- le même ordre de ports source, et / ou
- le même ordre de portes destinataire, et / ou
- la même correspondance entre les ports source et destinataire, et / ou
- la même quantité d’octets envoyée par les ports source correspondants, et /ou
- la même quantité d’octets reçue par les ports destinataire correspondants, et / ou
- les mêmes relations d’adjacence entre les ports source, et / ou
- la même direction de communication,
- etc.
On comprend bien sûr que les règles considérées sont choisies en fonction du type de comportement qu’on souhaite identifier et extraire sous forme de motif. Dans la présente mise en œuvre, les comportements à identifier sont de type malveillant, si bien que les règles considérées sont choisies à cet effet. L’homme du métier sait définir et choisir de telles règles en fonction du comportement à identifier dans le registre de réseau.
- le même nombre de ports source uniques, et / ou
- le même nombre de ports destinataire uniques, et / ou
- le même ordre de ports source, et / ou
- le même ordre de portes destinataire, et / ou
- la même correspondance entre les ports source et destinataire, et / ou
- la même quantité d’octets envoyée par les ports source correspondants, et /ou
- la même quantité d’octets reçue par les ports destinataire correspondants, et / ou
- les mêmes relations d’adjacence entre les ports source, et / ou
- la même direction de communication,
- etc.
On comprend bien sûr que les règles considérées sont choisies en fonction du type de comportement qu’on souhaite identifier et extraire sous forme de motif. Dans la présente mise en œuvre, les comportements à identifier sont de type malveillant, si bien que les règles considérées sont choisies à cet effet. L’homme du métier sait définir et choisir de telles règles en fonction du comportement à identifier dans le registre de réseau.
Dans un mode particulier de mise en œuvre, au moins une règle de similarité Rid’un ensemble règlementaire Ω est évaluée également en fonction d’un paramètre de tolérance ε(Ri) prédéfini associé audit au moins un attribut de ladite règle de similarité. La prise en compte d’un tel paramètre de tolérance ε(Ri) est particulièrement avantageuse car elle permet de relâcher la contrainte imposée par la règle Ri. Dit autrement, le paramètre de tolérance ε(Ri) permet d’interpréter la règle Ride manière plus large afin d’accroitre la probabilité que deux séquences soient similaires pour cette règle. Ainsi, le paramètre de tolérance ε(Ri) fait varier la métrique associée à l’attribut (ou aux attributs) associé à la règle Ri.
Par exemple, considérons une règle R1portant sur l’attribut correspondant à l’horodatage et visant à évaluer si deux séquences de connexions S1et S2, de même taille, ont des intervalles de temps entre connexions tous égaux à 3 minutes. Considérant également pour cette règle R1, un paramètre de tolérance ε(R1) égal à 1. Dès lors, l’intervalle entre connexions pour cette règle R1n’est plus égal uniquement à 3 minutes, mais désormais compris dans l’intervalle
[3-ε(R1), 3+ε(R1)], soit [2, 4]. On comprend alors que la probabilité d’évaluer les séquences S1et S2comme similaire a augmenté.
[3-ε(R1), 3+ε(R1)], soit [2, 4]. On comprend alors que la probabilité d’évaluer les séquences S1et S2comme similaire a augmenté.
On note que rien n’exclut de considérer une pluralité d’ensembles réglementaires Ω1, Ω2,…, pour réaliser la comparaison des séquences entre elles par paires. Dans ce cas, la similarité d’une paire de séquences S1et S2est évaluée une pluralité de fois, à savoir autant de fois qu’il y a d’ensembles réglementaires. Il en résulte une pluralité de valeurs locales de similarité, non seulement parce que plusieurs ensembles réglementaires sont considérés, mais aussi également parce que plusieurs règles de similarité peuvent être considérées au sein de chaque ensemble réglementaire. En outre, rien n’exclut que ces ensembles partagent des règles communes. Rien n’exclut non plus que tout ou partie des règles de similarité associées à un ou plusieurs ensembles réglementaires soient évaluées en fonction de paramètres de tolérance respectifs.
Le fait de considérer une pluralité d’ensembles réglementaires permet d’évaluer la similarité des séquences selon plusieurs aspects, ce qui fournit une aide à la discrimination de fausses intrusions malveillantes.
Par exemple, on peut considérer dans un ensemble réglementaire Ω1une ou plusieurs règles portant sur les attributs « port source » et « port destinataire », ainsi que dans un autre ensemble réglementaire Ω2une ou plusieurs règles portant sur les attributs « quantité d’octets envoyés » et « quantité d’octets
reçus ». Ainsi, la similarité entre deux séquences S1et S2est évaluée de deux manières différentes.
reçus ». Ainsi, la similarité entre deux séquences S1et S2est évaluée de deux manières différentes.
Au final, l’étape de comparaison E30 permet d’obtenir, pour chaque paire de séquences autorisées à être comparées, une mesure de similarité, notée D_Ω, associée à chaque ensemble réglementaire Ω. Une telle mesure de similarité correspond à un agrégat des valeurs locales de similarité obtenues lors de comparaisons des séquences entre elles au moyen de règles comprises dans chaque ensemble réglementaire. Autrement dit, une mesure de similarité D_Ω correspond à une évaluation globale de la similarité entre deux séquences pour un ensemble réglementaire Ω donné. On comprend donc que si plusieurs ensembles réglementaires sont considérés, plusieurs mesures de similarité sont obtenues pour chaque paire de séquences autorisées à être comparées.
Par ailleurs, chaque ensemble réglementaire Ω est également associé à un critère de similarité prédéfini, de sorte que si une mesure de similarité D_Ω associée audit ensemble réglementaire Ω satisfait ledit critère de similarité, les séquences ayant fait l’objet de ladite mesure de similarité D_Ω sont considérées similaires. Le fait d’obtenir au moins une paire de séquences similaires traduit l’existence d’un comportement particulier au sein du réseau de communication. Par conséquent, plus il y a de séquences évaluées comme similaires pour un ensemble réglementaire, plus le comportement associé est pertinent pour être analysé en détail, afin notamment de déterminer s’il s’agit d’une intrusion malveillante.
Par exemple, un tel critère de similarité correspondant à une comparaison d’une mesure de similarité avec une valeur seuil V_Ω, afin de qualifier le degré de similarité entre deux séquences (similaires ou bien non similaires). Cette comparaison consiste à vérifier si une mesure de similarité est supérieure ou égale, en valeur absolue, à la valeur absolue de ladite valeur seuil V_Ω, de sorte que plus une valeur seuil V_Ω est élevée, en valeur absolue, plus il est difficile de satisfaire le critère de similarité
Le fait de considérer des valeurs absolues pour une mesure de similarité ainsi que pour la valeur seuil V_Ω dépend bien sûr du signe des valeurs de similarité locales obtenues par évaluation des règles de similarité, ainsi que de la manière dont est évaluée une mesure de similarité.
Par exemple, la mesure de similarité D_Ω (S1,S2) associée à un ensemble réglementaire Ω, ainsi qu’à deux séquences S1et S2, est calculée égale à la somme des valeurs locales de similarité obtenues lors de comparaisons des séquences S1et S2 entre elles au moyen des règles comprises dans ledit ensemble Ω. Plus particulièrement, si l’ensemble Ω comprend par exemple N règles R1, R2,…, RN, alors on obtient:
En outre, dans cet exemple, le critère de similarité correspond ici à une comparaison à une valeur seuil V_Ω égale à 1+E(N/2), où E(N/2) désigne la partie entière de N/2.
En outre, dans cet exemple, le critère de similarité correspond ici à une comparaison à une valeur seuil V_Ω égale à 1+E(N/2), où E(N/2) désigne la partie entière de N/2.
Pour illustrer cet exemple de mise en œuvre, considérons à nouveau un ensemble réglementaire Ω comprenant une règle notée R1visant à évaluer si deux séquences de connexions S1et S2, de même taille, ont les mêmes intervalles de temps entre les connexions. Considérons en outre que cet ensemble réglementaire Ω comprend deux autres règles R2et R3visant à évaluer respectivement :
- si la même quantité d’octets est envoyée par les ports source respectifs des séquences S1et S2(règle R2),
- si la même quantité d’octets est reçue par les ports destinataire respectifs des séquences S1et S2(règle R3).
Enfin, supposons que les règles R1et R3sont satisfaites, mais que la règle R2n’est quant à elle pas satisfaite. Par conséquent, on a R1(S1,S2) = R3(S1,S2) = 1 ainsi que R2(S1,S2) = 0. La mesure de similarité D_Ω (S1,S2) associée aux séquences S1et S2, pour ledit ensemble réglementaire Ω, est alors égale à 2. De plus, la valeur seuil V_Ω considérée pour le critère de similarité est égale ici à la partie entière de 1+E(3/2), soit 2.Il en résulte que les séquences S1et S2sont similaires au regard de l’ensemble réglementaire Ω.
- si la même quantité d’octets est envoyée par les ports source respectifs des séquences S1et S2(règle R2),
- si la même quantité d’octets est reçue par les ports destinataire respectifs des séquences S1et S2(règle R3).
Enfin, supposons que les règles R1et R3sont satisfaites, mais que la règle R2n’est quant à elle pas satisfaite. Par conséquent, on a R1(S1,S2) = R3(S1,S2) = 1 ainsi que R2(S1,S2) = 0. La mesure de similarité D_Ω (S1,S2) associée aux séquences S1et S2, pour ledit ensemble réglementaire Ω, est alors égale à 2. De plus, la valeur seuil V_Ω considérée pour le critère de similarité est égale ici à la partie entière de 1+E(3/2), soit 2.Il en résulte que les séquences S1et S2sont similaires au regard de l’ensemble réglementaire Ω.
Le choix selon lequel une mesure de similarité est calculée égale à la somme des valeurs locales de similarité associées à un ensemble réglementaire ne constitue qu’une variante d’implémentation de l’invention. D’autres calculs de la mesure de similarité sont par conséquent envisageables, comme par exemple une somme pondérée des valeurs locales de similarité (selon qu’on souhaite attacher plus ou moins d’importance à une règle de similarité par rapport à une autre). Par ailleurs, aucune limitation n’est attachée au choix de la valeur seuil pour un ensemble réglementaire. Plus largement, rien n’exclut de considérer un critère de similarité autre qu’une comparaison avec une valeur seuil, comme par exemple une vérification de l’appartenance d’une mesure de similarité à un intervalle de valeurs.
Outre les aspects liés aux règles d‘autorisation de comparaison, aux règles de similarité et à l’obtention de mesures de similarités, les comparaisons des séquences entre elles par paires peuvent également tenir compte de considérations liées à l’ordre dans lequel ces comparaisons sont exécutées.
Ainsi, dans un mode particulier de mise en œuvre, l’étape de comparaison comporte, pour une taille donnée k de séquence :
- un regroupement des séquences de taille k dans un ensemble, dit « ensemble de niveau k », et noté Ek. Ainsi, cet ensemble Ekcomprend toutes les séquences de taille k qui ont été déterminées au cours de l’étape E20. On comprend donc que ce regroupement s’effectue indistinctement de l’appartenance des séquences aux registres de paire Hi. Autrement dit, rien n’exclut d’avoir dans l’ensemble Ekdes séquences respectivement associées à des registres de paire distincts, dès lors qu’elles sont de taille k ;
- une comparaison des séquences de l’ensemble Ekconformément à ladite au moins une règle d’autorisation de comparaison et à audit au moins un ensemble règlementaire. Les comparaisons des séquences entre elles s’effectuent selon les caractéristiques décrites ci-avant, de sorte qu’on obtient, pour chaque ensemble réglementaire Ω et pour chaque paire de séquences autorisées à être comparées, une mesure de similarité D_Ω.
De plus, le regroupement et la comparaison de niveau k sont réalisés de manières itératives suivant les tailles k décroissantes. Par conséquent, les itérations débutent pour une taille k correspondant à la plus grande taille de séquence identifiée parmi toutes les séquences obtenues lors de l’étape E20. On note que cette « plus grande taille k » correspond également au cardinal le plus grand parmi les cardinaux respectifs des registres Hi.
- un regroupement des séquences de taille k dans un ensemble, dit « ensemble de niveau k », et noté Ek. Ainsi, cet ensemble Ekcomprend toutes les séquences de taille k qui ont été déterminées au cours de l’étape E20. On comprend donc que ce regroupement s’effectue indistinctement de l’appartenance des séquences aux registres de paire Hi. Autrement dit, rien n’exclut d’avoir dans l’ensemble Ekdes séquences respectivement associées à des registres de paire distincts, dès lors qu’elles sont de taille k ;
- une comparaison des séquences de l’ensemble Ekconformément à ladite au moins une règle d’autorisation de comparaison et à audit au moins un ensemble règlementaire. Les comparaisons des séquences entre elles s’effectuent selon les caractéristiques décrites ci-avant, de sorte qu’on obtient, pour chaque ensemble réglementaire Ω et pour chaque paire de séquences autorisées à être comparées, une mesure de similarité D_Ω.
De plus, le regroupement et la comparaison de niveau k sont réalisés de manières itératives suivant les tailles k décroissantes. Par conséquent, les itérations débutent pour une taille k correspondant à la plus grande taille de séquence identifiée parmi toutes les séquences obtenues lors de l’étape E20. On note que cette « plus grande taille k » correspond également au cardinal le plus grand parmi les cardinaux respectifs des registres Hi.
Ainsi, dans ce mode de mise en œuvre, les séquences sont comparées au sein de chaque ensemble Ek. Autrement dit, seules des séquences de taille identique sont comparées entre elles. Ce qui signifie que ladite au moins une règle d’autorisation de comparaison correspond au moins à une règle selon laquelle seules des séquences de taille identique sont autorisées à être comparées.
Dans un exemple plus particulier de mise en œuvre, au cours d’une itération, la comparaison de niveau k est suivie d’une suppression, parmi toutes les séquences de taille inférieure à k, des séquences comportant des connexions en commun avec les séquences de l’ensemble de niveau k. On note que pour examiner toutes les séquences de taille inférieure à k, il suffit de regarder les séquences qui n’ont pas encore été regroupées dans un ensemble de niveau. Une telle mise en œuvre évite d’effectuer des comparaisons potentiellement redondantes, et donc d’augmenter inutilement la charge de calcul. On comprend également qu’une telle mise en œuvre est optionnelle, et ce d’autant plus si une règle d’autorisation de comparaison consistant à comparer des séquences n’ayant pas de connexions en commun est implémentée. Enfin, le fait d’itérer suivant les tailles k décroissantes permet ici de privilégier une extraction de motifs malveillants parmi des séquences longues, autrement dit de favoriser la découverte d’intrusions malveillantes complexes.
Dans un autre exemple de mise en œuvre, au cours d’une itération, la comparaison de niveau k est suivie d’une suppression, parmi toutes les séquences de taille k, des séquences dont une mesure de similarité associée ne satisfait pas le critère de similarité et comportant des connexions en commun avec les séquences de taille k qui satisfont ledit critère de similarité. En procédant ainsi, on effectue un tri à chaque niveau k afin d’écarter les séquences qui sont potentiellement moins pertinentes pour l’extraction de motif, du fait qu’elles ne satisfont pas le critère de similarité, et qui sont en outre susceptibles de créer des redondances dans les motifs extraits.
Rien n’exclut de combiner ce dernier exemple de mise en œuvre dans lequel sont supprimées des séquences pour lesquelles le critère de similarité n’est pas satisfait et qui comportent des connexions en commun avec les séquences qui satisfont quant à elles ce critère, avec l’exemple de mise en œuvre dans lequel sont supprimées des séquences comportant des connexions communes aux niveaux inférieurs.
D’une manière générale, le choix visant à regrouper les séquences dans les ensembles Ekpour ensuite les comparer entre elles ne constitue qu’une variante d’implémentation de l’invention. D’autres variantes peuvent être envisagées, comme par exemple une variante dans laquelle les séquences sont regroupées au sein des ensembles Ekde manière itérative, et une fois que tous les regroupements ont été effectués, comparer les séquences entre elles au sein de chaque ensemble Ek.
La détermination de la satisfaction du critère de similarité par une mesure de similarité au cours d’une étape E40 est bien sûr effectuée après que cette mesure de similarité ait été déterminée, comme illustré par la figure 2. Lorsque plusieurs mesures de similarité sont déterminées au cours de l’étape E30, la détermination de la satisfaction du critère de similarité est effectuée par exemple après chaque détermination d’une mesure de similarité, ou bien encore après que toutes les mesures de similarité aient été déterminées.
Aussi, lorsqu’au moins une mesure de similarité satisfait le critère de similarité prédéfini, le procédé comporte uneétape E50d’extraction, pour l’ensemble réglementaire Ω considéré (à savoir l’ensemble réglementaire Ω associé audit critère de similarité), d’au moins un motif comportant ledit ensemble réglementaire Ω.
Par «un motif comportant ledit ensemble réglementaire Ω », on fait référence ici à un motif correspondant à un fichier informatique qui liste, notamment, les règles Ri contenus dans l’ensemble réglementaire Ω.
L’étape E50 d’extraction s’effectue donc en créant ledit fichier auquel correspond le motif. De cette manière, on obtient un fichier très simple à manipuler qui décrit très précisément un comportement malveillant, jusqu’alors inconnu et qui a été découvert au cours des étapes du procédé d’extraction. Cette description très précise correspond à la liste des règles. Bien entendu, si le critère de similarité n’est pas satisfait, aucun motif n’est extrait.
Dans un mode particulier de mise en œuvre, un motif extrait comporte également une valeur correspondant une taille de séquence parmi les séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité. Ainsi, le motif extrait comporte un champ supplémentaire se rapportant à ladite taille. De telles dispositions permettent d’obtenir un motif ciblant très précisément un comportement particulier caractérisé non seulement par les règles de similarité mais aussi par la taille d’une séquence de connexions pouvant être représentative dudit comportement.
Par exemple, ladite taille correspond à la taille maximale des séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité. De cette manière, la découverte d’intrusions malveillantes complexes (dit encore autrement de comportements complexes dans le réseau) est favorisée.
Rien n’exclut cependant de considérer une taille qui soit inférieure à ladite taille maximale. D’ailleurs, il est possible d’envisager, au cours de l’étape E50, d’extraire une pluralité de motifs comportant chacun les règles de similarité de l’ensemble réglementaire Ω considéré, et présentant des tailles respectives distinctes inférieures ou égales à ladite taille maximale. De cette manière, on ne restreint pas à la recherche des comportements les plus complexes, et on diminue ainsi le risque de ne pas identifier un comportement malveillant.
A titre d’exemple nullement limitatif, et afin d’illustrer de manière détaillée la forme pouvant être prise par un motif, considérons une première séquence S1formée de trois connexions C1, C2et C3qui sont :
C1= 09:31::08, 10.101.60.170, 5.34.248.148, 44331, 53, 106, 0
C2= 09:31::55, 10.101.60.170, 5.34.248.148, 44331, 53, 106, 74
C3= 09:34::25, 10.101.60.170, 5.34.248.148, 44331, 53, 180, 60
Chacune de ces connexions est associée à 7 attributs séparés par des virgules, et qui correspondent respectivement, lorsqu’on les lit de gauche à droite, à : un horodatage (en heures:minutes::secondes), une adresse source As, une adresse destinataire Ad, un port source, un port destinataire, une quantité d’octets envoyés par le port source, une quantité d’octets reçus par le port destinataire.
Considérons également, suivant un modèle de connexion identique, une deuxième séquence S2formée également de trois connexions C’1, C’2et C’3qui sont :
C’1= 15:22::58, 10.101.60.168, 5.34.248.148, 53886, 53, 106, 0
C’2= 15:23::47, 10.101.60. 168, 5.34.248.148, 53886, 53, 106, 74
C’3= 15:26::16, 10.101.60. 168, 5.34.248.148, 53886, 53, 180, 60
On comprend donc que les deux séquences S1et S2sont respectivement associées à deux registres de paire H1et H2. Ces deux registres de paire sont distincts étant donné que les connexions de S1diffèrent de celles de S2au niveau des adresses source (donc in fine au niveau de la paire adresse source/adresse destinataire).
On considère également :
- une unique règle d’autorisation de comparaison qui consiste à comparer des séquences de même taille. Par conséquent, S1et S2peuvent bien être comparées ;
- un seul ensemble réglementaire Ω comprenant 5 règles de similarité R1, R2, R3, R4et R5 ;
- une mesure de similarité égale à la somme des valeur locales de similarité ;
- une valeur seuil V_Ω égale à 3 ;
- un motif comportant, en sus des règles de similarité, une valeur correspondant à la taille maximale des séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité Pour cet exemple, on considère que cette taille maximale est égale à 3.
Les règles de similarité portent respectivement sur :
- R1: un unique port source pour chaque connexion, avec un paramètre de tolérance ε(R1) égal à 1 ;
- R2: une suite {53, 53, 53} chronologique de ports destinataire, avec un paramètre de tolérance ε(R2) égal à 0 ;
- R3: des intervalles entre connexions de 1min ou de 3 min, avec un paramètre de tolérance ε(R3) égal à 1 ;
- R4: une suite {106, 106, 180} chronologique de quantités d’octets envoyés, avec un paramètre de tolérance ε(R4) égal à 10 (dans ce cas le paramètre de tolérance peut s’appliquer à chaque élément de la suite {106, 106, 180} ) ;
- R5: une suite {0, 74, 60} chronologique de quantités d’octets reçus, avec un paramètre de tolérance ε(R5) égal à 10.
On obtient alors R1(S1,S2) = R2(S1,S2) = R3(S1,S2) = R4(S1,S2) = R5(S1,S2) = 1. Ainsi, D_Ω(S1,S2) = 5 et donc S1et S2sont similaires pour l’ensemble réglementaire Ω. Le motif M_Ω de communication extrait associé à Ω s’écrit :
M_Ω = {3, R1, R2, R3, R4, R5}. Sur la base de ce motif, jusqu’alors inconnu, il est désormais possible d’identifier un comportement associé dans le réseau de communication.
C1= 09:31::08, 10.101.60.170, 5.34.248.148, 44331, 53, 106, 0
C2= 09:31::55, 10.101.60.170, 5.34.248.148, 44331, 53, 106, 74
C3= 09:34::25, 10.101.60.170, 5.34.248.148, 44331, 53, 180, 60
Chacune de ces connexions est associée à 7 attributs séparés par des virgules, et qui correspondent respectivement, lorsqu’on les lit de gauche à droite, à : un horodatage (en heures:minutes::secondes), une adresse source As, une adresse destinataire Ad, un port source, un port destinataire, une quantité d’octets envoyés par le port source, une quantité d’octets reçus par le port destinataire.
Considérons également, suivant un modèle de connexion identique, une deuxième séquence S2formée également de trois connexions C’1, C’2et C’3qui sont :
C’1= 15:22::58, 10.101.60.168, 5.34.248.148, 53886, 53, 106, 0
C’2= 15:23::47, 10.101.60. 168, 5.34.248.148, 53886, 53, 106, 74
C’3= 15:26::16, 10.101.60. 168, 5.34.248.148, 53886, 53, 180, 60
On comprend donc que les deux séquences S1et S2sont respectivement associées à deux registres de paire H1et H2. Ces deux registres de paire sont distincts étant donné que les connexions de S1diffèrent de celles de S2au niveau des adresses source (donc in fine au niveau de la paire adresse source/adresse destinataire).
On considère également :
- une unique règle d’autorisation de comparaison qui consiste à comparer des séquences de même taille. Par conséquent, S1et S2peuvent bien être comparées ;
- un seul ensemble réglementaire Ω comprenant 5 règles de similarité R1, R2, R3, R4et R5 ;
- une mesure de similarité égale à la somme des valeur locales de similarité ;
- une valeur seuil V_Ω égale à 3 ;
- un motif comportant, en sus des règles de similarité, une valeur correspondant à la taille maximale des séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité Pour cet exemple, on considère que cette taille maximale est égale à 3.
Les règles de similarité portent respectivement sur :
- R1: un unique port source pour chaque connexion, avec un paramètre de tolérance ε(R1) égal à 1 ;
- R2: une suite {53, 53, 53} chronologique de ports destinataire, avec un paramètre de tolérance ε(R2) égal à 0 ;
- R3: des intervalles entre connexions de 1min ou de 3 min, avec un paramètre de tolérance ε(R3) égal à 1 ;
- R4: une suite {106, 106, 180} chronologique de quantités d’octets envoyés, avec un paramètre de tolérance ε(R4) égal à 10 (dans ce cas le paramètre de tolérance peut s’appliquer à chaque élément de la suite {106, 106, 180} ) ;
- R5: une suite {0, 74, 60} chronologique de quantités d’octets reçus, avec un paramètre de tolérance ε(R5) égal à 10.
On obtient alors R1(S1,S2) = R2(S1,S2) = R3(S1,S2) = R4(S1,S2) = R5(S1,S2) = 1. Ainsi, D_Ω(S1,S2) = 5 et donc S1et S2sont similaires pour l’ensemble réglementaire Ω. Le motif M_Ω de communication extrait associé à Ω s’écrit :
M_Ω = {3, R1, R2, R3, R4, R5}. Sur la base de ce motif, jusqu’alors inconnu, il est désormais possible d’identifier un comportement associé dans le réseau de communication.
Selon un autre exemple permettant d’illustrer une extraction d’un motif correspondant à une attaque DDoS, considérons une première séquence S1formée de 7 connexions C1à C7qui sont :
C1= 11:32::49, 5.187.120.163, 82.122.1.10, 44339, 80, 120, 0
C2= 11:32::49, 5.187.120.163, 82.122.1.10, 28039, 80, 120, 0
C3= 11:32::49, 5.187.120.163, 82.122.1.10, 40239, 80, 120, 0
C4= 11:32::49, 5.187.120.163, 82.122.1.10, 33255, 80, 120, 0
C5= 11:32::49, 5.187.120.163, 82.122.1.10, 52265, 80, 120, 0
C6= 11:32::49, 5.187.120.163, 82.122.1.10, 23479, 80, 120, 0
C7= 11:32::49, 5.187.120.163, 82.122.1.10, 42799, 80, 120, 0
Chacune de ces connexions est associée à 7 attributs séparés par des virgules, et qui correspondent respectivement, lorsqu’on les lit de gauche à droite, à : un horodatage (en heures:minutes::secondes), une adresse source As, une adresse destinataire Ad, un port source, un port destinataire, une quantité d’octets envoyés par le port source, une quantité d’octets reçus par le port destinataire.
Considérons également, suivant un modèle de connexion identique, une deuxième séquence S2formée également de 7 connexions C’1à C’7qui sont :
C’1= 11:32::49, 5.187.120.159, 82.122.1.10, 56437, 80, 120, 0
C’2= 11:32::49, 5.187.120.159, 82.122.1.10, 10699, 80, 120, 0
C’3= 11:32::49, 5.187.120.159, 82.122.1.10, 47793, 80, 120, 0
C’4= 11:32::49, 5.187.120.159, 82.122.1.10, 45725, 80, 120, 0
C’5= 11:32::49, 5.187.120.159, 82.122.1.10, 53877, 80, 120, 0
C’6= 11:32::49, 5.187.120.159, 82.122.1.10, 56143, 80, 120, 0
C’7= 11:32::49, 5.187.120.159, 82.122.1.10, 38585, 80, 120, 0
On comprend donc que les deux séquences S1et S2sont respectivement associées à deux registres de paire H1et H2. Ces deux registres de paire sont distincts étant donné que les connexions de S1diffèrent de celles de S2au niveau des adresses source (donc in fine au niveau de la paire adresse source/adresse destinataire).
On considère également :
- une unique règle d’autorisation de comparaison qui consiste à comparer des séquences de même taille. Par conséquent, S1et S2peuvent bien être comparées ;
- un seul ensemble réglementaire Ω comprenant 4 règles de similarité R1, R2, R3, et R4 ;
- une mesure de similarité égale à la somme des valeur locales de similarité ;
- une valeur seuil V_Ω égale à 4 ;
- un motif comportant, en sus des règles de similarité, une valeur correspondant à la taille maximale des séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité Pour cet exemple, on considère que cette taille maximale est égale à 7.
Les règles de similarité portent respectivement sur :
- R1: une suite {80, 80, 80, 80, 80, 80, 80} chronologique de ports destinataire, avec un paramètre de tolérance ε(R1) égal à 0 ;
- R2: une durée totale de séquence égale à 1 seconde, avec un paramètre de tolérance ε(R2) égal à 1 ;
- R3: une suite {120, 120, 120, 120, 120, 120, 120} chronologique de quantités d’octets envoyés, avec un paramètre de tolérance ε(R3) égal à 20 ;
- R4: une suite {0, 0, 0, 0, 0, 0, 0} chronologique de quantités d’octets reçus, avec un paramètre de tolérance ε(R4) égal à 20.
On obtient alors R1(S1,S2) = R2(S1,S2) = R3(S1,S2) = R4(S1,S2) = R5(S1,S2) = 1. Ainsi, D_Ω(S1,S2) = 4 et donc S1et S2sont similaires pour l’ensemble réglementaire Ω. Le motif M_Ω de communication extrait associé à Ω s’écrit :
M_Ω = {7, R1, R2, R3, R4}. Sur la base de ce motif, jusqu’alors inconnu, il est désormais possible d’identifier un comportement associé dans le réseau de communication.
C1= 11:32::49, 5.187.120.163, 82.122.1.10, 44339, 80, 120, 0
C2= 11:32::49, 5.187.120.163, 82.122.1.10, 28039, 80, 120, 0
C3= 11:32::49, 5.187.120.163, 82.122.1.10, 40239, 80, 120, 0
C4= 11:32::49, 5.187.120.163, 82.122.1.10, 33255, 80, 120, 0
C5= 11:32::49, 5.187.120.163, 82.122.1.10, 52265, 80, 120, 0
C6= 11:32::49, 5.187.120.163, 82.122.1.10, 23479, 80, 120, 0
C7= 11:32::49, 5.187.120.163, 82.122.1.10, 42799, 80, 120, 0
Chacune de ces connexions est associée à 7 attributs séparés par des virgules, et qui correspondent respectivement, lorsqu’on les lit de gauche à droite, à : un horodatage (en heures:minutes::secondes), une adresse source As, une adresse destinataire Ad, un port source, un port destinataire, une quantité d’octets envoyés par le port source, une quantité d’octets reçus par le port destinataire.
Considérons également, suivant un modèle de connexion identique, une deuxième séquence S2formée également de 7 connexions C’1à C’7qui sont :
C’1= 11:32::49, 5.187.120.159, 82.122.1.10, 56437, 80, 120, 0
C’2= 11:32::49, 5.187.120.159, 82.122.1.10, 10699, 80, 120, 0
C’3= 11:32::49, 5.187.120.159, 82.122.1.10, 47793, 80, 120, 0
C’4= 11:32::49, 5.187.120.159, 82.122.1.10, 45725, 80, 120, 0
C’5= 11:32::49, 5.187.120.159, 82.122.1.10, 53877, 80, 120, 0
C’6= 11:32::49, 5.187.120.159, 82.122.1.10, 56143, 80, 120, 0
C’7= 11:32::49, 5.187.120.159, 82.122.1.10, 38585, 80, 120, 0
On comprend donc que les deux séquences S1et S2sont respectivement associées à deux registres de paire H1et H2. Ces deux registres de paire sont distincts étant donné que les connexions de S1diffèrent de celles de S2au niveau des adresses source (donc in fine au niveau de la paire adresse source/adresse destinataire).
On considère également :
- une unique règle d’autorisation de comparaison qui consiste à comparer des séquences de même taille. Par conséquent, S1et S2peuvent bien être comparées ;
- un seul ensemble réglementaire Ω comprenant 4 règles de similarité R1, R2, R3, et R4 ;
- une mesure de similarité égale à la somme des valeur locales de similarité ;
- une valeur seuil V_Ω égale à 4 ;
- un motif comportant, en sus des règles de similarité, une valeur correspondant à la taille maximale des séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité Pour cet exemple, on considère que cette taille maximale est égale à 7.
Les règles de similarité portent respectivement sur :
- R1: une suite {80, 80, 80, 80, 80, 80, 80} chronologique de ports destinataire, avec un paramètre de tolérance ε(R1) égal à 0 ;
- R2: une durée totale de séquence égale à 1 seconde, avec un paramètre de tolérance ε(R2) égal à 1 ;
- R3: une suite {120, 120, 120, 120, 120, 120, 120} chronologique de quantités d’octets envoyés, avec un paramètre de tolérance ε(R3) égal à 20 ;
- R4: une suite {0, 0, 0, 0, 0, 0, 0} chronologique de quantités d’octets reçus, avec un paramètre de tolérance ε(R4) égal à 20.
On obtient alors R1(S1,S2) = R2(S1,S2) = R3(S1,S2) = R4(S1,S2) = R5(S1,S2) = 1. Ainsi, D_Ω(S1,S2) = 4 et donc S1et S2sont similaires pour l’ensemble réglementaire Ω. Le motif M_Ω de communication extrait associé à Ω s’écrit :
M_Ω = {7, R1, R2, R3, R4}. Sur la base de ce motif, jusqu’alors inconnu, il est désormais possible d’identifier un comportement associé dans le réseau de communication.
Ainsi, à l’issue de l’étape E50, on dispose d’au moins un motif de communication correspondant à l’identification d’une intrusion malveillante au sein du réseau de communication. On note que ce motif obtenu peut avantageusement faire l’objet d’une analyse ultérieure, par exemple par un expert en sécurité informatique appartenant à l’entreprise, afin d’en valider le caractère malveillant ou non malveillant.
A cet effet, dans un mode particulier de mise en œuvre, illustré par la figure 2 à titre nullement limitatif, le procédé comporte en outre, à la suite de l’étape d’extraction, uneétape E60de validation du comportement d’au moins un des motifs extraits, de sorte que ledit au moins un motif extrait est associé à une étiquette représentative dudit comportement en cas de validation. Une telle étiquette correspond encore, comme cela est connu de l’homme du métier, à un label.
En procédant ainsi, il est possible de confirmer ou d’infirmer le caractère malveillant d’un motif extrait, ce qui permet d’éviter par la suite l’émission de fausses alertes. Le format d’un motif étant très simple à manipuler, le temps à consacrer pour réaliser une telle validation est fortement réduit. Par exemple, ledit motif peut être appliqué sur des séquences de connexions dont on connait a priori le caractère malveillant ou bénin, de sorte à détecter très rapidement si le motif extrait est erroné.
On note que le fait d’attribuer une étiquette permet de classifier ledit motif, de sorte à pouvoir constituer une base de données de motifs. En outre, dans le cas où le motif extrait correspond effectivement à une intrusion malveillante, l’étiquette attribuée peut également comporter une indication relative au type de l’attaque, constituant ainsi une information précieuse pour des détections ultérieures dans le réseau de communication.
Il faut également noter que l’invention s’applique sans qu’il soit nécessaire que les connexions établies dans le registre de réseau soient elles-mêmes associées à des étiquettes. Toutefois, rien n’exclut que ce soit le cas. Par exemple, lorsqu’un motif a été extrait, validé comme correspondant à une intrusion malveillante et puis étiqueté, les connexions faisant partie des séquences à partir desquelles le motif a été extrait sont également associées à ladite étiquette, de sorte que de futures connexions identiques établies dans le réseau de communication portent ladite étiquette.
Cette manière de procéder permet avantageusement, lorsque tout ou partie des connexions destinées à être établies sont déjà étiquetées, de supprimer totalement la validation des motifs extraits. En effet, un motif extrait de la sorte est par conséquent aussi étiqueté, sans qu’il soit nécessaire de faire appel à une validation externe.
Selon un exemple de mise en œuvre, lorsque toutes les connexions ont été préalablement étiquetées, l’étape de regroupement des séquences de taille k détaillée ci-avant, dans le cadre de la description de l’étape E30 de comparaison, comporte également un tri parmi les séquences de tailles k regroupées. Ce tri vise à regrouper entre elles les séquences ayant des connexions portant toutes la même étiquette, de sorte qu’un motif extrait sur la base de ces séquences soit associé de manière automatique à ladite étiquette.
Lafigure 3représente schématiquement un mode particulier de mise en œuvre du procédé de la figure 2, dans lequel l’étape E30 de comparaison est itérée jusqu’à l’atteinte d’une condition d’arrêt Cstopprédéfinie, au moins un paramètre de tolérance ε(Ri) associé à au moins un ensemble réglementaire Ω étant mis à jour au cours de chaque itération, de sorte que :
- une règle de similarité Rimise à jour en conséquence permet potentiellement d’augmenter le nombre de paires de séquences considérées comme similaires pour ladite règle,
- des mesures de similarité mises à jour sont obtenues.
- une règle de similarité Rimise à jour en conséquence permet potentiellement d’augmenter le nombre de paires de séquences considérées comme similaires pour ladite règle,
- des mesures de similarité mises à jour sont obtenues.
Le fait d’augmenter, pour au moins une règle de similarité Ri, le nombre potentiel de séquences considérées comme similaires permet de relâcher la contrainte de respect de ladite règle Ripar les séquences déterminées au cours de l’étape E20. De cette manière, on peut avantageusement détecter des variantes d’une intrusion, c’est-à-dire des variations d’exécution d’une même intrusion.
A titre d’exemple nullement limitatif, à chaque itération de l’étape E30 de comparaison, la mise à jour d’une règle Ris’effectue en augmentant ou diminuant le paramètre de tolérance ε(Ri) associé, par exemple d’un pas constant. Le choix entre une augmentation ou une diminution de ce paramètre dépend bien entendu de la nature de la règle considérée, sachant qu’il convient d’augmenter le nombre potentiel de séquences considérées comme similaires. Par ailleurs, il résulte de la modification d’un paramètre de tolérance qu’une mesure de similarité mise à jour en conséquence est supérieure, en valeur absolue, à la mesure de similarité correspondante avant mise à jour.
On note que dans cet exemple de mise en œuvre, lorsqu’un ensemble réglementaire comprend une pluralité de règles de similarité, un seul des paramètres de tolérance associés à ces règles, et par exemple choisi aléatoirement, peut être mis à jour. Alternativement, une pluralité, voire la totalité, desdits paramètres de tolérance est mise à jour.
On comprend également que le choix de la condition Cstoprésulte d’un compromis entre rechercher le plus de variantes potentielles d’une intrusion, quitte à extraire des motifs associés à de fausses intrusions, et limiter le nombre de variantes potentielles ainsi qu’in fine l’extraction de motifs associés à de fausses intrusions.
Par exemple, ladite condition d’arrêt Cstopcorrespond à un nombre maximal de mesures de similarité satisfaisant ledit critère de similarité. Ce nombre maximal correspond ainsi à une valeur seuil. Majorer ainsi le nombre de mesures de similarité satisfaisant ledit critère de similarité tend à favoriser une limitation du nombre de variantes potentielles recherchées.
Rien n’exclut de considérer des conditions d’arrêt Cstopde type différent, comme par exemple une condition d’arrêt portant sur une ou plusieurs valeurs seuil associées respectivement à un ou plusieurs paramètres de tolérance.
On note que des variantes du mode de mise en œuvre de la figure 2 peuvent être considérées. Par exemple, dans le cas où les séquences ont déjà toutes été regroupées parmi des ensembles de niveau k, on peut envisager une étape de suppression des séquences de taille k dont une mesure de similarité associée ne satisfait pas le critère de similarité, et comportant en outre des connexions en commun avec les séquences de taille j satisfaisant quant à elles le critère de similarité, pour j < k. De telles dispositions contribuent à augmenter l’efficacité du procéder en diminuant le risque d’extraire des motifs correspondant à de fausses intrusions. Une telle suppression est par exemple exécutée de manière itérative suivant les tailles k croissantes.
Selon encore un autre exemple, éventuellement en combinaison avec le précédent dans lequel une étape de suppression est effectuée, et dans le cas où les séquences ont déjà toutes été regroupées parmi des ensembles de niveau k, des étiquettes sont attribuées aux séquences regroupées. Ainsi, à l’issue d’une itération pour mettre à jour une règle de similarité ainsi que les mesures de similarité associées, il est possible de vérifier s’il existe, parmi les séquences vérifiant le critère de similarité, des séquences comportant des étiquettes différentes, ce qui pourrait être révélateur de l’existence d’une ou plusieurs fausses intrusions.
De manière plus générale, il est à noter que tous les modes de mise en œuvre du procédé d’extraction considérés ci-dessus ont été décrits à titre d’exemples non limitatifs, et que d’autres variantes sont par conséquent envisageables.
Notamment, le procédé d’extraction a été décrit en considérant qu’une pluralité de registres de paire étaient déterminés. Rien n’exclut cependant de considérer qu’un seul registre de paire est déterminé, ou, encore dit autrement, qu’une seule paire d’adresses est considérée (le registre de réseau correspond .alors par exemple à un registre de réseau local associé à deux entités). Pour une telle mise en œuvre, notamment adaptée à l’extraction de motifs pour des attaques DDoS comme évoqué ci-avant, tous les modes décrits ci-dessus s’appliquent de manière claire pour l’homme du métier. Ainsi, des séquences de connexions (au moins deux) sont déterminées pour ledit registre de paire. Ces séquences sont comparées entre elles par paires conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble réglementaire, de sorte à obtenir au moins une mesure de similarité. Et, lorsque ladite au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire, un motif de communication est extrait, ledit motif comportant ledit ensemble règlementaire.
Le procédé d’extraction a également été décrit en considérant qu’une connexion comporte un attribut correspondant à un horodatage. Une telle condition n’est nullement essentielle à la mise en œuvre du procédé d’extraction. En effet, l’extraction d’un motif peut par exemple être réalisée dans un registre de réseau comportant un ensemble de connexions préalablement établies pendant une durée prédéterminée. Ainsi, cette durée prédéterminée peut être ajustée pour cibler une attaque d’un type particulier, par exemple une attaque DDoS en limitant fortement ladite durée, par exemple à quelques secondes. De cette manière, ladite durée prédéterminée devient une variable d’ajustement permettant de ne pas avoir à considérer un registre ordonné chronologiquement.
Selon un autre aspect de l’invention, lorsqu’au moins un motif de communication a été extrait par le dispositif d’extraction 2, ledit motif de communication est stocké, par exemple dans une base de données, pour être utilisé par du dispositif de détection 4 faisant partie du système détection 1, comme illustré par la figure 1. Le dispositif de détection 4 se base sur ledit motif extrait pour effectuer des traitements visant à détecter ce dernier parmi des séquences d’un registre de réseau, en mettant en œuvre un procédé de détection d’au moins un comportement associé audit motif. Ledit procédé de détection est mis en œuvre par le dispositif de détection 4 sur un registre de réseau, dit « registre de réseau courant ».
Ledit registre de réseau courant comporte des connexions établies ultérieurement à celles ayant servi pour l’extraction du motif. Bien entendu, un tel registre de réseau courant peut correspondre à un sous-ensemble d’un registre de réseau en cours d’écriture du fait d’entités actives sur le réseau. D’une manière générale, la structure du registre de réseau courant est similaire à celle du registre ayant servi à l’extraction, à savoir qu’une connexion est associée à un ensemble d’attributs comportant au moins une paire d’adresses, une adresse source et une adresse destinataire. En outre, toutes les caractéristiques considérées ci-avant quant à la structure du réseau ayant servi à l’extraction (nombre d’attributs, champs associés aux attributs, nombre de paires d’adresse, etc.) sont applicables au registre de réseau courant.
Selon un exemple plus spécifique, le registre de réseau courant et le registre de réseau ayant servi à l’extraction sont identiques en ce qu’ils sont associés au même réseau de communication.
Selon un autre exemple, et bien que présentant une structure similaire, le registre de réseau courant et le registre de réseau ayant servi à l’extraction sont distincts en ce qu’ils sont associés à des réseaux de communication respectifs distincts. Par exemples, lesdits réseaux distincts correspondent à des réseaux de communication interne exploités par des entreprises distinctes.
Le dispositif de détection 4 comporte par exemple un ou plusieurs processeurs et des moyens de mémorisation (disque dur magnétique, mémoire électronique, disque optique, etc.) dans lesquels sont mémorisés des données et un programme d'ordinateur, sous la forme d'un ensemble d'instructions de code de programme à exécuter pour mettre en œuvre tout ou partie des étapes du procédé de détection. Alternativement ou en complément, le dispositif de détection 4 comporte également un ou des circuits logiques programmables, de type FPGA, PLD, etc., et / ou circuits intégrés spécialisés (ASIC), et / ou un ensemble de composants électroniques discrets, etc. adaptés à mettre en œuvre tout ou partie des étapes du procédé de détection.
Dans le présent exemple de réalisation, le registre de réseau courant est initialement stocké par les moyens de mémorisation dudit dispositif de détection 4. Alternativement, lorsque ce registre de réseau courant est stocké de manière externe au dispositif de détection 4, par exemple dans une base de données du réseau, le dispositif de détection 4 comporte un module de communication 5 configuré, de manière connue en soi, pour lui permettre d’avoir accès audit registre de réseau courant et ainsi exécuté le procédé de détection.
En d'autres termes, le dispositif de détection 4 comporte un ensemble de moyens configurés de façon logicielle (programme d'ordinateur spécifique) et / ou matérielle (FPGA, PLD, ASIC, etc.) pour mettre en œuvre les différentes étapes du procédé de détection d’un comportement dans le réseau de communication.
Pour la suite de la description, et comme illustré par la figure 1, on considère que le dispositif de détection 4 et le dispositif d’extraction 2 sont distincts. Toutefois, rien n’exclut qu’ils soient confondus de sorte à former un seul et unique dispositif configuré pour à la fois extraire au moins un motif mais également pour détecter au moins un comportement sur la base dudit au moins un motif.
Lafigure 4représente schématiquement sous forme d’ordinogramme un mode de mise en œuvre dudit procédé de détection selon l’invention.
Tel qu’illustré dans la figure 4, le procédé de détection comporte tout d’abord uneétape E100d’obtention d’au moins un motif de communication préalablement extrait. L’obtention de ce motif est par exemple réalisée grâce aux modules de communication 3, 5 respectifs des dispositifs d’extraction 2 et de détection 4, qui communiquent dès lors entre eux pour se transmettre le motif extrait. Selon un autre exemple, le motif extrait est fourni au dispositif de d’extraction 2 au moyen d’un support d’enregistrement externe, comme par exemple une clé USB. Selon encore un autre exemple, le dispositif de détection 4 consulte une base de données pour obtenir le motif extrait.
Une fois le motif extrait obtenu, le procédé de détection comporte uneétape E200de détermination d’au moins un registre de paire, ainsi qu’uneétape E300de détermination d’au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant compris entre 2 et le cardinal du registre de paire.
Les étapes E200 et E300 sont réalisées selon des caractéristiques similaires à celles décrites ci-avant pour l’un quelconque des modes de mise en œuvre du procédé d’extraction.
Par exemple, une ou plusieurs séquences sont déterminées au moyen d‘une fenêtre glissante. Selon un exemple plus spécifique, la taille de cette fenêtre glissante est majorée par la valeur de taille du motif extrait lorsque ce dernier comporte une telle valeur.
Le procédé de détection comporte enfin uneétape E400de vérification d’une correspondance entre le motif de communication et ladite séquence. Une telle vérification s’effectue en appliquant les règles listées dans le motif à ladite au moins une séquence déterminée au cours de l’étape E300.
Dans un mode particulier de mise en œuvre, le registre de réseau courant est mis à jour en temps réel à chaque nouvelle connexion dans le réseau de communication. Les étapes de détermination E300 d’au moins une séquence ainsi que de vérification E400 étant itérées à chaque mis à jour dudit registre réseau courant.
Par ailleurs, rien n’exclut de considérer une pluralité de motifs préalablement extraits. Dès lors, si au moins une partie de ces motifs est obtenue au cours de l’étape E100 d’obtention, l’étape E400 de vérification est avantageusement itérée pour chacun des motifs appartenant à ladite partie.
Selon une alternative de mise en œuvre du procédé de détection, un motif extrait obtenu lors de l’étape E100 est tout d’abord fractionné en plusieurs sous motifs, chaque sous motif comportant un sous ensemble des règles du motif. L’étape de vérification E400 est dès lors exécutée pour chacun des sous motifs.
Selon une variante encore plus spécifique, lesdits sous motifs ne comportent pas de règles communes, de sorte à former une partition du motif initial. De cette manière, il est possible de détecter une intrusion malveillante fragmentée, c’est-à-dire réparties sur des séquences de connexions non consécutives.
Il est à noter que l’invention a été décrite dans le cadre général d’une extraction d’au moins un motif de communication malveillant, et donc également d’une détection d’un comportement malveillant. Toutefois, il apparaitra clairement à l’homme du métier que l’invention s’applique tout aussi bien à l’extraction d’au moins un motif bénin, ainsi qu’à la détection d’un comportement bénin. Par
« bénin », on fait référence ici à un comportement normal, en dehors de toute attaque, d’entités partageant le réseau de communication. En effet, le choix du caractère malveillant ou bien bénin résulte essentiellement de la manière dont les règles de similarité sont préalablement définies, ce qui ne constitue nullement une limitation de l’invention.
« bénin », on fait référence ici à un comportement normal, en dehors de toute attaque, d’entités partageant le réseau de communication. En effet, le choix du caractère malveillant ou bien bénin résulte essentiellement de la manière dont les règles de similarité sont préalablement définies, ce qui ne constitue nullement une limitation de l’invention.
Claims (16)
- Procédé d’extraction d’au moins un motif de communication à partir d’au moins un registre de réseau comportant un ensemble de connexions préalablement établies dans un réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit procédé comportant :
- une étape de détermination (E10) d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- une étape de détermination (E20) de séquences de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- une étape de comparaison (E30) des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit « ensemble règlementaire », une règle de similarité étant évaluée en fonction d’au moins un attribut pour estimer si deux séquences sont similaires au regard de ladite règle, une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,
et, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire (E40),
- une étape d’extraction (E50), pour l’ensemble règlementaire considéré, d’au moins un motif de communication, ledit motif comportant ledit ensemble règlementaire. - Procédé selon la revendication 1, dans lequel une règle d’autorisation de comparaison consiste à comparer des séquences n’ayant pas de connexions en commun.
- Procédé selon l’une quelconque des revendications 1 à 2, dans lequel une règle d’autorisation de comparaison consiste à comparer des séquences de même taille.
- Procédé selon la revendication 3, dans lequel l’étape de comparaison (E30) comporte, pour une taille donnée k de séquence :
- un regroupement des séquences de taille k dans un ensemble, dit
« ensemble de niveau k »,
- une comparaison des séquences de l’ensemble de niveau k conformément à ladite au moins une règle d’autorisation de comparaison et audit au moins un ensemble règlementaire,
le regroupement et la comparaison de niveau k étant réalisés de manière itératives suivant les tailles k décroissantes. - Procédé selon la revendication 4, dans lequel, au cours d’une itération, la comparaison de niveau k est suivie d’une suppression, parmi toutes les séquences de taille inférieure à k, des séquences comportant des connexions en commun avec les séquences de l’ensemble de niveau k.
- Procédé selon l’une des revendications 4 à 5, dans lequel, au cours d’une itération, la comparaison de niveau k est suivie d’une suppression, parmi toutes les séquences de taille k, des séquences dont une mesure de similarité associée ne satisfait pas le critère de similarité et comportant des connexions en commun avec les séquences de taille k qui satisfont ledit critère de similarité.
- Procédé selon l’une quelconque des revendications 1 à 6, dans lequel au moins une règle de similarité d’un ensemble règlementaire est évaluée également en fonction d’un paramètre de tolérance prédéfini associé audit au moins un attribut de ladite règle de similarité.
- Procédé selon la revendication 7, dans lequel l’étape de comparaison (E30) est itérée jusqu’à l’atteinte d’une condition d’arrêt prédéfinie, au moins un paramètre de tolérance associé à au moins un ensemble réglementaire étant mis à jour au cours de chaque itération, de sorte que :
- une règle de similarité mise à jour en conséquence permet potentiellement d’augmenter le nombre de paires de séquences considérées comme similaires pour ladite règle,
- des mesures de similarité mises à jour sont obtenues. - Procédé selon l’une quelconque des revendications 1 à 8, dans lequel un motif extrait comporte également une valeur correspondant à une taille de séquence parmi les séquences autorisées à être comparées et pour lesquelles il a été obtenu une mesure de similarité satisfaisant le critère de similarité.
- Procédé selon l’une quelconque des revendications 1 à 9, ledit procédé comportant en outre, à la suite de l’étape d’extraction, une étape de validation (E60) du comportement d’au moins un des motifs extraits, de sorte que ledit au moins un motif extrait est associé à une étiquette représentative dudit comportement en cas de validation.
- Programme d’ordinateur comportant des instructions pour la mise en œuvre d’un procédé d’extraction selon l’une quelconque des revendications 1 à 10 lorsque ledit programme est exécuté par un processeur.
- Dispositif d’extraction (2) d’au moins un motif de communication à partir d’au moins un registre de réseau comportant un ensemble de connexions préalablement établies dans un réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit dispositif d’extraction (2) comportant :
- un premier module de détermination, configuré pour déterminer au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- un second module de détermination, configuré pour déterminer des séquences de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- un module de comparaison, configuré pour comparer des séquences entre elles par paires de séquences, conformément à au moins une règle d’autorisation de comparaison prédéfinie et à au moins un ensemble d’au moins une règle de similarité prédéfinie, dit « ensemble règlementaire », une règle de similarité étant évaluée en fonction d’au moins un attribut pour estimer si deux séquences sont similaires au regard de ladite règle, une mesure de similarité associée audit ensemble règlementaire étant obtenue pour chaque paire de séquences autorisées à être comparées,
- un module d’extraction, configuré pour extraire, lorsqu’au moins une mesure de similarité satisfait un critère de similarité prédéfini associé audit ensemble règlementaire, au moins un motif de communication pour l’ensemble règlementaire considéré, ledit motif comportant ledit ensemble règlementaire. - Procédé de détection d’au moins un comportement dans un réseau de communication, à partir d’au moins un registre de réseau courant comportant un ensemble de connexions établies dans ledit réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit procédé de détection comportant :
- une étape d’obtention (E100) d’au moins un motif de communication préalablement extrait selon un procédé d’extraction conforme à l’une quelconque des revendications 1 à 10 dans un registre de réseau comportant un ensemble de connexions établies antérieurement aux connexions dudit registre de réseau courant,
- une étape de détermination (E200) d’au moins un registre relatif à une paire d’adresses associées à au moins deux connexions, dit « registre de paire » et comprenant lesdites au moins deux connexions,
- une étape de détermination (E300) d’au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- une étape de vérification (E400) d’une correspondance entre le motif de communication et ladite séquence. - Programme d’ordinateur comportant des instructions pour la mise en œuvre d’un procédé de détection selon la revendication 13 lorsque ledit programme est exécuté par un processeur.
- Dispositif de détection (4) d’au moins un comportement dans un réseau de communication, à partir d’au moins un registre de réseau courant comportant un ensemble de connexions établies dans ledit réseau de communication, une connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit dispositif de détection (4) comportant :
- un module d’obtention, configuré pour obtenir au moins un motif de communication préalablement extrait par un dispositif d’extraction (2) conforme à la revendication 12 dans un registre de réseau comportant des communications établies antérieurement aux connexions dudit registre de réseau courant,
- un module de détermination, configuré pour déterminer au moins une séquence de connexions contenues dans le registre de paire, le nombre de connexions d’une séquence étant supérieur ou égal à 2,
- un module de vérification, configuré pour vérifier une correspondance entre le motif de communication et ladite séquence. - Système de détection (1) d’un comportement dans un registre de réseau courant comportant des connexions établies dans un réseau de communication, chaque connexion étant associée à un ensemble d’attributs comportant au moins une paire d’adresses, une paire d’adresses comprenant une adresse source et une adresse destinataire, ledit système (1) comportant un dispositif d’extraction (2) selon la revendication 12 ainsi qu’un dispositif de détection (4) selon la revendication 15..
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1903367A FR3094600B1 (fr) | 2019-03-29 | 2019-03-29 | Procédé d’extraction d’au moins un motif de communication dans un réseau de communication |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1903367A FR3094600B1 (fr) | 2019-03-29 | 2019-03-29 | Procédé d’extraction d’au moins un motif de communication dans un réseau de communication |
FR1903367 | 2019-03-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3094600A1 true FR3094600A1 (fr) | 2020-10-02 |
FR3094600B1 FR3094600B1 (fr) | 2022-05-06 |
Family
ID=67441411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1903367A Active FR3094600B1 (fr) | 2019-03-29 | 2019-03-29 | Procédé d’extraction d’au moins un motif de communication dans un réseau de communication |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3094600B1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210409440A1 (en) * | 2020-06-30 | 2021-12-30 | Honeywell International Inc. | Cybersecurity compliance engine for networked systems |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120137367A1 (en) * | 2009-11-06 | 2012-05-31 | Cataphora, Inc. | Continuous anomaly detection based on behavior modeling and heterogeneous information analysis |
US20170063897A1 (en) * | 2015-08-31 | 2017-03-02 | Splunk Inc. | Interface Providing An Interactive Timeline For Evaluating Instances Of Potential Network Compromise |
WO2017127850A1 (fr) * | 2016-01-24 | 2017-07-27 | Hasan Syed Kamran | Sécurité informatique basée sur l'intelligence artificielle |
-
2019
- 2019-03-29 FR FR1903367A patent/FR3094600B1/fr active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120137367A1 (en) * | 2009-11-06 | 2012-05-31 | Cataphora, Inc. | Continuous anomaly detection based on behavior modeling and heterogeneous information analysis |
US20170063897A1 (en) * | 2015-08-31 | 2017-03-02 | Splunk Inc. | Interface Providing An Interactive Timeline For Evaluating Instances Of Potential Network Compromise |
WO2017127850A1 (fr) * | 2016-01-24 | 2017-07-27 | Hasan Syed Kamran | Sécurité informatique basée sur l'intelligence artificielle |
Non-Patent Citations (1)
Title |
---|
KONRAD RIECK: "Machine Learning for Application-Layer Intrusion Detection", THESIS TU BERLIN,, 6 July 2009 (2009-07-06), pages 1 - 151, XP007913622 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210409440A1 (en) * | 2020-06-30 | 2021-12-30 | Honeywell International Inc. | Cybersecurity compliance engine for networked systems |
US12058162B2 (en) * | 2020-06-30 | 2024-08-06 | Honeywell International Inc. | Cybersecurity compliance engine for networked systems |
Also Published As
Publication number | Publication date |
---|---|
FR3094600B1 (fr) | 2022-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9166994B2 (en) | Automation discovery to identify malicious activity | |
US10084806B2 (en) | Traffic simulation to identify malicious activity | |
US20140068763A1 (en) | Data mining to identify malicious activity | |
Mangino et al. | Internet-scale insecurity of consumer internet of things: An empirical measurements perspective | |
US9294560B2 (en) | System and method of analysing transfer of data over at least one network | |
Aiello et al. | Profiling DNS tunneling attacks with PCA and mutual information | |
Kheir et al. | Botsuer: Suing stealthy p2p bots in network traffic through netflow analysis | |
WO2021152262A1 (fr) | Procede de surveillance de donnees echangees sur un reseau et dispositif de detection d'intrusions | |
CN115134250A (zh) | 一种网络攻击溯源取证方法 | |
EP3053320A1 (fr) | Procédé de détection d'anomalies dans un trafic réseau | |
Faber et al. | Autoencoder-based ids for cloud and mobile devices | |
Li et al. | Real-time correlation of network security alerts | |
WO2024126521A1 (fr) | Méthode et système de détection d'intrusions dans un réseau informatique par apprentissage automatique | |
FR3094600A1 (fr) | Procédé d’extraction d’au moins un motif de communication dans un réseau de communication | |
Kumar et al. | Detection and analysis of ddos attack at application layer using naive bayes classifier | |
Al Makdi et al. | Trusted security model for IDS using deep learning | |
EP4449285A1 (fr) | Procédé d'entraînement d'un agent autonome à l'aide d'un algorithme d'apprentissage par renforcement, agent autonome associé | |
EP4009584A1 (fr) | Procédé de détermination de classifieurs pour la détection d'attaques dans un réseau de communication, dispositif de détermination associé | |
EP4409450A1 (fr) | Procédé d'analyse de la vulnérabilité d'un système d'information à une attaque informatique | |
WO2010037955A1 (fr) | Procede de caracterisation d'entites a l'origine de variations dans un trafic reseau | |
Ismail et al. | Stateless malware packet detection by incorporating naive bayes with known malware signatures | |
Megala et al. | Detecting DDoS attack: a machine-learning-based approach | |
Yang et al. | Forensic data analytics for anomaly detection in evolving networks | |
WO2019122241A1 (fr) | Procédé de construction automatique de scénarios d'attaques informatiques, produit programme d'ordinateur et système de construction associés | |
EP4009209A1 (fr) | Procédé de détermination de quantités pour la détection d'attaques dans un réseau de communication, dispositif de détermination associé |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20201002 |
|
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 |