GNU/Linux >> Tutoriels Linux >  >> Linux

Comment vérifier si KPTI est activé sous Linux ?

Le noyau Linux enregistre l'état KPTI au démarrage, donc l'exécution de la commande suivante imprimera l'état sur les noyaux corrigés. S'il n'imprime rien, KPTI est désactivé.

dmesg -wH | grep 'Kernel/User page tables isolation'

Le noyau Linux 4.15rc6 a activé KPTI (isolation de la table des pages du noyau) et il a été rétroporté vers le noyau Linux 4.14.11, 4.9.74, 4.4.109, 3.16.52 et 3.2.97.

Donc, si vous utilisez l'une de ces versions, KPTI est en place. La plupart des distributions (exécutant n'importe quelle version du noyau Linux) pousseront une mise à jour du noyau Linux dans un jour ou deux pour corriger Meltdown et spectre.

Remarque :Ajoutez le paramètre pti=off au GRUB afin de désactiver le KPTI. Pour info :https://askubuntu.com/questions/19486/how-do-i-add-a-kernel-boot-parameter


Les choses qui indiquent l'état de KPTI :

  • Dans les noyaux standard, les chaînes Kernel/User page tables isolation: enabled ou Kernel/User page tables isolation: force enabled on command line dans le dmesg La sortie signifie que le noyau effectue l'isolation de la table des pages du noyau. Ce dernier message signifie en outre que le noyau pense que l'isolation de la table des pages n'est pas requise pour ce processeur.

  • Dans certains noyaux corrigés par les fournisseurs (principalement RedHat et dérivés) :une valeur non nulle dans /sys/kernel/debug/x86/pti_enabled . L'absence de ce fichier ne veut rien dire cependant :le noyau standard ne le fournit pas.

  • Dans le noyau 4.14.18 ou plus récent et les versions correspondantes des noyaux LTS, le contenu de /sys/devices/system/cpu/vulnerabilities/meltdown :une ligne commençant par Mitigation: indique qu'une atténuation (KPTI, microcode ou autre) est en place, une ligne commençant par Not affected indique que le processeur n'est pas affecté par le problème, et une ligne commençant par Vulnerable indique que le processeur est considéré comme vulnérable, mais qu'aucune atténuation ou une atténuation insuffisante n'est en place.

Choses qui n'indiquent pas l'état de KPTI :

  • Version noyau. Le noyau 4.14.11 et les versions ultérieures, et les versions correspondantes des noyaux LTS 4.1, 4,4 et 4.9 sont compatibles de KPTI, mais ils peuvent être compilés avec celui-ci désactivé, et il peut être désactivé au démarrage. De plus, les versions plus anciennes que celles-ci ne sont pas automatiquement à risque :certaines distributions ont rétroporté les correctifs KPTI vers des noyaux plus anciens.

  • bugs : cpu_insecure en /proc/cpuinfo . La présence de ceci indique que si le noyau est compilé pour l'isolation de la table des pages, et if l'isolation de la table des pages n'a pas été désactivée au démarrage ou à l'exécution, l'isolation de la table des pages sera utilisée. De plus, il ne le fait pas indiquent qu'un processeur est vulnérable à l'attaque Meltdown :le noyau 4.14.11 le définit pour tous les processeurs x86, tandis que le noyau 4.14.12 le définit pour tous les processeurs non AMD, même ceux comme le Pentium MMX ou le "Bonnell" Atom CPU qui ne sont pas vulnérables.

  • CONFIG_PAGE_TABLE_ISOLATION=y dans la configuration du noyau. Cela indique seulement que le noyau est capable d'isoler la table des pages du noyau. KPTI peut être désactivé au démarrage à partir de la ligne de commande du noyau via le nopti ou pti=off options. Sur certains systèmes, il peut être désactivé lors de l'exécution en écrivant 0 à /sys/kernel/debug/x86/pti_enabled .


Sur un noyau pris en charge :

dmesg | grep 'Isolation des tables de page noyau/utilisateur'

se traduira par activé ou désactivé.

S'il n'y a pas de résultat, le noyau ne prend pas en charge KPTI.


Linux
  1. Comment vérifier la version de Redhat

  2. Comment mettre à niveau le noyau sur Linux Desktop

  3. Comment vérifier HZ dans le terminal?

  4. Comment coder un module du noyau Linux ?

  5. Comment vérifier si le noyau Linux est activé ou non avec Retpoline ?

Comment vérifier la version de Kali Linux

Comment vérifier la version du noyau Linux sur Ubuntu et Linux Mint

Comment vérifier la version Linux

Comment vérifier la version du noyau sous Linux

Comment vérifier quelle version du noyau Linux suis-je en cours d'exécution

Comment vérifier l'espace d'échange sous Linux