Environ 25 vulnérabilités ont été découvertes dans Zephyr, le système RTOS

Zephyr

Des chercheurs de la société NCC Group ont publié récemment les résultats des audits du projet Zephyr, qui est un système d'exploitation temps réel (RTOS), conçu pour équiper des appareils selon le concept de «l'Internet des objets» (IoT). Zephyr est développé avec la participation d'Intel.

Zephyr fournit un espace d'adressage virtuel unique pour tous les processus global partagé (SASOS, système d'exploitation à espace d'adressage unique). Le code spécifique à l'application est combiné à un noyau adapté à une application spécifique et forme un fichier exécutable monolithique à télécharger et à exécuter sur certains ordinateurs.

Toutes les ressources système sont déterminées au stade de la compilation, ce qui réduit la taille du code et augmente la productivité. Seules les fonctionnalités du noyau requises pour exécuter l'application peuvent être incluses dans l'image système.

Il est à noter que parmi les principaux avantages Zephyr mentionné développement dans un souci de sécurité. On fait valoir que Toutes les étapes de développement passent par les étapes obligatoires de confirmer la sécurité du code: tests flous, analyse statique, tests de pénétration, revue de code, analyse de déploiement de porte dérobée et modélisation des menaces.

À propos des vulnérabilités

L'audit a révélé 25 vulnérabilités dans Zephyr et 1 vulnérabilité dans MCUboot. Au total, ils ont été identifiés 6 vulnérabilités dans la pile réseau, 4 dans le noyau, 2 dans le shell de commande, 5 dans les gestionnaires d'appels système, 5 dans le sous-système USB et 3 dans le mécanisme de mise à jour du micrologiciel.

Un niveau de danger critique a été attribué à deux problèmes, deux: élevé, 9 modéré, 9 - faible et 4 - à prendre en compte. Les problèmes impact critique sur la pile IPv4 et l'analyseur MQTT, tandis que quoiLes plus dangereux incluent le stockage de masse USB et les pilotes USB DFU.

Au moment de la divulgation des informations, des correctifs n'étaient préparés que pour les 15 vulnérabilités plus dangereux, il y a encore des problèmes qui ont été résolus, conduisant à un déni de service ou à une défaillance connexe des mécanismes de protection supplémentaire du noyau.

Une vulnérabilité exploitée à distance a été identifiée dans la pile IPv4 de la plateforme, ce qui entraîne une corruption de la mémoire lors du traitement de paquets ICMP modifiés d'une certaine manière.

Un autre problème sérieux a été trouvé dans l'analyseur de protocole MQTT, qCela est dû au manque de vérification appropriée de la longueur des champs dans l'en-tête et peut conduire à l'exécution de code à distance. Les problèmes de déni de service moins dangereux se trouvent dans la pile IPv6 et dans l'implémentation du protocole CoAP.

D'autres problèmes peuvent être exploités localement pour provoquer un déni de service ou l'exécution de code au niveau du noyau. La plupart de ces vulnérabilités sont liées au manque de vérifications appropriées des arguments des appels système, et peuvent conduire à l'écriture et à la lecture de zones arbitraires de la mémoire du noyau.

Les problèmes concernent également le code de traitement des appels système lui-même - l'accès à un numéro d'appel système négatif entraîne un débordement d'entier. ETLe noyau a également identifié des problèmes lors de la mise en œuvre de la protection ASLR (randomisation de l'espace d'adressage) et le mécanisme d'installation d'étiquettes Canary sur la pile, rendant ces mécanismes inefficaces.

De nombreux problèmes affectent la pile USB et les pilotes individuels. Par exemple, un problème de stockage de masse USB vous permet de provoquer un dépassement de mémoire tampon et d'exécuter du code au niveau du noyau lorsque vous connectez le périphérique à un hôte attaquant USB contrôlé.

La vulnérabilité dans USB DFU, un pilote pour télécharger un nouveau micrologiciel via USB, vous permet de charger une image de micrologiciel modifiée dans la mémoire flash interne d'un microcontrôleur sans utiliser de cryptage et de contourner le mode de démarrage sécurisé avec vérification de la signature numérique des composants. De plus, le code du chargeur de démarrage ouvert MCUboot a été étudié, dans lequel une vulnérabilité non dangereuse a été trouvée qui pourrait conduire à un débordement de tampon lors de l'utilisation du protocole SMP (Simple Management Protocol) via UART.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.