Plusieurs vulnérabilités détectées dans le noyau Linux

Récemment, la nouvelle a été publiée que plusieurs vulnérabilités classées comme dangereuses ont été détectées dans le noyau Linux et qui permettent à un utilisateur local d'élever ses privilèges sur le système.

La première des vulnérabilités est CVE-2022-0995 et est présent dans le sous-système de suivi des événements "watch_queue" et cela entraîne l'écriture de données dans une zone de la mémoire du noyau en dehors du tampon alloué. L'attaque peut être effectuée par n'importe quel utilisateur sans privilèges et faire exécuter son code avec les privilèges du noyau.

La vulnérabilité est présente dans la fonction watch_queue_set_size() et est associée à une tentative d'effacement de tous les pointeurs de la liste, même s'ils n'ont pas reçu de mémoire allouée. Le problème se manifeste lors de la construction du noyau avec l'option "CONFIG_WATCH_QUEUE=y", qui est utilisée par la plupart des distributions Linux.

Il est mentionné que la vulnérabilité c'était résolu dans un changement ajouté à noyau le 11 mars.

La deuxième vulnérabilité révélée est la CVE-2022-27666 quel est présent dans les modules du noyau esp4 et esp6 qui implémentent les transformations ESP (Encapsulating Security Payload) pour IPsec utilisées lors de l'utilisation d'IPv4 et d'IPv6.

Vulnérabilité permet à un utilisateur local avec des privilèges normaux d'écraser des objets dans la mémoire du noyau et d'élever ses privilèges dans le système. Le problème est dû à une inadéquation entre la taille de la mémoire allouée et les données réellement reçues, puisque la taille maximale du message pourrait dépasser la taille maximale de la mémoire allouée pour la structure skb_page_frag_refill.

Il est mentionné que la vulnérabilité a été corrigée dans le noyau le 7 mars (corrigé dans 5.17, 5.16.15, etc.), plus un prototype fonctionnel a été publié d'un exploit qui permet à un utilisateur normal d'obtenir un accès root sur Ubuntu Desktop 21.10 dans les paramètres par défaut sur GitHub.

Il est indiqué que avec des modifications mineures, l'exploit fonctionnera également sur Fedora et Debian. Il convient de noter que l'exploit a été initialement préparé pour le concours pwn2own 2022, mais le bogue associé a été identifié et corrigé par les développeurs du noyau, il a donc été décidé de divulguer les détails de la vulnérabilité.

Les autres vulnérabilités qui ont été divulguées sont les CVE-2022-1015 y CVE-2022-1016 dans le sous-système netfilter dans le module nf_tables qui alimente le filtre de paquets nftables. Le chercheur qui a identifié les problèmes a annoncé la préparation d'exploits fonctionnels pour les deux vulnérabilités, qui devraient être publiés quelques jours après la publication des mises à jour des packages du noyau par les distributions.

Le premier problème permet à un utilisateur local non privilégié d'effectuer une écriture hors limites sur la pile. Un débordement se produit dans le traitement des expressions nftables bien formées qui sont traitées lors de la phase de validation des index fournis par un utilisateur ayant accès aux règles nftables.

La vulnérabilité est due au fait que les développeurs ont laissé entendre que la valeur de "enum nft_registers reg" est d'un octet, pendant que lorsque certaines optimisations sont activées, le compilateur, selon la spécification C89, vous pouvez utiliser une valeur 32 bits pour cela. En raison de cette bizarrerie, la taille utilisée pour vérifier et allouer de la mémoire ne correspond pas à la taille réelle des données dans la structure, ce qui entraîne une traînée de la structure sur les pointeurs de pile.

Le problème peut être exploité pour exécuter du code au niveau du noyau, mais une attaque réussie nécessite l'accès à nftables.

Ils peuvent être obtenus dans un espace de noms réseau séparé (espaces de noms réseau) avec les droits CLONE_NEWUSER ou CLONE_NEWNET (par exemple, si vous pouvez exécuter un conteneur isolé). La vulnérabilité est également étroitement liée aux optimisations utilisées par le compilateur, qui, par exemple, sont activées lors de la compilation en mode "CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y". L'exploitation de la vulnérabilité est possible à partir du noyau Linux 5.12.

La deuxième vulnérabilité de netfilter se produit lors de l'accès une zone mémoire déjà libérée (use-after-free) dans le pilote nft_do_chain et peut provoquer une fuite de zones de mémoire du noyau non initialisées qui peuvent être lues en manipulant avec des expressions nftables et utilisées, par exemple, pour déterminer les adresses de pointeur lors d'exploits de développement pour d'autres vulnérabilités. L'exploitation de la vulnérabilité est possible à partir du noyau Linux 5.13.

Les vulnérabilités ont été corrigées dans les mises à jour correctives du noyau récemment publiées.


Laisser un commentaire

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

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  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.