CHAPITRE 1 : ETAT DE
L'ART, CONTEXTE ET PROBLÉMATIQUE
Introduction
Les objets connectés sont un domaine d'étude
très vaste. Il serait facile d'essayer de les limiter à de
simples capteurs capables de communiquer avec une passerelle mais en fait c'est
bien complexe que ça. Leurs composants diffèrent d'un
constructeur à l'autre. Pour mieux cerner le cadre de notre projet, ce
chapitre sera consacré aux réseaux d'objets connectés, ce
qui les caractérisent, les failles et les attaques dont ils sont
victimes, les travaux qui se sont penchés sur les problèmes de
sécurité et présenter notre approche pour une solution.
1. Caractéristiques d'un
réseau d'objet connecté
1.1. Acteurs d'un réseau d'objet connecté
D'après l'article de Pallavi Sethi et Smruti R. Sarangi
qui passe en revue l'internet des objets [4], les objets connectés sont
généralement de petit équipements dotés de
processeurs, de mémoire vive, de stockage de masse et d'interfaces
d'entrées/sorties. Ils ont ajouté que d'un point de vue
logiciel, ces équipements embarquent un système d'exploitation,
plus généralement connu sous le nom de «firmware».
Cependant, afin d'optimiser les coûts par rapport à un ordinateur,
le fabricant intègre généralement «juste ce qu'il
faut» afin d'implémenter les fonctionnalités
nécessaires. Ce qui implique d'après eux des puissances de calcul
réduites, des espaces de stockage limités, des interfaces
d'entrées/sorties correspondant aux fonctionnalités de
l'équipement ainsi qu'un système d'exploitation limité aux
fonctionnalités prévues par le fabricant.
Mahmoud Elkhodr, Seyed Shahrestani et Hon Cheung proposent
dans un article une plateforme pour la gestion des objets [5] dans laquelle ils
ont détaillé les caractéristiques d'un objet
connecté et son environnement.
Un objet connecté possède plusieurs attributs
tels que son identifiant, sa localisation, son nom, les données utiles,
etc. Ce sont des données que nous pouvons exploités pour
identifier ces objets.On distingue principalement deux types
d'attributs :
? Attributs de gestion : Ils permettent
de représenter l'objet virtuellement grâce au nom, à l'Id,
le numéro de série, l'adresse Mac, son adresse IP, la version du
firmware, sa localisation si elle fixe, etc. Ces attributs permettent de
décrire l'objet.
? Attributs comportementaux : Ils
représentent les données récupérer par l'objet
comme le son, la température, la pression, la localisation, les
déplacements, détection d'eau ou de feu, etc.
Sur un objet connecté peut être installé
une application «agent » responsable :
? D'établir la communication avec le manageur
? Envoyer des données mises à jour au
manageur
? Récupérer les instructions du manageur et
s'assurer que l'objet les exécute
? Envoyer des notifications au manageur
? Manipuler les requêtes et les réponses
correspondantes depuis ou vers le manageur
Lorsqu'un objet possède un agent, on parle d'objet
managé.
L'objet ne dispose pas des capacités physiques et
logiciels nécessaires pour traiter les informations qu'il récolte
lui-même. Pour ce faire, il aura donc besoin d'un manageur ou d'une
passerelle. La passerelle reçoit et stocke les données qu'il a
reçues de l'objet dans une base de données.
Figure 1 : Les
acteurs du réseau d'objets managés
La figure ci-dessus nous montre que
l'objet connecté constitué d'un agent et de l'objet
lui-même communique avec internet soit à travers une passerelle
appelé ici manageur sur laquelle est téléchargé
une API responsable de la gestion des objets du réseau ou encore les
objets managés communiquent directement vers le Cloud qui possède
la base de donnée et peut être le serveur de l'application afin
que les objets puissent récupérer les résultats des
calculs qu'ils ne peuvent pas faire eux-mêmes et envoyer des
données aux applications qui les gèrent.
Un manageur possède un module d'enregistrement
des objets responsable d'enregistrer les objets dans le
réseau. Un objet rejoint le réseau et devient un objet
managé en se connectant au manageur grâce à son agent. Il
y'a 03 méthodes d'enregistrement d'un objet :
i) Rejoindre directement le
réseau : Dans ce cas l'objet est
préprogrammé avec l'adresse IP du manageur. Cela permet à
l'objet d'envoyer une requête « DIRECT-JOIN ».
ii) Enregistrement via l'association :
l'objet doit faire une requête, optionnellement s'authentifier
auprès du manageur, envoyé une requête d'association et
lorsque celui-ci est approuvé la connexion est établie
iii) Reconnexion au réseau :
l'objet a perdu sa connexion avec le manageur et essaye de se reconnecter.
Cela arrive lorsque l'objet sort de la zone de couverture du manageur ou
lorsque celui-ci pour une raison ou une autre est indisponible. Il utilise
l'une des deux méthodes précédentes à l'exception
que lui n'a pas besoin qu'on l'enregistre une nouvelle fois dans la base de
données ou alors il y aura une mise à jour !
Pour notre projet, connaître les différents
acteurs d'un réseau d'objets connectés et leur
caractéristique physique est important. Un objet connecté est
très simple et restreint en termes de capacité, nous n'allons
donc pas y installer de logiciel mais plutôt surveiller ses
communications avec le manageur. Il n'y aura pas de fonctionnalité en
plus à ajouter à l'agent responsable de l'objet et pas de module
supplémentaire au manageur. Le manageur lui par contre possède
les ressources physiques et logicielles intéressantes pour
installé nos modèles d'apprentissage profond.
|