FR3086429A1 - Procede d'identification d'un equipement cible se connectant a un reseau - Google Patents

Procede d'identification d'un equipement cible se connectant a un reseau Download PDF

Info

Publication number
FR3086429A1
FR3086429A1 FR1858605A FR1858605A FR3086429A1 FR 3086429 A1 FR3086429 A1 FR 3086429A1 FR 1858605 A FR1858605 A FR 1858605A FR 1858605 A FR1858605 A FR 1858605A FR 3086429 A1 FR3086429 A1 FR 3086429A1
Authority
FR
France
Prior art keywords
equipment
network
values
identification
connection parameters
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.)
Withdrawn
Application number
FR1858605A
Other languages
English (en)
Inventor
Xavier Le Guillou
Eric Bouvet
Alexis Facques
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
Orange SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange SA filed Critical Orange SA
Priority to FR1858605A priority Critical patent/FR3086429A1/fr
Publication of FR3086429A1 publication Critical patent/FR3086429A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Power Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Fuzzy Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

La présente invention concerne un procédé d'identification d'un équipement cible (1a) se connectant à un réseau (20), caractérisé en ce qu'il comprend la mise en œuvre d'étapes de : (a) Apprentissage d'un modèle d'identification, à partir d'une base de d'équipements de référence (1b, 1c) déjà identifiés, chaque équipement de référence (1b, 1c) étant défini par un n-uplet de valeurs de paramètres de connexion ; (b) Détermination par un module de traitement de données (21) d'une passerelle (2) du réseau (20) des valeurs des paramètres de connexion dudit n-uplet pour ledit équipement cible (1a) ; (c) identification de l'équipement cible (1a) par ladite unité de traitement de données (21) de la passerelle (2) en fonction desdites valeurs déterminées, au moyen du modèle d'identification appris.

Description

Procédé d’identification d’un équipement cible se connectant à un réseau
DOMAINE TECHNIQUE GENERAL
La présente invention concerne un procédé d’identification d’un équipement cible se connectant à un réseau.
ETAT DE L’ART
Les réseaux aussi bien domestiques que d’entreprise sont confrontés au problème de plus en plus important des nouveaux équipements « inconnus » qui se connectent spontanément au réseau : terminaux mobiles de visiteurs, périphériques réseaux, objets connectés divers, etc. Cela est d’autant plus vrai que de nombreux réseaux proposent une connexion Wi-Fi « ouverte », par exemple des restaurants, des librairies, etc.
Le problème qui se pose est celui de l’identification des équipements qui se connectent. Il serait en effet souhaitable de pouvoir savoir quel est le type d’équipement, si celui-ci est à jour, et surtout comment le « présenter » à l’administrateur du réseau. De plus, il serait souhaitable de reconnaître un même équipement se connectant à plusieurs reprises (en effet, il est très courant en particulier dans les réseaux sans-fil d’avoir un même terminal mobile se connectant et se déconnectant régulièrement).
En effet, la seule chose qui est remontée en réponse aux requêtes DHCP est un « friendly name », i.e. un nom réseau défini par l’utilisateur, lequel n’apporte que rarement des informations (de nombreux utilisateurs ont gardé un nom par défaut, du genre « DESKTOP-HF132K »), peut changer, et peut même être utilisée de façon malveillante pour usurper une identité (« spoofing »).
Une première solution est de pré-enregistrer (dans la passerelle) les équipements souhaitant se connecter. Si cela est envisageable en réseau entreprise, bien que fastidieux et nécessitant d’être organisé, cela n’est pas acceptable dans un réseau domestique.
Alternativement, on pourrait envisager utiliser une application présente (par exemple sous la forme d’une API) sur chaque équipement qui souhaite de connecter, laquelle serait configurée pour transmettre les informations à la passerelle, mais on comprend qu’il serait très difficile de contraindre le déploiement systématique d’une telle application.
Il serait ainsi souhaitable de disposer qu’une nouvelle solution d’identification d’équipements « à l’aveugle », c’est-à-dire sans que les équipement n’aient besoin d’envoyer la moindre information supplémentaire.
PRESENTATION DE L’INVENTION
La présente invention se rapporte ainsi selon un premier aspect à un procédé d’identification d’un équipement cible se connectant à un réseau, caractérisé en ce qu’il comprend la mise en œuvre d’étapes de :
(a) Apprentissage d’un modèle d’identification, à partir d’une base de d’équipements de référence déjà identifiés, chaque équipement de référence étant défini par un n-uplet de valeurs de paramètres de connexion ;
(b) Détermination par un module de traitement de données d’une passerelle du réseau des valeurs des paramètres de connexion dudit n-uplet pour ledit équipement cible ;
(c) identification de l’équipement cible par ladite unité de traitement de données de la passerelle en fonction desdites valeurs déterminées, au moyen du modèle d’identification appris.
Le présent procédé permet ainsi d’identifier automatiquement les équipements se connectant à partir des seules information réseau disponibles nativement.
Selon d’autres caractéristiques avantageuses et non limitatives :
• lesdits paramètres de connexion pour un équipement sont choisis parmi :
- Un préfixe d’adresse physique de l’équipement ;
- Un nom réseau de l’équipement ;
- une empreinte d’un scan de services réseaux publiés par l’équipement ;
- une empreinte d’une trace réseau laissée par l’équipement ;
- un temps de latence depuis l’équipement ;
- Une empreinte d’une analyse de requêtes réseau effectuées par l’équipement.
Il s’agit de paramètres très faciles à obtenir, et permettant une excellente discrimination des équipements.
• ledit modèle d’indentification est un arbre décisionnel dans lequel les feuilles sont des identifiants d’équipements et les nœuds sont des conditions sur lesdits paramètres de connexion (un arbre décisionnel est une solution simple de modèle d’identification qui réduit très efficacement la complexité) ;
• l’étape (a) comprend la mise en œuvre d’un algorithme dichotomique de sorte à construire itérativement ledit arbre décisionnel (un algorithme dichotomique permet une sélection directe des paramètres les plus discriminants, de sorte à obtenir un arbre léger) ;
• au moins un paramètre de connexion est à valeur continue, ledit arbre décisionnel mettant en œuvre une logique floue (cela permet d’éviter des effets de seuil, et donc augmente l’interprétabilité des paramètres à valeur continue) ;
• l’étape (a) comprend l’optimisation dudit arbre décisionnel flou par mise en oeuvre d’un algorithme de recuit simulé (cela permet très efficacement de maximiser l’information sans complexifier l’arbre) ;
• l’identification de l’étape (c) est probabiliste (cela permet d’avoir éventuellement plusieurs identifications possibles avec leur probabilité, et donc de limiter au maximum les erreurs) ;
• le procédé comprend une étape (d) d’ajout dudit équipement cible à la base d’équipements de référence, et la mise à jour du modèle d’identification (ainsi, le modèle peut être enrichi en permanence, et tenir compte des évolutions matérielles).
Selon un deuxième aspect, l’invention concerne une passerelle d’un réseau, comprenant un module de traitement de données, caractérisé en ce que le module de traitement de données est configuré pour :
- Déterminer des valeurs des paramètres de connexion d’un n-uplet de paramètres de connexion pour un équipement cible se connectant au réseau ;
- identifier l’équipement cible en fonction desdites valeurs déterminées, au moyen du modèle d’identification appris à partir d’une base de d’équipements de référence déjà identifiés, chaque équipement de référence étant défini par un n-uplet de valeurs desdits paramètres de connexion.
Selon un troisième et un quatrième aspect, l’invention concerne respectivement un produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon le premier aspect de l’invention d’identification d’un équipement cible se connectant à un réseau, lorsque le programme est exécuté sur un ordinateur ; et un moyen de stockage lisible par un équipement informatique sur lequel un produit programme d’ordinateur comprend des instructions de code pour l’exécution d’un procédé selon le premier aspect de l’invention d’identification d’un équipement cible se connectant à un réseau.
PRESENTATION DES FIGURES
D’autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description qui va suivre d’un mode de réalisation préférentiel. Cette description sera donnée en référence aux figures en annexe dont :
- la figure 1 représente un exemple d’une architecture de réseau au sein de laquelle est mis en œuvre le procédé selon l’invention ;
- la figure 2 représente un exemple de base de référence pour apprentissage d’un modèle d’identification ;
- La figures 3a et 3b représentent deux exemples d’arbres décisionnels obtenus avec la base de la figure 2 ;
- La figure 4 représente un exemple de fuzzification d’un paramètre réseau.
DESCRIPTION DETAILLEE
Architecture générale
En référence à la figure 1, le procédé selon l’invention est un procédé d’identification d’un équipement cible 1a se connectant à un réseau 20.
On comprend que le présent procédé peut être mis en œuvre au moment de la connexion, ou plus tard lorsque la connexion est déjà établie.
Par « identification », on entend la détermination d’un identifiant de l’équipement cible 1a, préférentiellement porteur de sémantique comme un type, une fonction, un modèle de l’équipement cible. L’identifiant peut être unique, et dans ce cas-là on peut par exemple ajouter un numéro de sorte à différencier deux équipements du même type/modèle. On peut voir les identifiants comme des « étiquettes », dont la logique peut être entièrement définie par un administrateur du réseau 20, voir plus loin. Plus précisément, les identifiants peuvent être complètement personnalisés.
L’identification (d’un type/modèle) peut être vue comme une classification de l’équipement cible 1a parmi une pluralité de classes prédéterminées.
Comme l’on verra, l’identification d’un équipement cible permet notamment de notifier un administrateur de sa connexion (de façon porteuse d’information), voire même de procéder à des actions automatiques comme placer les équipements se connectant dans des sousréseaux différents, ou réaliser une protection pare-feu (« firewalling ») intelligente.
Par «équipement cible» 1a, on entend l’équipement pour lequel l’identification est recherchée, par opposition à d’autres équipements déjà connectés et le cas échéant déjà identifiés (référencés 1b, 1c dans la figure 1), ou à d’autres équipements non-connectés (mais ayant déjà été connectés). On comprendra que le procédé peut être mis en œuvre pour n’importe quel équipement se connectant au réseau 20, qui devient alors équipement cible 1a à tour de rôle.
Le réseau 20 peut être n’importe quel réseau de communication, en particulier un réseau local domestique ou d’entreprise, mais on comprendra qu’il peut être étendu, virtuel, etc.
Le réseau 20 comprend au moins une passerelle 2. La passerelle 2 peut être tout type de dispositif réseau gérant le réseau, par exemple un boîtier de connexion à internet de type box. La passerelle 2 est un équipement assurant des fonctionnalités de contrôle du réseau 20, par exemple de serveur DHCP (Dynamic Host Control Protocol), i.e. attribuant les adresses IP dans le réseau 20.
Le ou les équipements 1a, 1b, 1c se connectant/connectés/connectables au réseau 20 peuvent être n’importe quels équipements présentant une connectivité réseau, que ce soit de manière filaire (par exemple via un câble Ethernet) ou sans-fil (par exemple connecté à un réseau Wi-Fi généré par la passerelle 2 ou une borne dédiée). En particulier, les équipements 1a, 1b, 1c peuvent être des terminaux personnels mobiles (smartphone, tablette) ou non (PC), des objets connectés (imprimante, caméra, disque dur NAS, enceinte, objet domotique), des périphériques réseau (routeur, borne WiFi, décodeur TV), etc.
Typiquement, chaque équipement 1a, 1b, 1c comprend un module de traitement de données 11 (un processeur), un module de stockage de données 12 (une mémoire, par exemple flash), une carte réseau présentant une adresse physique en particulier au format MAC (« Media Access Control »).
Similairement, la passerelle 2 comprend au moins un module de traitement de données 21 et une mémoire 22.
Principe de l’invention
Le présent procédé met en œuvre l’identification sur la base d’un ensemble de paramètres de connexion, appelés « variables » qui en soi ne sont pas particulièrement interprétables, mais en combinaison peuvent permettre de distinguer les équipements dans la mesure où ils restent représentatifs du fonctionnement des équipements.
Plus précisément, on peut associer à un n-uplet de valeurs de paramètres de connexion une identification d’équipement, sous la forme (yari,var2 ... ,varn)-> id, où var désigne des valeurs de paramètres de connexion et id un identifiant d’équipement.
Naturellement, pour un même équipement certaines valeurs des paramètres de connexion peuvent varier dans le temps, de sorte que la fonction qui associe à un n-uplet de valeurs un identifiant n’est pas bijective, mais on constate qu’il est possible de construire de façon fiable une telle fonction de sorte à identifier un équipement cible 1a sur la base des valeurs des paramètres de connexion déterminées à un instant donné. On appelle « observation » le couple n-uplet de valeurs/identifiant observé à un instant donné, et on peut constituer une base dite de référence de la forme :
(ναΓ11; var12 ..., varln); ίά± (var21,var22 ... ,var2n);id2 (varki,vark2 ... ,varkn);idk
Ces n-uplets définissent chacun un « équipement de référence déjà identifié », sur la base desquels on va pouvoir construire un modèle d’identification d’équipements, comme l’on verra plus loin, si la base est assez grande pour être considérée représentative. L’intérêt d’une telle approche est qu’elle est complètement agnostique et ne nécessite pas de raisonner sur la signification des valeurs des paramètres.
Chacun desdits paramètres de connexion peut avoir des valeurs discrètes ou des valeurs continues.
Le ou les paramètres de connexion pour un équipement sont avantageusement choisis parmi :
- Pour les paramètres à valeur discrète :
• Un préfixe d’adresse physique de l’équipement (typiquement adresse MAC), en particulier les six premiers caractères, généralement associé à un constructeur ;
• Un nom réseau de l’équipement, dit friendly name ;
• Un scan de services réseau, dit netscan (pouvant varier pour une version de firmware donnée), et plus précisément une empreinte (i.e. un haché, ou hash, c’est-à-dire l’empreinte cryptographique obtenue par une fonction de hachage) de ce scan, voire un préfixe de cette empreinte. Le scan pourra être des versions de daemons réseaux publiés par l’équipement ;
• une trace réseau laissée par l’équipement, dite trace DHCP (pouvant varier pour une version de firmware donnée), et plus précisément à nouveau une empreinte de cette trace, voire un préfixe de cette empreinte ;
• une analyse de requêtes réseau effectuées par l’équipement, dit comportement réseau (abrégé parfois en netbeh pour « net behaviour »), et plus précisément à nouveau une empreinte de cette analyse, voire un préfixe de cette empreinte.
- Pour les paramètres à valeur discrète :
• un temps de latence depuis l’équipement, i.e. le temps de réponse au ping ou à la connexion sur certains services, notamment en millisecondes ;
• une quantification du trafic entre l’équipement et le reste du monde.
Dans la suite de la présente description, on prendra l’exemple du nuplet (préfixe MAC, friendly name, netscan, trace DHCP, temps de ping, comportement réseau), i.e. n=6.
Des observations de la base de référence pourraient alors ressembler à :
(D42122, PC-021, 0xACD4..., 0x7FF2..., 54, 0x12ED...); Homepoint Orange (D42122, PC-028, 0xBF41..., 0x2B46..., 58, 0x12ED...); Caméra Homelive (A01B29, TV4, 0xAE37..., 0x337E ...,12, 0x43FC...); DécodeurWHD93 (A01B29, PC-012, 0xFF42..., 0x543D ...,12, 0x43FC...); Décodeur UHD90
La base de référence peut être stockée sur la mémoire 22 de la passerelle 2 ou sur un serveur distant 3 (un serveur d’un fournisseur d’accès réseau par exemple). Elle peut être composée d’observations réelles, en particulier « identifiées » manuellement (c’est-à-dire pour lesquelles on a ajouté l’identifiant), ou suite à de précédentes occurrences du présent procédé (voir plus loin). A noter qu’un administrateur peut le cas échéant « réparer » des erreurs d’identification de la base.
La figure 2 montre un exemple de base simplifiée de référence (il n’y a que deux identifications possibles, Livebox ou Caméra) sur lequel on va montrer comment fonctionne le présente procédé.
Apprentissage
Le procédé commence par une étape (a) d’apprentissage d’un modèle d’identification, à partir de la base de d’équipements de référence 1b, 1c déjà identifiés (chaque équipement de référence étant défini par un n-uplet de valeurs de paramètres de connexion comme expliqué). L’étape (a) peut être mise en œuvre directement par le module de traitement de données 21 de la passerelle 2, ou par celle du serveur distant 3.
Par modèle d’identification, on entend un modèle adapté pour associer à un n-uplet de valeurs un résultat d’identification, i.e. classifier l’équipement correspondant à ce n-uplet de valeurs.
On comprendra que le modèle peut prendre de nombreuses formes. Dans la suite de la présente description, on prendra l’exemple préféré dans lequel le modèle d’identification est un arbre décisionnel, mais ce pourra alternativement être un réseau de neurones, une machine à vecteurs de supports, etc.
Plus précisément, toute méthode d’apprentissage supervisée permettant d’apprendre un modèle d’identification à partir d’exemples déjà identifiés (la base de référence) pourra être utilisée.
Un arbre décisionnel, ou arbre de décision, représente un ensemble de choix sous la forme graphique d'un arbre. Les différentes décisions possibles sont situées aux extrémités des branches (les « feuilles » de l'arbre), et sont atteints en fonction de décisions prises à chaque étape. Ici, les feuilles sont des identifiants d’équipements et les nœuds sont des conditions sur lesdits paramètres de connexion.
L’arbre décisionnel montre d’excellents résultats dans le présent cas, de fait du caractère très varié et relativement indépendant des divers paramètres. Plus précisément, certains paramètres sont nettement plus discriminants que d’autres et un arbre de décision permet leur hiérarchisation facilement.
L’homme du métier connaît des algorithmes de construction d’un arbre décisionnel à partir d’une base d’apprentissage, et on pourra notamment mettre en œuvre un algorithme dichotomique (tel qu’ID3) de sorte à construire itérativement ledit arbre décisionnel.
Ainsi, les différents paramètres de connexion seront ordonnés par l’algorithme dichotomique, afin de considérer le paramètre le plus discriminant en premier lieu vis-à-vis du résultat de l’identification. Une conséquence de ce tri est que les paramètres peu discriminants vont être utilisés en dernier, voire tout simplement élagués, i.e. utilisés dans aucun nœud.
A titre d’exemple, si on utilise l’algorithme dichotomique sur la base de la figure 2, dans une première itération le préfixe MAC est identifié comme le paramètre qui permet de réaliser la meilleure séparation entre les résultats possibles d’identification (ici le préfixe MAC « D42122 » permet de savoir à coup sur que l’on est en présence d’une caméra).
Dans une nouvelle itération, l’algorithme dichotomique identifie le ping comme paramètre réalisant le mieux la séparation entre les résultats d’identification (on voit un ping élevé pour les caméras).
On obtient alors l’arbre représenté sur la figure 3a.
On remarque une difficulté sur les paramètres à valeur continue comme le ping : la séparation implique la définition d’un seuil, mis à 15 ms dans l’exemple de la figure 3a, et qui ne correspond en pratique à rien de réel. Si ce seuil est malheureusement dépassé d’une milliseconde, on risque de mal classifier une observation.
Pour lever les effets de seuils provoqués par les variables à valeurs continues, ledit arbre décisionnel met préférentiellement en œuvre une logique dite floue (« fuzzy logic »). Il s’agit d’une extension de la logique classique aux raisonnements approchés. Elle consiste à tenir compte de divers facteurs numériques pour aboutir à une décision qu'on souhaite acceptable.
En particulier, au lieu de considérer des valeurs précises comme un temps de ping de 12 ms ou 104 ms, on pourra considérer des valeurs « basses » ou « hautes » avec un certain degré d’activation.
Par exemple, si on considère qu’un temps de ping « court » correspond à 10 ms et qu’un temps de ping « long » correspond à 50 ms, alors un temps de ping observé de 20 ms correspond à un temps 75% court et 25% long. On obtient alors l’arbre de la figure 3b, dans laquelle la séparation sur le ping est entre une temps « court » et un temps « long », on parle alors d’arbre décisionnel flou.
Pour cela, un paramètre à valeurs continues pourra être « fuzzifié » à l’itération correspondante. Pour reprendre l’exemple des figures 2 et 3b, on peut observer les valeurs prises par le paramètre ping, et les regrouper sous forme de « paquets », en référence à la figure 4, et on obtient les bornes 15 ms et 37 ms. Toute valeur comprise entre les deux bornes sera partiellement considérée comme courte, et partiellement considérées comme longue.
Par ailleurs, le placement des modalités floues ainsi que leur nombre est avantageusement optimisé. Ainsi, l’étape (a) comprend préférentiellement l’optimisation dudit arbre décisionnel flou par mise en oeuvre d’un algorithme de recuit simulé. On pourra citer par exemple l’algorithme de Solis et Wets à ce titre.
L’algorithme de recuit simulé répond typiquement aux questions suivantes :
- quelle est la valeur faisant gagner le plus d’information (au sens de la théorie de Shannon), pour le placement des modalités « court » et « long » ?
- gagnerions-nous plus d’information en ajoutant une modalité « moyen » ?
A la fin de l’étape (a) on obtient ainsi un modèle d’identification, en particulier un arbre décisionnel, avantageusement un arbre décisionnel flou, et encore plus avantageusement un arbre décisionnel flou optimisé.
Si ledit modèle a été appris sur un serveur 3 distant, il peut alors être embarqué sur la mémoire 22 de la passerelle 2.
Identification
Le modèle appris peut alors être utilisé par la passerelle 2 pour identifier un équipement cible 1a « inconnu » se connectant.
Dans une étape (b), qui peut être mise en œuvre indépendamment de l’étape (a), le module de traitement de données 21 de la passerelle 2 du réseau 20 détermine des valeurs des paramètres de connexion dudit nuplet pour ledit équipement cible 1a. Il s’agit d’une étape « d’observation » dans laquelle on cherche à obtenir les valeurs du n-uplet pour l’équipement cible 1a à un instant donné. Comme expliqué il est tout à fait possible qu’à un autre instant d’autres valeurs auraient été obtenues, mais le modèle est tel que cela ne changera pas le résultat.
La détermination est mise en œuvre de façon classique et ne nécessite aucune application particulière sur les équipements 1a, 1b, 1c. Par exemple, le préfixe MAC ou le friendly name sont fournis directement, les analyses netscan ou netbeh, ou encore la trace DHCP peuvent être obtenues facilement par la passerelle 2.
Ensuite, dans une étape (c), le module de traitement de données 21 de la passerelle 2 réalise l’identification de l’équipement cible 1a en fonction desdites valeurs déterminées, au moyen du modèle d’identification appris.
Il s’agit de la simple application du modèle au n-uplet de valeurs déterminées. Par exemple, dans le cas d’un arbre décisionnel, il s’agit du parcours de celui-ci jusqu’à atteindre une feuille.
On note qu’en cas d’arbre décisionnel flou, l’identification peut être probabiliste, i.e. on n’obtient pas une seuille feuille mais un ensemble de feuilles chacune associée à la probabilité qu’elle soit la bonne.
Soit l’information probabiliste complète est proposée à l’utilisateur, soit on peut prévoir qu’au-delà d’un seuil (par exemple si une feuille est associée à une probabilité supérieure à 50%), elle est choisie automatiquement.
Pour revenir à l’exemple des figures 2, 3a, 3b, un équipement n’ayant pas le préfixe MAC D42122 et un ping de 25 ms sera identifié comme :
- livebox à 45%
- caméra à 55%
Les exemples présentés sont simplifiés, mais il est possible de mettre en œuvre une identification incluant la détermination d’une version d’un logiciel interne (firmware).
L’étape (c) peut alors comme expliqué comprend une notification du résultat de l’identification à un administrateur, la notification de la version du firmware, l’application automatique d’une action réseau, voire même le blocage de l’équipement cible 1a, si par exemple on en arrive à la conclusion qu’il présente un firmware dépassé avec des vulnérabilités.
Boucle d’apprentissage
De façon préférée, le procédé comprend une étape (d) d’ajout dudit équipement cible 1a à la base d’équipements de référence, et la mise à jour du modèle d’identification.
Cette mise à jour peut être locale, i.e. au niveau de la passerelle 2 : on ne regénère pas tout l’arbre, mais on fait par exemple varier certains nœuds. Alternativement, la mise à jour peut être globale (typiquement via envoi d’une notification au serveur 3) i.e. l’étape (a) est relancée. Cela peut être conditionné à l’accord de l’utilisateur de la passerelle 2, en particulier pour garantir que l’identification obtenue à l’étape (c) est confirmée.
A noter que cette mise à jour peut être faite régulière et pas nécessairement à chaque ajout.
Une telle boucle de feedback a de nombreux avantages :
- elle permet d’augmenter la taille de la base d’apprentissage et donc d’améliorer la qualité et l’efficacité du modèle d’identification ;
- elle permet également de raffiner les informations de la base d’apprentissage, en autorisant une évolution des valeurs de paramètres. Par exemple, à une époque un temps de ping de 50 ms était considéré comme court alors qu’aujourd’hui un tel temps est long. C’est là l’intérêt d’un recours à l’algorithme d’optimisation.
Passerelle
Selon un deuxième aspect, l’invention concerne une passerelle 2 d’un réseau 20 pour la mise en œuvre du procédé selon le premier aspect.
La passerelle 2 est apte sont à recevoir le modèle d’identification appris sur un serveur distant 3, soit à mettre en œuvre directement l’apprentissage du modèle, et comprend comme expliqué un module de traitement de données 21 configuré pour implémenter :
- Déterminer des valeurs des paramètres de connexion d’un n-uplet de paramètres de connexion pour un équipement cible 1a se connectant au réseau 20 ;
- identifier l’équipement cible 1a en fonction desdites valeurs déterminées, au moyen du modèle d’identification appris à partir d’une base de d’équipements de référence 1b, 1c déjà identifiés, chaque équipement de référence 1b, 1c étant défini par un n-uplet de valeurs desdits paramètres de connexion ;
- et le cas échéant, apprendre ledit modèle d’identification appris à partir de la base de d’équipements de référence 1b, 1c déjà identifiés (qui peut être reçue depuis le serveur distant 3 et/ou complétée à partir d’observations locales).
Dans le cas où l’apprentissage est mis en œuvre sur un serveur distant 3, est proposé l’ensemble de la passerelle 2 selon le deuxième aspect et du serveur 3, interconnectés par exemple via internet.
Produit programme d’ordinateur
Selon un troisième et un quatrième aspects, l’invention concerne un produit programme d’ordinateur comprenant des instructions de code pour 5 l’exécution (sur un module de traitement de donnés 21, en particulier celui de la passerelle 2 et/ou du serveur 3) d’un procédé d’identification d’un équipement cible 1a se connectant à un réseau 20 selon le premier aspect de l’invention, ainsi que des moyens de stockage lisibles par un équipement informatique (par exemple la mémoire 22 de la passerelle 2 et/ou du 10 serveur 3) sur lequel on trouve ce produit programme d’ordinateur.

Claims (11)

1. Procédé d’identification d’un équipement cible (1a) se connectant à un réseau (20), caractérisé en ce qu’il comprend la mise en œuvre d’étapes de :
(a) Apprentissage d’un modèle d’identification, à partir d’une base de d’équipements de référence (1b, 1c) déjà identifiés, chaque équipement de référence (1b, 1c) étant défini par un n-uplet de valeurs de paramètres de connexion ;
(b) Détermination par un module de traitement de données (21) d’une passerelle (2) du réseau (20) des valeurs des paramètres de connexion dudit n-uplet pour ledit équipement cible (1a) ;
(c) identification de l’équipement cible (1a) par ladite unité de traitement de données (21) de la passerelle (2) en fonction desdites valeurs déterminées, au moyen du modèle d’identification appris.
2. Procédé selon la revendication 1, dans lequel lesdits paramètres de connexion pour un équipement sont choisis parmi :
- Un préfixe d’adresse physique de l’équipement ;
- Un nom réseau de l’équipement ;
- une empreinte d’un scan de services réseaux publiés par l’équipement ;
- une empreinte d’une trace réseau laissée par l’équipement ;
- un temps de latence depuis l’équipement ;
- Une empreinte d’une analyse de requêtes réseau effectuées par l’équipement.
3. Procédé selon l’une des revendications 1 et 2, dans lequel ledit modèle d’indentification est un arbre décisionnel dans lequel les feuilles sont des identifiants d’équipements et les nœuds sont des conditions sur lesdits paramètres de connexion.
4. Procédé selon la revendication 3, dans lequel l’étape (a) comprend la mise en œuvre d’un algorithme dichotomique de sorte à construire itérativement ledit arbre décisionnel.
5. Procédé selon l’une des revendications 3 et 4, dans lequel au moins un paramètre de connexion est à valeur continue, ledit arbre décisionnel mettant en œuvre une logique floue.
6. Procédé selon les revendications 4 et 5 en combinaison, dans lequel l’étape (a) comprend l’optimisation dudit arbre décisionnel flou par mise en œuvre d’un algorithme de recuit simulé.
7. Procédé selon l’une des revendications 4 à 6, dans lequel l’identification de l’étape (c) est probabiliste.
8. Procédé selon l’une des revendications 1 à 7, comprenant une étape (d) d’ajout dudit équipement cible (1a) à la base d’équipements de référence (1b, 1c), et la mise à jour du modèle d’identification.
9. Passerelle (2) d’un réseau (20), comprenant un module de traitement de données (21), caractérisé en ce que le module de traitement de données (21) est configuré pour :
- Déterminer des valeurs des paramètres de connexion d’un n-uplet de paramètres de connexion pour un équipement cible (1a) se connectant au réseau (20) ;
- identifier l’équipement cible (1a) en fonction desdites valeurs déterminées, au moyen du modèle d’identification appris à partir d’une base de d’équipements de référence (1b, 1c) déjà identifiés, chaque équipement de référence (1b, 1c) étant défini par un n-uplet de valeurs desdits paramètres de connexion.
10. Produit programme d’ordinateur comprenant des instructions de code pour l’exécution d’un procédé selon l’une des revendications 1 à 9 d’identification d’un équipement cible (1a) se connectant à un réseau (20), lorsque le programme est exécuté sur un
5 ordinateur.
11. Moyen de stockage lisible par un équipement informatique sur lequel un produit programme d’ordinateur comprend des instructions de code pour l’exécution d’un procédé selon l’une des
10 revendications 1 à 9 d’identification d’un équipement cible (1a) se connectant à un réseau (20).
FR1858605A 2018-09-21 2018-09-21 Procede d'identification d'un equipement cible se connectant a un reseau Withdrawn FR3086429A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1858605A FR3086429A1 (fr) 2018-09-21 2018-09-21 Procede d'identification d'un equipement cible se connectant a un reseau

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1858605A FR3086429A1 (fr) 2018-09-21 2018-09-21 Procede d'identification d'un equipement cible se connectant a un reseau

Publications (1)

Publication Number Publication Date
FR3086429A1 true FR3086429A1 (fr) 2020-03-27

Family

ID=65685502

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1858605A Withdrawn FR3086429A1 (fr) 2018-09-21 2018-09-21 Procede d'identification d'un equipement cible se connectant a un reseau

Country Status (1)

Country Link
FR (1) FR3086429A1 (fr)

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BRUHADESHWAR BEZAWADA ET AL: "IoTSense: Behavioral Fingerprinting of IoT Devices", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 11 April 2018 (2018-04-11), XP080869645 *
MARCOS E CINTRA ET AL: "A Fuzzy Decision Tree Algorithm Based on C4.5", MATHWARE & SOFT COMPUTING MAGAZINE, 31 December 2013 (2013-12-31), pages 56 - 114, XP055603902, Retrieved from the Internet <URL:https://pdfs.semanticscholar.org/1815/fa9e92c8861c5e6fbdf3cbd576ce0305e42f.pdf> [retrieved on 20190709] *
YAIR MEIDAN ET AL: "Detection of Unauthorized IoT Devices Using Machine Learning Techniques", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 14 September 2017 (2017-09-14), XP080821047 *

Similar Documents

Publication Publication Date Title
US10817667B2 (en) Method and system for a chat box eco-system in a federated architecture
US8423483B2 (en) User-controllable learning of policies
EP1899887B1 (fr) Procede et systeme de reperage et de filtrage d&#39;informations multimedia sur un reseau
US10362137B2 (en) Hebbian learning-based recommendations for social networks
US20140241621A1 (en) Generating user insights from user images and other data
US20130183951A1 (en) Dynamic mobile application classification
US10182046B1 (en) Detecting a network crawler
Ammar et al. Network-protocol-based iot device identification
FR3079329A1 (fr) Procedes d&#39;apprentissage de parametres d&#39;un reseau de neurones a convolution, et de classification d&#39;une donnee d&#39;entree
CN112673386A (zh) 用于高效标签传播的基于集成的数据管理管道
WO2021152262A1 (fr) Procede de surveillance de donnees echangees sur un reseau et dispositif de detection d&#39;intrusions
FR3095880A1 (fr) Procédé de classification sécurisée d’une donnée d’entrée au moyen d’un réseau de neurones à convolution
EP2548337A2 (fr) Procédé d&#39;identification d&#39;un protocole à l&#39;origine d&#39;un flux de données
EP2767060B1 (fr) Passerelle, et procédé, programme d&#39;ordinateur et moyens de stockage correspondants
FR2902954A1 (fr) Systeme et procede de stockage d&#39;un inventaire des systemes et/ou services presents sur un reseau de communication
FR3086429A1 (fr) Procede d&#39;identification d&#39;un equipement cible se connectant a un reseau
US20190342173A1 (en) Automated network host grouping
US20190166399A1 (en) Method and Device for Identifying and Verifying the Illegitimate Use of Residential Set-Top Boxes
US10290022B1 (en) Targeting content based on user characteristics
FR3116979A1 (fr) Assistance pour l’aide à l’identification de dispositifs dysfonctionnels
EP3672209B1 (fr) Procédé d&#39;identification de noeud de communication
EP2145499B1 (fr) Procédé de fourniture de services personnalisés à un terminal par un réseau visité
FR3024008A1 (fr) Procede et dispositifs de controle parental
WO2024099827A1 (fr) Procédé de détection d&#39;anomalies sur des stations wi-fi.
FR3117297A1 (fr) Procédé d’aide à l’appairage d’un objet domestique connecté avec une unité centralisée

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20200327

ST Notification of lapse

Effective date: 20210506