CVE-2026-99223 in Linux
Resumen
por VulDB • 2026-11-02
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
keys: hacer que los índices de los anillos de claves sean independientes de las direcciones del kernel
KEYCTL_READ devuelve los números de serie en un anillo de claves en orden de recorrido asociativo. La primera palabra del índice es un hash público y determinista del puntero al tipo, el puntero al dominio y la descripción. Por lo tanto, un usuario no privilegiado puede insertar claves con descripciones conocidas, predecir su orden para cada posible desplazamiento KASLR (Kernel Address Space Layout Randomization) y recuperar la dirección de la imagen del kernel. En una compilación x86-64 con alineación de 16 MiB, bastan 45 claves de usuario para distinguir los desplazamientos candidatos.
Eliminar las direcciones de todo el índice, no solo de su primera palabra hash. Asignar a cada tipo y dominio de clave un ID de 64 bits distinto de cero y hacer hash de esos IDs junto con la descripción utilizando una clave SipHash inicializada una sola vez. Utilizar los IDs completos en los fragmentos posteriores del índice también. Truncar o aplicar hash a los IDs allí perdería la garantía de que las tuplas distintas de tipo/dominio/descripción tengan un bit de índice diferente.
Asignar los ID de forma diferida (lazy), ya que los tipos de clave privados no necesitan estar registrados. Almacenarlos en caché en la clave del índice para que los recorridos del árbol y las copias de un índice existente no necesiten desreferenciar un descriptor de tipo que podría haberse dado de baja. Mantener consistente el diseño de fragmentos de 32 bits y los desplazamientos de bit diff_objects(), y conservar la ranura raíz separada para los anillos de claves utilizados en búsquedas recursivas. La comparación de claves, los permisos y el formato de datos del espacio de usuario permanecen sin cambios; solo se reemplaza el ordenamiento en memoria dependiente de las direcciones.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.