Saltar al contenido
CVE-2026-89558 Fuente: CVE.org Publicada · sin explotación confirmada

Vulnerabilidad de corrupción de datos en Linux kernel (md/raid10)

Linux · Linux · Publicada en CVE.org el 11-09-2026 · Última actualización: 10-11-2026

Descripción

En el kernel de Linux, se resolvió la siguiente vulnerabilidad: md/raid10: corregir still_degraded invertido en raid10_sync_request() El commit fe6a19d40ceb ("md/md-bitmap: merge md_bitmap_start_sync() into bitmap_operations") convirtió still_degraded de int a bool, pero invirtió la asignación en el bucle que verifica si el arreglo seguirá degradado después de recuperar el dispositivo actual: "still_degraded = 1" pasó a ser "still_degraded = false". Como resultado, al recuperar un dispositivo mientras otro espejo sigue ausente, se llama a md_bitmap_start_sync() con degraded == false, lo que borra bits del bitmap que necesita el dispositivo aún ausente. Cuando ese dispositivo se vuelve a agregar, su recuperación basada en bitmap encuentra los bits ya borrados y omite todas las regiones escritas mientras el arreglo estaba degradado, por lo que queda marcado como In_sync conteniendo datos obsoletos: corrupción silenciosa. Reproducción (raid10 near=2, 4 discos, bitmap interno): - provocar la falla y quitar un disco de cada par espejo - escribir en el arreglo degradado - volver a agregar ambos discos y dejar que termine la recuperación - "check" reporta mismatch_cnt=262272 después de 256 MiB de escrituras en modo degradado y el contenido de los archivos difiere; la "recovery" del segundo disco termina en milisegundos porque se omite todo La misma conversión en raid1 se hizo correctamente (still_degraded = true). Se restaura el valor correcto.

Qué hacer

Revisa si usas el producto afectado y en qué versión, y aplica la actualización o la mitigación que indique el aviso del fabricante. CISA no ha confirmado que se esté explotando; si eso cambia, esta ficha pasa a «explotada» y te avisamos en el boletín.

Versiones afectadas

  • Linux Afectadas: fe6a19d40ceb44281905485f56dda715e3214e0e y anteriores a 9bb8da6ecb330a5b1ac9b96f1e55f134a7aef1d4 · fe6a19d40ceb44281905485f56dda715e3214e0e y anteriores a 0efabe6229dc683dbf6eeebd0f9fddc7971ed420 · fe6a19d40ceb44281905485f56dda715e3214e0e y anteriores a 00449d752bee9c8787f42ea1bf533a9fb17f9b6b · fe6a19d40ceb44281905485f56dda715e3214e0e y anteriores a 47f1441b281decde6954a2fa82b4131637d685ac
  • Linux Afectadas: 6.12 No afectadas: 6.12.109 · 6.18.50 · 7.2.4 · 7.3

Según el registro de la vulnerabilidad en CVE.org, tal como lo publicó el fabricante. Confirma tu versión exacta en el aviso del fabricante.

Referencias

Ver el texto original en inglés (CVE.org)

md/raid10: fix still_degraded being inverted in raid10_sync_request()

In the Linux kernel, the following vulnerability has been resolved: md/raid10: fix still_degraded being inverted in raid10_sync_request() Commit fe6a19d40ceb ("md/md-bitmap: merge md_bitmap_start_sync() into bitmap_operations") converted still_degraded from int to bool, but inverted the assignment in the loop that checks whether the array will still be degraded after the current device is recovered: "still_degraded = 1" became "still_degraded = false". As a result, recovering a device while another mirror is still missing calls md_bitmap_start_sync() with degraded == false, which clears bitmap bits that the still-missing device needs. When that device is re-added, its bitmap-based recovery finds the bits already cleared and skips every region written while the array was degraded, so it is marked In_sync while holding stale data: silent corruption. Reproducer (raid10 near=2, 4 disks, internal bitmap): - fail and remove one disk of each mirror pair - write to the degraded array - re-add both disks and let recovery finish - "check" reports mismatch_cnt=262272 after 256 MiB of degraded writes and file contents differ; the second disk's "recovery" completes in milliseconds because everything is skipped The same conversion in raid1 got it right (still_degraded = true). Restore the correct value.

Recibe el boletín cuando CISA agregue vulnerabilidades nuevas

Te escribimos solo cuando CISA agrega vulnerabilidades nuevas, ya traducidas: cada día que haya, o en un resumen los lunes. Confirmas por correo y te das de baja con un clic.

Frecuencia