Annonce

Réduire
Aucune annonce.

Linux: une faille dans le noyau vieille de huit ans !

Réduire
Cette discussion est fermée.
X
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Linux: une faille dans le noyau vieille de huit ans !

    Ce mois d'août fut désastreux pour les adeptes de Linux. On a découvert un bug au niveau du noyau qui s'il est exploité permet à un attaquant d'exécuter du code avec les droits du super-utilisateur. Cette vulnérabilité semble affectée toutes les versions du noyau (kernel) depuis 2001.

    Un patch a été appliqué le 13 août.

    Voici un lien vers une page informative (en anglais).

    Ici un administrateur explique qu'il a fait l'objet d'un exploit.

    Ce bug aurait été découvert par les ingénieurs de Google chargés de la sécurité, selon les auteurs de cet article.

    Conclusion: depuis huit ans les utilisateurs (comme moi) croyaient utiliser un système sûr, sans virus et à l'abri de tout attaque. C'est bien évidemment faux, il s'agit là d'un mythe. Linux n'est pas à l'abri des virus et Linux avait donc depuis huit ans une sorte de porte dérobée permettant à un attaquant d'exécuter le code qu'il souhaite sur la machine attaquée.

    note: personnellement j'utilise le noyau 2.6.30.5, le dernier en date, que j'ai compilé et j'ai vérifié, le fichier net/socket.c (ligne n°739) est bien patché.
    Dernière modification par djezairi90, 31 août 2009, 02h13. Motif: précision

  • #2
    Salut Djezairi saha shorek
    Je viens d'aller sur le site et vois que la dernière version en date est la 2.6.31
    Je l'ai téléchargé puis extrait dans un dossier.
    Qu'est-ce qu'on fait après ?

    Tous les fils d'Adam (paix sur lui) sont des pécheurs. Les meilleurs d’entre eux sont ceux qui se repentent.Hadith rapporté par Ahmad et Tirmidhî

    Commentaire


    • #3
      Pour compiler le noyau.

      Salam Alik et Saha Ftorek Amin.

      Première chose, Il faut ce rendre dans le dossier linux-2.6.31 depuis un terminal.

      Exécuter un nettoyage au cas ou:

      make distclean

      Puis il faut éditer la configuration du noyau pour créer le fichier .config

      Dans un premier temps voici le mien, il est configuré pour une architecture Intel Pentium 4 et au dessus (j'ai du le modifier car mon cpu est un AMD64). Après l'avoir téléchargé il faut le copier vers le fichier .config dans le dossier linux-2.6.31. C'est un noyau modulaire, il intègre tous les drivers pratiquement. Et la configuration réseau est maximale, (ipfilter,tunneling, etc), avec selinux, etc. Il est dédié à un usage pour une distribution (convient pratiquement à tout le monde). Normalement la commande mkinitramfs intégrera le bon pilote de contrôleur de disque dur à l'image initrd afin que le noyau puisse monter la racine sans paniquer durant le boot. Tous les controleurs SATA sont pris en charge. Le support IDE est intégré sous forme de modules.

      Il faudra apprendre à éditer la configuration avec make menuconfig (nécessite le paquet libncurses5-dev) ou pour le mode graphique make gconfig (nécessite les paquets libgtk2.0-dev libglib2.0-dev libglade2-dev)

      Le mieux est d'exécuter la commande:

      sudo apt-get install libncurses5-dev libgtk2.0-dev libglib2.0-dev libglade2-dev

      pour satisfaire les dépendances de la compilation une fois pour toute.

      Maintenant la configuration est sauvée il suffit de compiler le noyau et les modules:

      make

      C'est long, très long. C'est la première étape.

      Ensuite installer les modules en tapant:

      sudo make modules_install

      Le noyau est le fichier bzImage, son chemin est arch/x86/boot/bzImage

      Le copier dans le répertoire /boot avec le fichier de configuration et le fichier System.map (fichier des symbols du noyau):

      sudo cp -i arch/x86/boot/bzImage /boot/vmlinuz-2.6.31

      sudo cp -i .config /boot/config-2.6.31
      sudo cp -i System-map /boot/System.map-2.6.31

      Créer l'image de démarrage initrd.gz:

      Commencer par éditer le fichier /etc/initramfs-tools/initramfs.conf et remplacer la ligne:

      MODULES=most

      par

      MODULES=dep

      C'est important car sinon l'image créée est trop grande (50Mo). Puis exécuter:

      sudo mkinitramfs -o /boot/initrd.img-2.6.31 2.6.31

      Enfin éditer le fichier /boot/grub/menu.lst:

      Reproduire à l'identique les lignes dédiées au noyau actuel et remplacer les occurrences de 2.6.28-15-generic par 2.6.31.

      Voici les deux entrées originales (modes normal et recovery):

      ## ## End Default Options ##

      title Ubuntu 9.04, kernel 2.6.28-15-generic
      uuid 3eddd921-9e40-44ef-800b-422e8c870517
      kernel /boot/vmlinuz-2.6.28-15-generic root=UUID=3eddd921-9e40-44ef-800b-422e8c870517 ro locale=fr_FR quiet splash apparmor.enabled=0 selinux=1
      initrd /boot/initrd.img-2.6.28-15-generic
      quiet

      title Ubuntu 9.04, kernel 2.6.28-15-generic (recovery mode)
      uuid 3eddd921-9e40-44ef-800b-422e8c870517
      kernel /boot/vmlinuz-2.6.28-15-generic root=UUID=3eddd921-9e40-44ef-800b-422e8c870517 ro locale=fr_FR single
      initrd /boot/initrd.img-2.6.28-15-generic

      Elles deviennent:

      ## ## End Default Options ##

      title Ubuntu 9.04, kernel 2.6.31
      uuid 3eddd921-9e40-44ef-800b-422e8c870517
      kernel /boot/vmlinuz-2.6.31 root=UUID=3eddd921-9e40-44ef-800b-422e8c870517 ro locale=fr_FR quiet splash apparmor.enabled=0 selinux=1
      initrd /boot/initrd.img-2.6.31
      quiet

      title Ubuntu 9.04, kernel 2.6.31 (recovery mode)
      uuid 3eddd921-9e40-44ef-800b-422e8c870517
      kernel /boot/vmlinuz-2.6.31 root=UUID=3eddd921-9e40-44ef-800b-422e8c870517 ro locale=fr_FR single
      initrd /boot/initrd.img-2.6.31

      Dans ta configuration UUID sera différent.

      A plus tard.
      Dernière modification par djezairi90, 16 septembre 2009, 06h37.

      Commentaire


      • #4
        Liens mis à jour

        Le lien vers le fichier config-2.6.31 du message précédent a été mis à jour. Il faut le télécharger à nouveau pour s'assurer que c'est le bon.

        Il faudrait poster le profile matériel de ta machine pour voir quel pilote doit impérativement être compilé. Notamment le CPU et savoir quel contrôleur SATA ou IDE est présent sur ta machine pour la prise charge des disques durs.

        le contenu de la commande lspci est très instructif (sata, ide, carte réseau, son et vidéo, controleur USB, etc ...).
        Dernière modification par djezairi90, 16 septembre 2009, 03h32.

        Commentaire


        • #5
          Merci chef, pour ces infos saha fetourek
          Un ordinateur c'est bête, ça fait ce qu'on lui dit !
          les gents fuient par divers moyens, certains prennent un verre, ou 2 bouteilles, moi je prend ma bouteille de plongée :)

          Commentaire


          • #6
            Salut Djezairi saha ftorek akhi......
            pour tes post précèdents , je suivrai tes conseils un par un.......
            en attendant je préfère commencer par la fin cad te présenter
            le profil de mon pc(pilotes,...).
            Après avoir tapé la commande lspci--------->???(en messagerie privé)
            Pour les points d'interrogation, c'est pour te dire que je préfère mettre
            le copier-coller du résultat en messagerie privé.......
            Puis il faut éditer la configuration du noyau pour créer le fichier .config...???
            Il faudra apprendre à éditer la configuration.....
            Justement il faut que je comprenne parfaitement comment éditer.......
            Dans un premier temps voici le mien, il est configuré pour une architecture Intel Pentium 4
            mon cpu est un pentium 4 aussi......

            @ DJEZAIRI90
            Bonne chance
            Merci je crois que j'en aurai besoin.....
            C'est un peu compliqué pour un novice comme moi mais bon je vais essayer.....
            Dernière modification par AMIN, 18 septembre 2009, 02h18.
            Tous les fils d'Adam (paix sur lui) sont des pécheurs. Les meilleurs d’entre eux sont ceux qui se repentent.Hadith rapporté par Ahmad et Tirmidhî

            Commentaire


            • #7
              Ton fichier de configuration est identique au mien

              J'ai sauvé ton fichier de configuration en tant que config-2.6.31.Amin et la sortie de la commande:

              diff config-2.6.31 config-2.6.31.Amin

              est vide. Ce qui signifie qu'ils sont identiques. Il ne te reste plus qu'à nettoyer le dossier linux-2.6.31, à y copier le fichier config-2.6.31 en tant que .config et à lancer make.

              Ce sera très long mais c'est comme ça.

              Dés que tu sauras configurer le noyau avec make menuconfig tu pourras gagner du temps en n'activant que les pilotes dont tu as besoin.

              A plus tard.

              Commentaire


              • #8
                Je te remercie Djezairi90 pour tes interventions.

                Je comptais aussi mettre à jour mon noyau. Je ne voulais pas attendre la sortie de Karmic. Cela va m'être bien utile
                Cependant, j'ai quelques réticences à cause de mon CPU : AMD Turion 64...

                On verra bien
                ° • ÅЖѓηΣ •°

                Commentaire

                Chargement...
                X