vulnérabilités du noyau Linux, vous permettant d'élever vos privilèges via nf_tables et ksmbd

Dans Netfilter, un sous-système du noyau LinuxUne vulnérabilité (CVE-2024-1086) a été découverte dans un outil de filtrage et de modification de paquets réseau. Cette vulnérabilité permet à un utilisateur local d'exécuter du code noyau et d'élever ses privilèges. Le problème est dû à une double libération de mémoire dans le module nf_tables, qui gère le filtre de paquets nftables. Le chercheur en sécurité ayant découvert cette vulnérabilité a développé et publié un prototype fonctionnel de l'exploit.

Le fonctionnement de cette faille a été démontré dans des versions récentes. Debian и Ubuntu avec des noyaux Linux Cette vulnérabilité est exploitée dans les versions 5.14 à 6.6, ainsi que dans l'environnement KernelCTF (Capture the Flag), qui intègre des correctifs supplémentaires pour bloquer les méthodes d'exploitation classiques et est utilisé par Google dans son programme de primes aux vulnérabilités. Son taux de réussite est estimé à 99.4 %. L'article associé décrit en détail le processus de création d'une exploitation complexe et multicouche, ainsi que le contournement des mécanismes de protection et d'atténuation des vulnérabilités du noyau.

vulnérabilités du noyau Linux, vous permettant d'élever vos privilèges via nf_tables et ksmbd

Le problème est lié à un bug dans la fonction nft_verdict_init(), qui permet d'utiliser des valeurs positives comme code d'erreur DROP dans les hooks, qui peut être utilisé pour appeler la fonction nf_hook_slow() pour libérer de la mémoire pour un tampon. qui a déjà La fonction free() a été appelée. Le problème se produit lorsqu'une opération NF_DROP échoue et que le noyau interprète d'abord NF_DROP, puis libère le tampon et renvoie l'état NF_ACCEPT. Cette situation conduit au fait que malgré la libération du tampon associé au paquet, son traitement ne s'arrête pas, mais est transféré à un autre gestionnaire, qui à son tour appelle une seconde fois la fonction de libération de mémoire.

La vulnérabilité apparaît à partir de la version du noyau Linux La faille est exploitable avec les noyaux à partir de la version 5.14, mais elle fonctionne également avec les noyaux existants. Un correctif a été proposé dans la version du noyau. Linux La version 6.8-rc1 a été corrigée et intégrée aux branches stables 5.15.149, 6.1.76 et 6.6.15 fin février. Vous pouvez suivre l'évolution de la correction de cette vulnérabilité sur les pages suivantes des distributions : Debian, UbuntuGentoo, RHEL, SUSE, Fedora, Arch.

De plus, il est possible de constater une série de vulnérabilités dans le module ksmbd, qui offre un noyau intégré. Linux implémentation de fichier serveur Basée sur le protocole SMB : la vulnérabilité CVE-2024-26592 permet à des attaquants distants non authentifiés d’exécuter du code avec des privilèges noyau sur des systèmes où le module ksmbd est activé. Ce problème est dû à une condition de concurrence dans le code de gestion des connexions TCP, qui survient en raison d’un défaut de verrouillage lors de la manipulation d’un objet.

La vulnérabilité CVE-2023-52440 permet également l'exécution à distance de son code avec les droits du noyau, mais est provoquée par un débordement de tampon lors du traitement de clés de session incorrectes en raison du manque de vérification appropriée de la taille des données reçues de l'utilisateur avant de les copier vers un tampon de taille fixe.

Les vulnérabilités (1, 2, 3) CVE-2024-26594, CVE-2023-52442 et CVE-2023-52441 dans ksmbd permettent de déterminer le contenu de la mémoire du noyau à distance et sans authentification. La vulnérabilité CVE-2024-26594 est causée par une validation incorrecte des données lors du traitement des jetons SMB2 Mech entrants, ce qui entraîne le renvoi de données depuis une zone en dehors des limites de la mémoire tampon. La vulnérabilité CVE-2023-52442 est causée par un manque de validation appropriée des entrées lors du traitement des requêtes chaînées. La vulnérabilité CVE-2023-52441 est causée par un manque de validation d'entrée requise lors du traitement des demandes de négociation de connexion SMB2.

Les vulnérabilités CVE-2024-26594 et CVE-2024-26592 sont corrigées dans le noyau 6.8 et mises à jour correctives des branches stables précédentes 6.1.75, 6.6.14, 6.7.2. Les vulnérabilités restantes ont été corrigées dans le noyau 6.5 et les mises à jour 5.15.145, 6.1.53, 6.4.16.

Enfin, nous pouvons mentionner l'activation de la nouvelle équipe de développement du noyau. LinuxCréé pour analyser les vulnérabilités et évaluer le lien entre les correctifs du noyau et les failles de sécurité, le CNA (CVE Numbering Authority) a été mis en place en février par les développeurs du noyau. Ce service est habilité à attribuer indépendamment des identifiants CVE aux vulnérabilités. Auparavant, l'attribution des CVE et l'analyse du lien entre les correctifs et les vulnérabilités potentielles incombaient aux développeurs des distributions, et les vulnérabilités potentielles du noyau n'étaient pas identifiées et étaient répertoriées avec les correctifs classiques. Les résultats de ce nouveau service ont dépassé toutes les attentes : plusieurs dizaines de nouvelles vulnérabilités, jusqu'alors non considérées comme des failles de sécurité, sont désormais identifiées quotidiennement dans le noyau. Par exemple, le 26 mars, 14 vulnérabilités non considérées comme des failles de sécurité ont reçu un nouvel identifiant CVE, et le 25 mars, 41 vulnérabilités.

Source: opennet.ru

Achetez un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Achetez un hébergement web fiable avec protection DDoS, serveurs VPS et VDS | ProHoster