Empirical Use of Network Time Protocol in Internet of Things Devices: Vulnerabilities and Security Measures

Basma Chandid · PolyPublie (École Polytechnique de Montréal) · 2020

Network Time Protocol (NTP) est un protocole responsable de la synchronisation du temps dans les environnements de réseautique.Il est utilisé depuis plus de trente ans afin d'aider les appareils connectés à acquérir l'heure correcte depuis le réseau.Ce protocole sert entre autre à garantir les informations d'horodatage et la cryptographie des fichiers journaux.Il a également fait l'objet de nombreuses études visant à rendre ce pilier des réseaux et télécommunications plus sûr et plus robuste.Ceci dit, la synchronisation du temps est l'un des composants essentiels au bon fonctionnement des réseaux d'objets connectés (IoT) aussi.Il est primordial pour la planification des tâches, la tenue des journaux, la surveillance des différents comportements et la mise à jour du temps lors de l'utilisation de protocoles de chiffrement ou de mise en file d'attente dans ces réseaux.L'importance de ces facteurs clés peut être ressentie lorsqu'ils sont rendu non valides à cause de la composante temps, par exemple si l'heure est décalée ou est incorrecte lors de l'utilisation de dispositifs précis dépendant du temps.Cela entraîne un retard ou une négligence totale de la tâche, ce qui peut être dangereux si ces appareils sont utilisés dans une chaîne d'action au service de la vie humaine (soins de santé ou circulation de véhicules).Bien que la synchronisation du temps au moyen du protocole NTP et sa sécurité soient importantes dans les réseaux IoT, à notre connaissance, les recherches existantes en synchronisation du temps en IoT ne concernent que la création de nouvelles méthodes et protocoles sans l'analyse des défauts existant et de possibles mesures de sécurité orientées vers NTP.Cela amplifie l'hétérogénéité déjà présente au niveau de la panoplie des protocoles IoT et ne résout pas les problèmes de sécurité NTP des appareils intelligents existants.Dans ce but, nous nous concentrons dans cette thèse sur l'étude des différentes façons dont NTP est utilisé dans les réseaux IoT.Nous effectuons également une analyse empirique de la méthode utilisée par les objets connectés afin de choisir leur port réseau NTP et les serveurs NTP publiques auxquels ils synchronisent leur horloge.Cette analyse nous donne une idée de la façon dont la synchronisation NTP peut être utilisée pour attaquer et tirer profit des appareils intelligents connectés.C'est également un moyen de recueillir des informations sur la variété des implémentations de ce protocole utilisées par différents fournisseurs.Afin de compléter l'étude empirique de la synchronisation temporelle correcte à l'aide de NTP dans les réseaux d'objets connectés, nous avons mis en place différents environnements de test basés sur différents types de dispositifs IoT.Nous étudions leur utilisation normale de NTP à des fins de comparaison.Nous appliquons ensuite des attaques sur ces architectures vi afin de prouver leur insécurité face aux décalages dans le temps.Cela présente également les possibilités d'utiliser ces attaques pour affecter les tâches humaines automatisées qui dépendent de la précision du temps, mettant ainsi en danger certains aspects de notre vie qui dépendent de ces appareils.En se basant sur les vulnérabilités utilisées dans ces attaques, nous suggérons deux différentes architectures sécurisées pour répondre à ce problème.Elles dépendent de nouvelles implémentations de versions sécurisées de NTP étudiées dans les réseaux traditionnels.Ces architectures utilisent Network Time Security (NTS), une version authentifiée de NTP qui utilise TLS pour le tunneling.Dans notre première architecture, nous l'appliquons séparément de l'appareil IoT et dans la deuxième architecture, nous l'incluons directement dans l'appareil.Nous étudions la faisabilité des deux solutions et ce qui est nécessaire pour que l'objet connecté puisse établir une communication NTP sûre et sécurisée avec le serveur NTP.En proposant ces solutions, nous atteignons nos trois objectifs de départ.Nous aurons ainsi étudié l'importance du temps dans les services fournis par les appareils IoT.Nous aurons, à travers des tests et une évaluation des ensembles de données, envisagé et utilisé les vulnérabilités des communications de synchronisation du temps en IoT.Enfin, nous aurons élaboré une proposition pour deux architectures sécurisées possibles qui traitent ce problème de deux manières différentes.

Read the paper · More papers on PaperTik