GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo verifico si KPTI está habilitado en Linux?

El kernel de Linux registra el estado de KPTI en el arranque, por lo que ejecutar el siguiente comando imprimiría el estado en los kernels parcheados. Si no imprime nada, KPTI está deshabilitado.

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

Linux Kernel 4.15rc6 ha habilitado KPTI (aislamiento de tabla de páginas de Kernel) y se ha vuelto a trasladar a Linux Kernel 4.14.11, 4.9.74, 4.4.109, 3.16.52 y 3.2.97.

Entonces, si está ejecutando alguna de estas versiones, KPTI está en su lugar. La mayoría de las distribuciones (que ejecutan cualquier versión del kernel de Linux) enviarán una actualización al kernel de Linux dentro de uno o dos días para arreglar Meltdown y Spectre.

Nota:Agregue el parámetro pti=off al GRUB para deshabilitar el KPTI. Para información:https://askubuntu.com/questions/19486/how-do-i-add-a-kernel-boot-parameter


Cosas que indican el estado de KPTI:

  • En los núcleos estándar, las cadenas Kernel/User page tables isolation: enabled o Kernel/User page tables isolation: force enabled on command line en el dmesg la salida significa que el kernel está realizando el aislamiento de la tabla de páginas del kernel. El último mensaje también significa que el kernel cree que el aislamiento de la tabla de páginas no es necesario para esta CPU.

  • En algunos núcleos parcheados por proveedores (principalmente RedHat y derivados):un valor distinto de cero en /sys/kernel/debug/x86/pti_enabled . La ausencia de este archivo no significa nada, sin embargo:el núcleo estándar no lo proporciona.

  • En el kernel 4.14.18 o posterior y las versiones correspondientes de los kernels LTS, el contenido de /sys/devices/system/cpu/vulnerabilities/meltdown :una línea que comienza con Mitigation: indica que existe una mitigación (KPTI, microcódigo u otra cosa), una línea que comienza con Not affected indica que se cree que la CPU no se ve afectada por el problema y una línea que comienza con Vulnerable indica que se cree que la CPU es vulnerable, pero no se ha implementado una mitigación o esta es insuficiente.

Cosas que no indican el estado de KPTI:

  • Versión del núcleo. Kernel 4.14.11 y posteriores, y las versiones correspondientes de los kernels 4.1, 4,4 y 4.9 LTS son compatibles de KPTI, pero se pueden compilar con él deshabilitado y se puede deshabilitar en el momento del arranque. Además, las versiones anteriores a estas no están automáticamente en riesgo:algunas distribuciones han retrotraído los parches KPTI a kernels más antiguos.

  • bugs : cpu_insecure en /proc/cpuinfo . La presencia de esto indica que si el kernel se compila para el aislamiento de la tabla de páginas y if el aislamiento de la tabla de páginas no se ha deshabilitado en el momento del arranque o en el tiempo de ejecución, entonces se usará el aislamiento de la tabla de páginas. Además, no indican que una CPU es vulnerable al ataque Meltdown:el kernel 4.14.11 lo configura para todas las CPU x86, mientras que el kernel 4.14.12 lo configura para todas las CPU que no son AMD, incluso algunas como Pentium MMX o "Bonnell" Atom CPU que no son vulnerables.

  • CONFIG_PAGE_TABLE_ISOLATION=y en la configuración del núcleo. Esto solo indica que el núcleo es capaz de aislar la tabla de páginas del núcleo. KPTI se puede deshabilitar en el momento del arranque desde la línea de comando del kernel a través del nopti o pti=off opciones En algunos sistemas, se puede deshabilitar en tiempo de ejecución escribiendo 0 a /sys/kernel/debug/x86/pti_enabled .


En un núcleo compatible:

dmesg | grep 'Aislamiento de tablas de páginas de kernel/usuario'

resultará en habilitado o deshabilitado.

Si no hay ningún resultado, entonces el kernel no tiene soporte para KPTI.


Linux
  1. Cómo verificar la versión de Redhat

  2. ¿Cómo verificar la versión del kernel de Linux en Ubuntu?

  3. Cómo actualizar Kernel en Linux Desktop

  4. ¿Cómo verificar HZ en la terminal?

  5. ¿Cómo verificar si el kernel de Linux está habilitado para Retpoline o no?

Cómo comprobar la versión de Kali Linux

Cómo verificar la versión del kernel de Linux en Ubuntu y Linux Mint

Cómo comprobar la versión de Linux

Cómo verificar la versión del kernel en Linux

Cómo comprobar qué versión del kernel de Linux estoy ejecutando

Cómo verificar el espacio de intercambio en Linux