Risque

  • Exécution de code arbitraire à distance ;
  • élévation de privilèges ;
  • déni de service ;
  • atteinte à la confidentialité des données.

Systèmes affectés

Tout système d'exploitation utilisant un noyau Linux.

Résumé

Plusieurs vulnérabilités, décrites ci-dessous, affectent les noyaux Linux des séries 2.4 et/ou 2.6.

Description

4.1 Vulnérabilité du système de fichiers Samba

Références CVE CAN-2004-0883 et CAN-2004-0949.

Il est possible, pour un utilisateur mal intentionné contrôlant un serveur Samba, de provoquer un déni de service sur la station cliente sous Linux. Il n'est pas établit que l'exécution de code arbitraire à distance ou localement soit impossible.

4.2 Déni de service local sur les «sockets» Unix

Référence CVE-CAN-2004-1016.

Un utilisateur local mal intentionné peut transmettre des données volontairement mal formées qui seront mal interprétées et bloqueront le noyau.

4.3 Atteinte à la confidentialité des variables d'environnement

Référence CVE CAN-2004-1058.

Les variables d'environnement peuvent être utilisées pour passer des informations sensibles à un processus. C'est pourquoi leur consultation à travers le pseudo-système de fichier proc est restreinte. Cependant leur contenu est parfois visible dans la ligne de commande donc la lecture est plus permissive.

4.4 Exécution locale de code arbitraire avec les «sockets» Unix

Références CVE-CAN-2004-1068 et CVE-CAN-2004-1069.

Des conditions de concurrence peuvent être utilisées pour :

  • modifier une portion arbitraire de la mémoire du noyau et ainsi élever les privilèges d'un utilisateur local (CVE-CAN-2004-1068) ;
  • provoquer un déni de service (CVE-CAN-2004-1069).

4.5 Déni de service local avec un exécutable «a.out»

Référence CVE-CAN-2004-1074.

«a.out» est l'ancien format des exécutables sous Linux. Il a depuis été remplacé par le format ELF. Cependant la compatibilité avec ce format est souvent incluse dans le noyau. L'exécution d'un binaire de ce type, volontairement mal formé, peut provoquer un déni de service du noyau.

4.6 Mauvaise gestion du protocole IGMP

Références CVE-CAN-2004-1137.

IGMP («Internet Group Management») est un protocole IP utilisé pour offrir des communications «multicast». Il est en particulier utilisé par des applications de videoconférence ou de gestion dynamique du routage.

Il est possible pour un utilisateur local mal intentionné d'exécuter un programme qui provoquera un déni de service voire une elévation de privilèges.

Par ailleurs, si une application écoute sur une «socket multicast», il est possible, sous certaines conditions, de bloquer l'exécution du noyau.

4.7 Débordements de tampon dans le code des AMD 64 bits

Référence CVE-CAN-2004-1151.

4.8 Déni de service local dans la gestion des options IP et des terminaux virtuels

Deux fonctions du noyau gérant mal les débordements d'entier ont été identifiées. Elles peuvent être détournées pour provoquer un déni de service du noyau par un utilisateur local exécutant du code malicieux.

4.9 Débordement de mémoire dans la gestion des appels systèmes 32 bits sur plates-formes x86-64

Référence CVE-CAN-2004-1144.

La vulnérabilité est présente dans le noyau 2.4 uniquement et pour les plates-formes x86-64.

La version 2.4.29-pre3 corrige cette vulnérabilité.

4.10 Déni de service local avec un exécutable «elf» pour les noyaux 2.4.x

Référence CVE-CAN-2004-1234.

«elf» est le format des exécutables sous Linux. Au moyen d'un fichier habilement constitué, un utilisateur mal intentionné peut provoquer un déni de service par arrêt brutal du système.

La version 2.4.28-rc4 corrige cette vulnérabilité.

Solution

Les noyaux «vanilla» jusqu'aux versions 2.6.9 et 2.4.28 sont vulnérables à au moins l'une des failles décrites ci-dessus ; utiliser une version en développement ou se référer aux bulletins de sécurité des éditeurs pour l'obtention des correctifs (cf. section Documentation).

Documentation

6.1 Sources du noyau Linux

http://www.kernel.org

6.2 Vulnérabilité du système de fichiers Samba

6.3 Déni de service local sur les «sockets» Unix

6.4 Atteinte à la confidentialité des variables d'environnement

6.5 Exécution locale de code arbitraire avec les «sockets» Unix

6.6 Déni de service local avec un exécutable «a.out»

6.7 Mauvaise gestion du protocole IGMP

6.8 Débordements de tampon dans le code des AMD 64 bits

6.9 Déni de service local dans la gestion des options IP et des terminaux virtuels

6.10 Débordement de mémoire dans la gestion des appels systèmes 32 bits sur plates-formes x86-64

6.11 Déni de service local avec un exécutable «elf»

6.12 Bulletin de sécurité des éditeurs