Internet-wide automated assessment of the exposure of the IoT devices to security risks
Évaluation à l'échelle de l'Internet du niveau d'exposition des objets connectés face aux risques de sécurité
Résumé
Nowadays, the use of Internet of Things (IoT) devices in our personal and work space makes our everyday life easier, but those IoT devices often suffer from security issues. The objective of this thesis is to evaluate the security of IoT devices. On one hand, we investigate the risk of user privacy leakage introduced by IoT hubs (or IoT gateways). Those IoT hubs act as a middlebox between a user and the IoT devices. Existing passive fingerprinting techniques are not applicable in this configuration considering that the network traffic of each individual IoT device attached to the IoT hub is not accessible. We propose a passive fingerprinting technique to infer the user actions by analysing the network traffic of the IoT gateway. Our method works on encrypted network traffic, and consists of decomposing a packet payload size into a set of, potential, user actions. We applied our technique on one IoT gateway controlling up to 16 IoT devices and show that an attacker, located on the Internet, is able to infer the user actions in more than 91.2% of the investigated cases.In a further step, we propose a hybrid firmware analysis technique to evaluate the security of an IoT device by inspecting the content of its firmware. Our analysis combines a dynamic analysis and a static analysis to improve our chances to extract data. Our objectives are not to detect unknown vulnerabilities but only the known ones, and inspect if the binaries included are deprecated. We applied our analysis on 4,730 firmwares belonging to IoT devices released between 2009 and 2019, and noticed the widespread use of a small set of binaries, notably to deploy HTTP and SSH services. From 2017, we observed that IoT manufacturers implemented many updates which reduced the exposure to known vulnerabilities.Using those firmwares, we defined an active fingerprinting technique allowing an attacker to infer details about a connected IoT devices, such as its brand or the binary used to deploy the HTTP server. Thanks to the firmware content, we can 1) obtain precise information about the binaries (name, version), and 2) assume the services actually deployed by the device i.e., the results of a TCP/UDP port scans. Considering those two aspects, our method consists of training classifiers to predict one particular property of a connected IoT device from, among others, the supposed results of a TCP/UDP port scans. Our method allows to predict fine details such as the name or version of a binary, the usernames or the passwords present in an IoT device. Using our approach, we noticed that the predictions of the name and version of the HTTP, SSH and DNS binaries are achieved with a precision superior to 73.14%. On the other hand, the prediction of at least one valid password is more challenging and requires up to two tries. Our method is more effective and furtive than a naive brute-force method.Knowing the vulnerabilies present in a IoT device does not guarantee that attackers use them on a regular basis. Hence, we propose in our fourth contribution, a high interaction honeypot capable of intercepting cyberattacks targeting IoT devices. The defined honeypot is based on an existing emulation technique that uses IoT devices firmwares. Implementing an honeypot is hard, and because of the stealth constraint, the existing emulation technique could not be used as-is. Due to this constraint, we implemented a framework capable of emulating IoT devices while assuring their furtivity, and adding honeypot-specific capabilities, such as exfiltrating the attackers activities. We then compared our approach to the state of the art one, and showed that ours can emulate up to 825 (82.5%) devices compared to 454 (45.4%). Our honeypot was deployed on one server during about one year and captured unknown and recent attacks from botnets, and sometimes humans.
L'usage des objets de l'Internet des Objets (IdO) dans nos environnements personnel ou professionnel facilite nos interactions du quotidien, mais ces derniers souffrent souvent de problèmes de sécurité. L'enjeu de cette thèse est d'évaluer la sécurité des objets IdO à l'échelle de l'Internet selon plusieurs axes. Pour ce faire, les travaux proposés doivent satisfaire plusieurs contraintes comme le passage à l'échelle, la gestion de l'hétérogénéité des objets IdO ou, dans le cas d'une analyse de trafic réseau, l'impossibilité d'intercepter les communications sans-fil d'objets IdO. Nous nous sommes d'abord intéressés aux risques de fuite de données utilisateur introduits par les box domotiques, dont le rôle est d'agir comme un relai entre un utilisateur et des objets IdO. De plus, la box agrège le trafic réseau des objets ce qui empêche l'utilisation des méthodes existantes pour identifier les actions utilisateur effectuées. Nous proposons une méthode capable d'inférer les actions utilisateur en décomposant la taille des données dans les requêtes reçues par la box en une ou plusieurs combinaisons d'actions utilisateur possibles. Notre méthode a ensuite été appliquée sur une box domotique connectée à 16 objets IdO, et nous avons montré qu'un attaquant pouvait inférer les actions utilisateur dans plus de 91.2% des cas. Dans une deuxième contribution, nous évaluons le niveau de sécurité d'objets IdO à l'aide d'une analyse hybride de firmwares combinant une analyse statique et dynamique. Contrairement aux solutions existantes, notre objectif n'est pas de détecter de nouvelles vulnérabilités mais plutôt d'analyser la composition des binaires présents dans les firmwares, notamment par rapport à la présence de vulnérabilités connues ou à l'utilisation de versions de binaires obsolètes. Nous avons ensuite analysé 4 730 firmwares d'objets IdO publiés entre 2009 et 2019, et noté une utilisation prépondérante de certains binaires, mais également une vague de patches en 2017. L'analyse de firmwares permet d'obtenir 1) des informations précises sur les binaires (nom et version), 2) les noms et mots de passe des utilisateurs. À l'aide de ces informations, nous avons élaboré une méthode d'identification active permettant à un attaquant d'inférer, à partir des résultats supposés d'un scan de ports, des propriétés précises sur un objet IdO connecté, comme le nom du binaire utilisé pour déployer le serveur HTTP ou les noms d'utilisateur. Notre méthode consiste à entraîner des classificateurs à partir des données extraites des firmwares. Elle est capable de prédire correctement (>73.14%) le nom ou la version d'un binaire déployant HTTP, SSH ou DNS. La prédiction des mots de passe nécessite, elle, moins de deux tentatives. L'utilisation de notre approche semble plus efficace, et furtive, qu'une approche par brute-force. Notre quatrième contribution s'intéresse aux cyberattaques ciblant les objets IdO. Pour ce faire, nous avons défini un pot de miel à forte interaction basé sur une méthode d'émulation utilisant des firmwares d'objets IdO. Le déploiement d'un pot de miel est difficile à cause de la contrainte de furtivité que les méthodes existantes d'émulation d'objets IdO n'intègrent pas. Notre contribution est capable d'émuler un objet IdO en 1) maximisant sa furtivité, et 2) en intégrant des fonctionnalités inhérentes à un pot de miel (par exemple exfiltrer les activités des attaquants). Notre approche peut émuler jusqu'à 825 (82.5%) objets IdO contre 454 (45.4%) avec la méthode de l'état de l'art. Enfin, nous avons déployé notre pot de miel durant environ un an, et montré que ce dernier recevait des attaques inconnues ou récentes de botnets, et d'humains.
Origine | Fichiers produits par l'(les) auteur(s) |
---|