Denegación de servicio en el kernel de Linux

Se han encontrado dos vulnerabilidades que podrían provocar una denegación de servicios en versiones del kernel de Linux 4.19.2 y anteriores.

DoS en el kernel Linux

Las vulnerabilidades, de gravedad media, se deben a desreferencias a punteros nulos, y podrían ser aprovechadas por un atacante local para provocar una denegación de servicio.

La primera vulnerabilidad, etiquetada con el código CVE-2018-19406, se encuentra en la función ‘kvm_pv_send_ipi‘ en el módulo ‘arch/x86/kvm/lapic.c‘. Un atacante podría provocar una situación en la que no se inicialice ‘apic map’ y provocar una denegación de servicio a través de llamadas al sistema especialmente manipuladas para provocar la desreferencia del puntero ‘kvm->arch.apic_map‘.

La segunda vulnerabilidad, etiquetada con el código CVE-2018-19407, reside en la función ‘vcpu_scan_ioapic‘ del módulo ‘arch/x86/kvm/x86.c‘ y se debe a una inicialización incorrecta del controlador I/O APIC (Advance Programmable Interrupt Controller). De forma similar a la anterior, un atacante local podría provocar una situación en la que ‘ioapic‘ no se inicialice correctamente y provocar el DoS. Como se muestra en la siguiente prueba de concepto publicada por el investigador Wanpeng Li.

poc-linux-kernel-dos

Se han publicado dos parches provisionales que solucionan ambas vulnerabilidades.

Más información:

KVM: LAPIC: Fix pv ipis use-before-initialization
https://lkml.org/lkml/2018/11/20/411

KVM: X86: Fix scan ioapic use-before-initialization
https://lkml.org/lkml/2018/11/20/580

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *