FR3131672A1 - Procédé d’identification d’équipements présents dans un réseau domestique. - Google Patents

Procédé d’identification d’équipements présents dans un réseau domestique. Download PDF

Info

Publication number
FR3131672A1
FR3131672A1 FR2200032A FR2200032A FR3131672A1 FR 3131672 A1 FR3131672 A1 FR 3131672A1 FR 2200032 A FR2200032 A FR 2200032A FR 2200032 A FR2200032 A FR 2200032A FR 3131672 A1 FR3131672 A1 FR 3131672A1
Authority
FR
France
Prior art keywords
equipment
data
network
identification data
digital
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.)
Pending
Application number
FR2200032A
Other languages
English (en)
Inventor
Romain Picard
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.)
Softathome SA
Original Assignee
Softathome 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 Softathome SA filed Critical Softathome SA
Priority to FR2200032A priority Critical patent/FR3131672A1/fr
Priority to PCT/EP2023/050129 priority patent/WO2023131627A1/fr
Publication of FR3131672A1 publication Critical patent/FR3131672A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0442Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • 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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • H04W12/122Counter-measures against attacks; Protection against rogue devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/71Hardware identity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Image Analysis (AREA)

Abstract

L’invention concerne un procédé d’identification d’un premier équipement présent dans un réseau de communication, ce procédé étant mis en œuvre par une unité de traitement et comprenant les étapes suivantes : - réception de données d’identification en provenance dudit premier équipement, - utilisation d’un modèle statistique à base de réseau de neurones pour calculer une empreinte numérique du premier équipement à partir des données d’identification, - détermination successive de distances entre l’empreinte numérique calculée et respectivement des empreintes numériques pré-enregistrées dans une base de référence ; ces empreintes numériques pré-enregistrées étant des empreintes numériques d’équipements connus, - identification du premier équipement comme étant un équipement connu lorsque la distance entre l’empreinte numérique du premier équipement et l’empreinte numérique pré-enregistrée dudit équipement connu est inférieure à un seuil prédéterminé. Figure pour l’abrégé : Fig. 2

Description

Procédé d’identification d’équipements présents dans un réseau domestique.
La présente invention se rapporte à un procédé d’identification d’un premier équipement présent dans un réseau de communication.
D’une façon générale, l'identification d'équipements dans un réseau domestique se base sur des solutions d'apprentissage automatique de type classification multi-classe. Ces solutions se basent toutes sur des environnements composés de vingt à trente équipements différents.
L'environnement d'un opérateur télécom est très différent. Des millions d'utilisateurs utilisent plusieurs milliers de modèles d'équipements. De plus parmi ces équipements certains sont très populaires et beaucoup plus présents que d’autres (plusieurs centaines de milliers de fois plus). Le fait d'avoir plusieurs milliers de classes et une distribution de modèles très déséquilibrée rend l'approche de classification multi-classe inappropriée pour des réseaux de plusieurs milliers d’équipements.
On connaît le document US20200382376A1 décrit un procédé de classification d’équipement en classant un équipement dans une première catégorie selon une première technique de classification pour une durée prédéterminée. Une deuxième technique de classification est appliquée si l’équipement n’a pas changé de catégorie durant la durée prédéterminée.
On connaît le document US10652116B2 décrit un procédé de classification d’équipements. Des informations variées sont utilisées pour permettre la classification.
La présente invention a pour but d’identifier un très grand nombre d'équipements.
Un autre but de l’invention est de concevoir un nouveau procédé d’identification apte à identifier aisément de nombreux nouveaux équipements.
L’invention a encore pour but un nouveau procédé d’identification apte à reconnaitre de façon fiable des équipements peu populaires.
On atteint au moins l’un des objectifs avec un procédé d’identification d’un premier équipement présent dans un réseau de communication, notamment un réseau domestique, ce procédé étant mis en œuvre par une unité de traitement et comprenant les étapes suivantes :
- réception de données d’identification en provenance dudit premier équipement,
- utilisation d’un modèle statistique à base de réseau de neurones pour calculer une empreinte numérique du premier équipement à partir des données d’identification,
- détermination successive de distances entre l’empreinte numérique calculée et respectivement des empreintes numériques pré-enregistrées dans une base de référence ; ces empreintes numériques pré-enregistrées étant des empreintes numériques d’équipements connus,
- identification du premier équipement comme étant un équipement connu lorsque la distance entre l’empreinte numérique du premier équipement et l’empreinte numérique pré-enregistrée dudit équipement connu est inférieure à un seuil prédéterminé.
Avec le procédé selon l’invention, on utilise une nouvelle approche d’empreinte numérique plutôt qu’une classification comme dans l’art antérieur. L’invention permet de reconnaitre notamment des équipements qui n'étaient pas connus lors de l’entrainement du modèle.
La distance de l’équipement à identifier peut avantageusement être calculée par rapport à toutes les empreintes de la base de référence, avec notamment un algorithme de type KNN (K plus proches voisins). Ceci permet de savoir effectivement quel équipement dans la base de référence est le plus similaire à l'équipement à identifier.
Le modèle statistique est issu de la technologie d’apprentissage automatique (« machine learning ») à base de réseau de neurones. Les données d’entrée sont utilisées pour prédire une empreint numérique. Une recherche est ensuite initiée dans la base de référence pour trouver une empreinte numérique pré-enregistrée qui se rapproche ou qui ressemble le plus à l’empreinte venant d’être prédit ou déterminé.
Avec l’invention, on utilise l’apprentissage automatique au lieu d’un simple algorithme de création de signature. L’utilisation d’apprentissage automatique est moins chronophage.
Identifier un équipement consiste à identifier notamment le système d’exploitation et le type d’équipement.
De manière préférentielle, les informations suivantes peuvent être identifiées pour chaque équipement :
- le type d'équipement, par exemple un ordinateur, une caméra, un téléviseur...
- le vendeur de l'équipement, par exemple « apple »,…
- la ligne de produit de l’équipement, par exemple « iphone »,…
- le modèle de l'équipement, par exemple un « iphone 13 pro max »,…
- le système d'exploitation utilisé par l'équipement, par exemple « iOS »,…
- la version du système d'exploitation utilisé par l'équipement, par exemple « 15.1.0 »,…
L’invention permet de détecter un très grand nombre de types d’équipements en utilisant l’apprentissage automatique pour générer une empreinte numérique et en la comparant à des empreintes numériques contenues dans une base de référence.
L’utilisation de l’apprentissage automatique et de la base de référence permet d’avoir un nombre limité d’empreintes numériques dans la base de référence. En effet, la comparaison n’est pas faite obligatoirement à l’identique mais on cherche une empreinte numérique qui se rapproche le plus. Donc il n’est pas nécessaire de répertorier avec exactitude toutes les empreintes de tous les équipements.
On peut ainsi avoir une base de référence non exhaustive.
Dans le procédé selon l’invention, si l’équipement n’est pas reconnu, un processus manuel ou automatique peut être mis en place pour récupérer un ensemble de données de l’équipement en cours d’identification. Cela peut se faire notamment au moyen d’une application communiquant avec l’équipement. L’empreinte numérique de cet équipement peut ensuite être enregistrée dans la base de référence.
Selon une caractéristique avantageuse de l’invention, les empreintes numériques pré-enregistrées peuvent être des vecteurs obtenus à partir de données d’identification des équipements connus.
En complément de ce qui précède, chaque vecteur peut être déterminé à partir :
- d’une part de données d’identification contenant des informations textuelles sur lesquelles est appliqué un traitement au moyen d’un sous-ensemble du réseau de neurones à base de neurones récurrents pour déterminer un premier sous-vecteur,
- d’une autre part de données d’identification contenant des informations catégorielles sur lesquelles est appliqué un encodage ordinal (« ordinal encoding » en anglais) pour déterminer un code unique par catégorie, puis un enrobage (« embedding » en anglais) pour associer chaque catégorie à un second sous-vecteur,
- les premier et second sous-vecteurs sont ensuite combinés au moyen d’au moins une couche entièrement connectée (« dense layers » en anglais) pour former ledit vecteur.
En particulier, chaque catégorie est transformée en un seul sous-vecteur.
Selon un mode de réalisation de l’invention, le sous-ensemble du réseau de neurones à base de neurones récurrents peut être un réseau récurent de type LSTM (« Long Short Term Memory ») ou GRU (« Gated Recurrent Unit »). D’autres types d’approches peuvent être envisagés, comme des couches à base d'attention, de type transformateurs (« transformers » en anglais).
Selon un mode de mise en œuvre de l’invention, pour un équipement donné, le modèle statistique peut comprendre une fonction de coût par triplet (« Triplet loss » en anglais) permettant de générer un vecteur plus proche des vecteurs d’équipements identiques audit équipement donné et plus éloigné des vecteurs d’équipements différents audit équipement donné.
Une telle mise en œuvre consiste à analyser non seulement les vraisemblances mais également les différences.
Selon un autre mode de mise en œuvre de l’invention, pour un équipement donné, le modèle statistique peut comprendre une fonction de coût par perte de contraste (« Contrastive loss » en anglais) permettant de générer un vecteur plus proche des vecteurs d’équipements identiques audit équipement donné et plus éloigné des vecteurs d’équipements différents audit équipement donné.
Selon l’invention, les empreintes numériques pré-enregistrées peuvent être prédéterminées par le réseau de neurones à partir des données suivantes des équipements connus :
- des identifiants du protocole DHCP comprenant le nom d’hôte (« Hostname »), les options, la classe du fournisseur (« vendor class »), la liste des options dans un paquet requête,
- les trois premiers octets de l’adresse MAC (OUI),
- des noms des services des annonces mDNS , par exemple des champs ptrs des annonces mDNS,
- des données WiFi,
- l’empreinte digitale (« Fingerprints ») TLS client et serveur, par exemple au format JA3,
- la liste des noms de domaines contactés,
- le nombre de noms de domaines différents contactés,
- la liste des ports réseau utilisés (TCP et UDP),
- la liste des ports réseau ouverts (TCP et UDP),
- des informations temporelles de communication réseau comprenant la fréquence de connexion au wifi et au serveur DHCP, et/ou la fréquence d’accès réseau par nom de domaine, et
- le type de connexion réseau : wifi ou ethernet.
En complément de ce qui précède, les données wifi peuvent comprendre :
- les capacités HT/VHT/HE,
- les trois premiers octets présents dans l’étiquette spécifique du fournisseur,
- le nombre d’antennes,
- la liste de MCS (« Modulation and Coding Scheme ») supportés,
- la bande passante maximum supportée,
- les capacités des bandes UNII (« Unlicensed National Information Infrastructure »),
- flux spatial : rx/tx maximum supporté,
- les standards supportés,
- les standards radio supportés.
Selon un mode de mise en œuvre avantageux de l’invention, les données d’identification comprennent au moins l’une des données suivantes :
- un agent utilisateur dans un protocole HTTP ou QUIC,
- des identifiants du protocole DHCP comprenant le nom d’hôte (« Hostname »), la classe du fournisseur (« vendor class »), la classe de l’utilisateur (« user class ») et l’information spécifique du fournisseur (« vendor specific information »),
- des noms des services des annonces mDNS, par exemple « _printer._tcp », et
- des données relatives au protocole UPnP comprenant : fabricant, nom familier, modèle, description, numéro de modèle.
Avec au moins l’une de ces données, il est possible d’identifier un équipement.
Selon un mode de réalisation préféré de l’invention, avant d’utiliser le modèle statistique, les données d’identification peuvent d’abord alimenter un système expert apte à identifier l’équipement ou à transmettre les données d’identification vers le modèle statistique si l’identification échoue ; le système expert comprenant un algorithme de reconnaissance d’équipement à partir de règles à base d’expression régulières.
Avec un tel mode de réalisation, la présente invention constitue une solution hybride composée d'un système expert et d'une solution d'apprentissage automatique. On réalise un premier test avec le système expert, si l’équipement est identifié, l’algorithme s’arrête, sinon les données d’identification sont envoyées vers le modèle statistique pour identification. Si le modèle statistique ne parvient pas à identifier l’équipement, on peut prévoir une intervention humaine, ou pas, pour élaborer une empreinte numérique de cet équipement et l’enregistrer dans la base de référence.
Le système expert est composé de règles à base d'expressions régulières pour reconnaitre certains schémas caractéristiques. Ces règles utilisent les données d’identification pour identifier un équipement.
Avantageusement, la base de référence peut comprendre des empreintes numériques obtenues à partir de données issues de collectes d’information et des empreintes obtenues à partir de données synthétisées à partir d’un générateur.
Les données collectées proviennent de récupérations d’informations d’équipements répertoriés ou sur des requêtes qui ont été faites. Autrement, les données issues de la collecte consistent en un échantillonnage des requêtes qui ont été faite. Cet échantillonnage est fait de manière à avoir une quantité suffisante d'exemples pour chaque équipement à reconnaitre. Il est important dans cet échantillonnage d'équilibrer le nombre d'échantillons pour chaque type d'équipement.
Pour les équipements qui sont peu présents, le générateur de données permet de générer un nombre suffisant d'exemples à ajouter dans la base de référence.
Le générateur utilisé pour la base de référence peut aussi être utilisé lors de la phase d'entrainement du modèle. Il est utilisé dans ce cas pour rééquilibrer la distribution des données. L'équilibre de la distribution des classes lors de l'entrainement d'un modèle est primordial pour ses bonnes performances ensuite.
Ainsi, la fiabilité de la prédiction du système dépend du nombre et du type d’informations qui lui sont fournies en entrée. Pour ce faire, on équilibre au maximum les données utilisées :
- en supprimant des données d’équipements les plus populaires, et
- en utilisant des données synthétiques pour les équipements plus rares.
La présente invention concerne également un produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre le procédé décrit ci-dessus.
Il est également prévu un système de traitement de données comprenant un processeur adapté au procédé décrit ci-dessus.
D’autres avantages et caractéristiques de l’invention apparaîtront à l’examen de la description détaillée d’un mode de mise en œuvre nullement limitatif, et des dessins annexés, sur lesquels :
La est une vue globale schématique d’un système opérateur ;
La est une vue schématique de différentes étapes d’identification d’un équipement selon l’invention ; et
La est une vue schématique d’un exemple d’architecture d’un réseau de neurone selon l’invention.
Les modes de réalisation qui seront décrits dans la suite ne sont nullement limitatifs ; on pourra notamment mettre en œuvre des variantes de l’invention ne comprenant qu’une sélection de caractéristiques décrites par la suite isolées des autres caractéristiques décrites, si cette sélection de caractéristiques est suffisante pour conférer un avantage technique ou pour différencier l’invention par rapport à l’état de la technique antérieur. Cette sélection comprend au moins une caractéristique de préférence fonctionnelle sans détails structurels, ou avec seulement une partie des détails structurels si cette partie uniquement est suffisante pour conférer un avantage technique ou pour différencier l’invention par rapport à l’état de la technique antérieur.
On va tout d’abord décrire, en référence à la , un réseau local domestique sans fil 100. Le centre du réseau est une passerelle domestique 1 distribuant une connexion internet aux différentes stations 2 connectées dans le domicile. La passerelle domestique 1 est placée dans le domicile, dans le salon par exemple. La passerelle domestique 1 est le point central de tous les flux : images, musique, vidéos etc. Chaque station 2 est reliée en WIFI ou par un câble Ethernet à la passerelle. La passerelle domestique 1 est connectée, d’un coté au réseau local 4, en anglais « Local Area Network » ou LAN du domicile et de l’autre côté, au réseau externe 5, en anglais « Wide Area Network » ou WAN. Le réseau local 4 désigne toute installation informatique interconnecté ou station 2 au sein du domicile de l’utilisateur comme par exemple, une télévision, une tablette, un téléphone portable ou encore une console de jeux. Un serveur distant 3, tel un serveur d’un opérateur télécom, est connecté au réseau local 4 via le réseau externe 5. La passerelle domestique 1 est par exemple un appareil dudit opérateur télécom.
La présente invention a pour objet d’identifier tout équipement se connectant aux appareils de l’opérateur télécom. Pour se faire, un algorithme selon l’invention est mis en œuvre dans le serveur distant 3.
Le contexte du réseau local domestique est à titre d’exemple. Le procédé décrit par la présente invention est applicable à d’autres types de réseaux de communication sans fil, par exemple à un réseau universitaire, aux réseaux d’entreprises, etc.
La est une vue globale d’un processus selon l’invention.
Un équipement tel un téléphone portable 6 se connecte au serveur 3. Ce dernier va mettre en œuvre le procédé selon l’invention pour identifier ce téléphone portable, c’est-à-dire identifier les éléments suivants :
- le type d'équipement, par exemple un ordinateur, une caméra, un téléviseur...
- le vendeur de l'équipement,
- la ligne de produit de l’équipement,
- le modèle de l'équipement,
- le système d'exploitation utilisé par l'équipement, et
- la version du système d'exploitation utilisé par l'équipement.
Le minimum pour identifier un équipement est par exemple de trouver son système d’exploitation et son type d’équipement.
Une fois l’équipement identifié, le résultat obtenu peut être :
- affiché sur un dispositif d’affichage soit pour le propriétaire de l'équipement, soit pour un service de support client afin d'aider à résoudre des problèmes,
- utilisé dans d'autres services tels que la qualité de service (adapter la configuration réseau à chaque équipement), la sécurité informatique (détecter qu'un équipement nécessite une mise à jour logicielle, isoler un équipement...), la sécurité physique (détecter un comportement anormal signe d'un possible cambriolage)...
Le résultat obtenu est donc une donnée qui peut être transmise vers un autre dispositif de traitement.
Le serveur 3 comporte des composants matériels et logiciels pour la mise en œuvre de l’invention. Mais ces composants peuvent être intégrés dans un seul appareil ou répartis sur plusieurs appareils proches ou distants.
Le serveur 3 comprend un système expert 7, un modèle statistique 8 à base de réseau de neurones, un algorithme de recherche 9, une base de référence 10 et des sorties 11 et 12.
Lorsque le téléphone 6 se connecte au réseau de l’opérateur télécom, des données d’identification de ce téléphone sont transmises vers le serveur 3.
Le système expert 7 applique ses règles.
Si le téléphone 6 est déjà connu du système expert, alors ce téléphone est identifié en 11.
Si le téléphone 6 se connecte pour la première fois, le système expert en déduit que ce téléphone n’est pas connu. Les données d’identification sont ensuite envoyées vers le modèle statistique 8 qui génère une empreinte numérique 13.
On utilise l’algorithme de recherche knn 9 pour rechercher dans la base de référence 10 une empreinte numérique pré-enregistrée qui serait proche de l’empreinte numérique 13. On teste une distance entre l’empreinte numérique 13 et chaque empreinte numérique pré-enregistrée. Lorsque cette distance est inférieure à un seuil prédéterminé, alors l’empreinte numérique 13 est considéré comme étant l’empreinte numérique pré-enregistrée permettant de passer en dessous du seuil. Dans ce cas, on confirme l’identification en 11. La référence 11 peut être un dispositif de sortie visuel, sonore, une écriture dans une base de donnée, ou autre. Par exemple, une information peut être envoyé vers l’équipement reconnu.
Lorsque le téléphone est identifié, des services peuvent être débloqués ou des informations échangées entre l’équipement reconnu et le serveur 3 ou tout autre appareil.
Si le téléphone n’est pas reconnu dans la base de référence, on place l’empreinte numérique 13 dans une base de prédictions 10bis. Une intervention humaine peut ensuite permettre d’identifier manuellement l’équipement et replacer sa signature dans la base de référence en l’associant au téléphone 6.
En effet, lorsqu’un équipement n'est pas reconnu, son empreinte numérique n'est mise dans la base de référence qu’après une identification manuelle de l’équipement. En attendant les données associées à cet équipement sont sauvegardées dans une seconde base de données dite base de prédictions 10bis comprenant la liste des prédictions déjà réalisées.
La présente invention utilise avantageusement la technique d’apprentissage automatique (« machine learning » en anglais) non pas pour prédire et identifier l’appareil, mais pour générer une empreinte numérique. Cela résulte en un gain de temps car on utilise une base de données pour recherche rapidement une empreinte numérique proche. Etant donné le nombre élevé d’appareils à identifier pour un opérateur donné, l’utilisation d’apprentissage automatique pour directement identifier l’appareil serait trop coûteux en temps de calcul.
Le modèle statistique peut être mis à jour ainsi que la base de référence en fonction des empreintes reçues du même appareil. Une empreinte d’un même appareil peut changer par exemple suite à des mises à jour de l’équipement.
Toutes les demandes d’identification sont par exemple sauvegardées dans la base de prédictions 10bis pour établir des données statistiques et améliorer la base de référence et le réseau de neurones.
Le réseau de neurones utilise les informations suivantes :
- des identifiants du protocole DHCP comprenant le nom d’hôte (« Hostname »), les options, la classe du fournisseur (« vendor class »), la liste des options dans un paquet requête,
- les trois premiers octets de l’adresse MAC (OUI),
- des noms des services des annonces mDNS,
- des données WiFi:
- les capacités HT/VHT/HE,
- les trois premiers octets présents dans l’étiquette spécifique du fournisseur,
- le nombre d’antennes,
- la liste de MCS (« Modulation and Coding Scheme ») supportés,
- la bande passante maximum supportée,
- les capacités des bandes UNII (« Unlicensed National Information Infrastructure »),
- flux spatial : rx/tx maximum supporté,
- les standards supportés,
- les standards radio supportés,
- l’empreinte digitale (« Fingerprints ») TLS client et serveur,
- la liste des noms de domaines contactés,
- le nombre de noms de domaines différents contactés,
- la liste des ports réseau utilisés (TCP et UDP),
- la liste des ports réseau ouverts (TCP et UDP),
- des informations temporelles de communication réseau comprenant la fréquence de connexion au wifi et au serveur DHCP, et/ou la fréquence d’accès réseau par nom de domaine, et
- le type de connexion réseau : wifi ou ethernet.
D’autres sources d’informations peuvent être ajoutées afin d’améliorer le modèle statistique.
Le réseau de neurones prend en entrée les informations listées ci-dessus, et les convertit en un vecteur. Les informations en entrée sont utilisées soit directement, soit encodées.
La est une vue schématique d’une architecture simplifiée d’un réseau de neurones selon l’invention.
Les informations textuelles 14 telles que le « hostname » sont utilisées telles quelles, et traitées par un sous-ensemble 15 du réseau de neurones à base de neurones “récurrents”, par exemple de type LSTM, ou GRU. D'autres approches permettant de traiter du texte, telles que « attention », peuvent être utilisées pour ce type de données. Un premier sous-vecteur est constitué. Le sous-ensemble 15 permet d'identifier des motifs (« patterns » en anglais) caractéristiques à certains équipements par exemple à partir de leur nom "réseau" (hostname dhcp, nom mdns, friendly name upnp). Par exemple, lors de l'apprentissage, le modèle apprendra que le texte "iphone"® est commun a la ligne de produit des iphone®. D'autre part il apprendra à ignorer des motifs qui sont courants dans les noms mais non significatifs pour l'identification de l'équipement. Par exemple dans un nom réseau comme "iphone-de-romain", le modèle aura appris que la partie "romain" n'est pas significative car présente dans plusieurs équipements différents.
Les informations catégorielles 16, par exemple le « fingerprint TLS », sont d’abord encodées par encodage ordinal 17 sous forme d’un nombre unique par catégorie. Ces catégories sont ensuite utilisées dans une couche d’enrobage “embeddings” 18 qui permet d’associer chaque catégorie a un second sous-vecteur qui sera appris lors de l’apprentissage du modèle statistique.
Le premier sous-vecteur et le second sous-vecteur alimentent plusieurs couches entièrement connectées 19 (« dense layers ») pour combiner des sous-vecteurs et former ledit vecteur 20.
Le réseau de neurones est entrainé avec comme objectif de générer des vecteurs proches pour des équipements identiques, et éloignés pour des équipements différents. Ceci peut être fait de différentes manières telles que par exemple en utilisant une fonction de coût par triplet (« Triplet loss » en anglais) ou une fonction de coût par perte de contraste (« Contrastive loss » ou « contrastive learning » en anglais).
Le coût par triplet indique au modèle quels sont les exemples identiques et lesquels sont différents. Cet apprentissage se fait par triplets d’exemples : deux exemples de la même classe et un d’une autre classe. Le modèle est alors explicitement entrainé pour séparer fortement les exemples différents et regrouper au maximum les exemples similaires.
Le « contrastive learning » ne nécessite pas d’exemples différents mais uniquement des exemples de la même classe. Le modèle est alors entrainé pour regrouper les exemples similaires. La séparation des exemples différents se fait de manière implicite.
La base de référence est composée de deux sources d'informations différentes :
- des données issues de la collecte d'information sur des requêtes qui ont été précédemment faites,
- de données synthétisées à partir d'un générateur.
Les données issues de la collecte consistent en un échantillonnage des requêtes qui ont été faites. Cet échantillonnage est fait de manière à avoir une quantité suffisante d'exemples pour chaque équipement à reconnaitre. Il est préférable dans cet échantillonnage d'équilibrer le nombre d'échantillons pour chaque type d'équipement.
Pour les équipements qui sont peu présents, le générateur de données permet de générer un nombre suffisant d'exemples à ajouter dans la base de référence.
Le générateur utilisé pour la base de référence peut aussi être utilisé lors de la phase d'entrainement du modèle. Il est utilisé dans ce cas pour rééquilibrer la distribution des données. L'équilibre de la distribution des classes lors de l'entrainement d'un modèle permet d’obtenir de bonnes performances.
D’une façon générale, la présente invention comprend deux étapes :
- une première étape consistant en un modèle statistique à base de réseau de neurones qui calcule une empreinte numérique de l'équipement à reconnaitre, et
- une seconde étape consistant à retrouver cette empreinte dans une base de données d'équipements connus. Cette recherche est faite en calculant la distance entre l'empreinte de l'équipement à rechercher et celle des équipements connus. Si un équipement connu est à une distance suffisamment faible de l'équipement à reconnaitre, alors on considère qu'il y a une correspondance.
Bien entendu, l’invention n’est pas limitée aux exemples qui viennent d’être décrits. De nombreuses modifications peuvent être apportées à ces exemples sans sortir du cadre de la présente invention telle que décrite.

Claims (13)

  1. Procédé d’identification d’un premier équipement présent dans un réseau de communication, ce procédé étant mis en œuvre par une unité de traitement et comprenant les étapes suivantes :
    - réception de données d’identification en provenance dudit premier équipement,
    - utilisation d’un modèle statistique à base de réseau de neurones pour calculer une empreinte numérique du premier équipement à partir des données d’identification,
    - détermination successive de distances entre l’empreinte numérique calculée et respectivement des empreintes numériques pré-enregistrées dans une base de référence ; ces empreintes numériques pré-enregistrées étant des empreintes numériques d’équipements connus,
    - identification du premier équipement comme étant un équipement connu lorsque la distance entre l’empreinte numérique du premier équipement et l’empreinte numérique pré-enregistrée dudit équipement connu est inférieure à un seuil prédéterminé.
  2. Procédé selon la revendication 1, caractérisé en ce que les empreintes numériques pré-enregistrées sont des vecteurs obtenus à partir de données d’identification des équipements connus.
  3. Procédé selon la revendication 2, caractérisé en ce que chaque vecteur est déterminé à partir :
    - d’une part de données d’identification contenant des informations textuelles sur lesquelles est appliqué un traitement au moyen d’un sous-ensemble du réseau de neurones à base de neurones récurrents pour déterminer un premier sous-vecteur,
    - d’une autre part de données d’identification contenant des informations catégorielles sur lesquelles est appliqué un encodage ordinal (« ordinal encoding ») pour déterminer un code unique par catégorie, puis un enrobage (« embedding ») pour associer chaque catégorie à un second sous-vecteur,
    - les premier et second sous-vecteurs sont ensuite combinés au moyen d’au moins une couche entièrement connectée (« dense layers ») pour former ledit vecteur.
  4. Procédé selon la revendication 3, caractérisé en ce que le sous-ensemble du réseau de neurones à base de neurones récurrents est un réseau récurent de type LSTM (« Long Short Term Memory ») ou GRU (« Gated Recurrent Unit »).
  5. Procédé selon la revendication 3 ou 4, caractérisé en ce que, pour un équipement donné, le modèle statistique comprend une fonction de coût par triplet (« Triplet loss » en anglais) permettant de générer un vecteur plus proche des vecteurs d’équipements identiques audit équipement donné et plus éloigné des vecteurs d’équipements différents audit équipement donné.
  6. Procédé selon la revendication 3 ou 4, caractérisé en ce que, pour un équipement donné, le modèle statistique comprend une fonction de coût par perte de contraste (« Contrastive loss » en anglais) permettant de générer un vecteur plus proche des vecteurs d’équipements identiques audit équipement donné et plus éloigné des vecteurs d’équipements différents audit équipement donné.
  7. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que les empreintes numériques pré-enregistrées sont prédéterminées par le réseau de neurones à partir des données suivantes des équipements connus :
    - des identifiants du protocole DHCP comprenant le nom d’hôte (« Hostname »), les options, la classe du fournisseur (« vendor class »), la liste des options dans un paquet requête,
    - les trois premiers octets de l’adresse MAC (OUI),
    - des noms des services des annonces mDNS,
    - des données WiFi,
    - l’empreinte digitale (« Fingerprints ») TLS client et serveur,
    - la liste des noms de domaines contactés,
    - le nombre de noms de domaines différents contactés,
    - la liste des ports réseau utilisés (TCP et UDP),
    - la liste des ports réseau ouverts (TCP et UDP),
    - des informations temporelles de communication réseau comprenant la fréquence de connexion au wifi et au serveur DHCP, et/ou la fréquence d’accès réseau par nom de domaine, et
    - le type de connexion réseau : wifi ou ethernet.
  8. Procédé selon la revendication 7, caractérisé en ce que les données wifi comprennent :
    - les capacités HT/VHT/HE,
    - les trois premiers octets présents dans l’étiquette spécifique du fournisseur,
    - le nombre d’antennes,
    - la liste de MCS (« Modulation and Coding Scheme ») supportés,
    - la bande passante maximum supportée,
    - les capacités des bandes UNII (« Unlicensed National Information Infrastructure »),
    - flux spatial : rx/tx maximum supporté,
    - les standards supportés,
    - les standards radio supportés.
  9. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que les données d’identification comprennent au moins l’une des données suivantes :
    - un agent utilisateur dans un protocole HTTP ou QUIC,
    - des identifiants du protocole DHCP comprenant le nom d’hôte (« Hostname »), la classe du fournisseur (« vendor class »), la classe de l’utilisateur (« user class ») et l’information spécifique du fournisseur (« vendor specific information »),
    - des noms des services des annonces mDNS, et
    - des données relatives au protocole UPnP comprenant : fabricant, nom familier, modèle, description, numéro de modèle.
  10. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce qu’avant d’utiliser le modèle statistique, les données d’identification alimentent d’abord un système expert apte à identifier l’équipement ou à transmettre les données d’identification vers le modèle statistique si l’identification échoue ; le système expert comprenant un algorithme de reconnaissance d’équipement à partir de règles à base d’expression régulières.
  11. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que la base de référence comprend des empreintes numériques obtenues à partir de données issues de collectes d’information et des empreintes numériques obtenues à partir de données synthétisées à partir d’un générateur.
  12. Produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre le procédé selon l’une quelconque des revendications précédentes.
  13. Système de traitement de données comprenant un processeur adapté au procédé selon l’une quelconque des revendications 1 à 11.
FR2200032A 2022-01-04 2022-01-04 Procédé d’identification d’équipements présents dans un réseau domestique. Pending FR3131672A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR2200032A FR3131672A1 (fr) 2022-01-04 2022-01-04 Procédé d’identification d’équipements présents dans un réseau domestique.
PCT/EP2023/050129 WO2023131627A1 (fr) 2022-01-04 2023-01-04 Procédé d'identification d'équipements présents dans un réseau domestique

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2200032 2022-01-04
FR2200032A FR3131672A1 (fr) 2022-01-04 2022-01-04 Procédé d’identification d’équipements présents dans un réseau domestique.

Publications (1)

Publication Number Publication Date
FR3131672A1 true FR3131672A1 (fr) 2023-07-07

Family

ID=81346334

Family Applications (1)

Application Number Title Priority Date Filing Date
FR2200032A Pending FR3131672A1 (fr) 2022-01-04 2022-01-04 Procédé d’identification d’équipements présents dans un réseau domestique.

Country Status (2)

Country Link
FR (1) FR3131672A1 (fr)
WO (1) WO2023131627A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10652116B2 (en) 2016-12-06 2020-05-12 Forescout Technologies, Inc. Device classification
WO2020206620A1 (fr) * 2019-04-09 2020-10-15 Orange Procédés et appareil pour discriminer des dispositifs d'internet des objets sans fil authentiques
US20200382376A1 (en) 2019-05-29 2020-12-03 Cisco Technology, Inc. Progressive refinement of device classifications using colored device and policy trees
US20210326644A1 (en) * 2020-04-17 2021-10-21 Applied Engineering Concepts, Inc. Physical Layer Authentication of Electronic Communication Networks
CN113762968A (zh) * 2021-04-23 2021-12-07 腾讯科技(深圳)有限公司 一种交易设备的认证方法、相关装置、设备以及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10652116B2 (en) 2016-12-06 2020-05-12 Forescout Technologies, Inc. Device classification
WO2020206620A1 (fr) * 2019-04-09 2020-10-15 Orange Procédés et appareil pour discriminer des dispositifs d'internet des objets sans fil authentiques
US20200382376A1 (en) 2019-05-29 2020-12-03 Cisco Technology, Inc. Progressive refinement of device classifications using colored device and policy trees
US20210326644A1 (en) * 2020-04-17 2021-10-21 Applied Engineering Concepts, Inc. Physical Layer Authentication of Electronic Communication Networks
CN113762968A (zh) * 2021-04-23 2021-12-07 腾讯科技(深圳)有限公司 一种交易设备的认证方法、相关装置、设备以及存储介质

Non-Patent Citations (1)

* 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 *

Also Published As

Publication number Publication date
WO2023131627A1 (fr) 2023-07-13

Similar Documents

Publication Publication Date Title
US9628208B2 (en) System, method and program product for customizing presentation of television content to a specific viewer and location
US10977565B2 (en) Bridging heterogeneous domains with parallel transport and sparse coding for machine learning models
Ammar et al. Network-protocol-based iot device identification
FR2879389A1 (fr) Procede et mecanisme pour identifier un commutateur non gere dans un reseau
FR3079329A1 (fr) Procedes d'apprentissage de parametres d'un reseau de neurones a convolution, et de classification d'une donnee d'entree
US20190197011A1 (en) Network-based machine learning model discovery and benchmarking
US20210325201A1 (en) Methods and systems for managing communication sessions
EP2537286B1 (fr) Procédé d'authentification biométrique, système d'authentification et programme correspondant
WO2010006914A1 (fr) Procédé d'authentification d'un utilisateur d'un service sur terminal mobile
FR3131672A1 (fr) Procédé d’identification d’équipements présents dans un réseau domestique.
CN106375378B (zh) 一种基于局域网客户端服务器结构的应用部署方法及系统
US10715865B2 (en) Method and device for identifying and verifying the illegitimate use of residential set-top boxes
CN109032683B (zh) 配置数据处理方法及装置
EP3714588A1 (fr) Procede de gestion a distance d'un dispositif connecte a une passerelle residentielle
EP3672209B1 (fr) Procédé d'identification de noeud de communication
EP1554687B1 (fr) SystEme associatif flou de description d objets multimEdia
FR2914089A1 (fr) Appareil electronique communicant, systemes et procedes utilisant un tel appareil.
CN107248990A (zh) 一种远程环境音的智能共享方法及其系统
EP2145499B1 (fr) Procédé de fourniture de services personnalisés à un terminal par un réseau visité
WO2022112494A1 (fr) Procédé et installation pour contrôler et/ou configurer des caméras ip installées en réseau
FR3135341A1 (fr) Procédé et installation pour un traitement de données basé sur de l’intelligence artificielle
JUNKLEWITZ et al. Clustering and Unsupervised Classification in Forensics
FR2866510A1 (fr) Procede et systeme d'identification et de configuration d'appareils dans un reseau de communications sans fil
CN115510041A (zh) 一种基于Xgboost集成学习的物联终端类型识别方法
KR20240127101A (ko) 내 얼굴 애니메이션 캐릭터 애니메이션 자동화 기술 페이스 마케팅 시스템 및 방법

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20230707

PLFP Fee payment

Year of fee payment: 3