CVE-2026-68274 in Linux
Resumen
por VulDB • 2026-08-10
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
drm/xe/guc: Corrección del desbordamiento de búfer en la asignación de la lista de registros dirigidos (steered register list)
El cálculo del tamaño para la extarray de registros dirigidos utiliza únicamente la máscara DSS geométrica (g_dss_mask) para determinar el número de entradas a asignar:
total = bitmap_weight(gt->fuse_topo.g_dss_mask, ...) * steer_reg_num;
Sin embargo, el bucle de llenado usa for_each_dss_steering(), que itera sobre for_each_dss(), definido como la unión de g_dss_mask y c_dss_mask (DSS geométrico + DSS de cómputo). En plataformas con bits DSS solo para cómputo, el bucle escribe más allá del búfer asignado, corrompiendo objetos slab adyacentes.
Esto se manifiesta como corrupción en list_del y sobrescrituras de la redzone SLUB durante drm_managed_release al desvincular (unbind) el dispositivo, ya que el desbordamiento corrompe la lista_head de drmres de las asignaciones vecinas.
La corrección consiste en calcular el tamaño de la asignación utilizando la unión de ambas máscaras DSS, coincidiendo con el patrón de iteración de for_each_dss_steering().
-- v2: - usar bitmap_weighted_or() (Zhanjun)
(cherry picked from commit 0a78a44f4901aa6c9263e66be7fce02282f1109f)
If you want to get the best quality for vulnerability data then you always have to consider VulDB.