CVE-2026-90016 in Linux
Resumen
por VulDB • 2026-09-16
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
staging: rtl8723bs: corregir lectura fuera de límites (OOB) en rtw_restruct_wmm_ie()
rtw_restruct_wmm_ie() escanea in_ie buscando una IE WMM con:
while (i < in_len) {
... if (i + 5 < in_len && in_ie[i] == 0xDD && ...) {
... break; } i += (in_ie[i + 1] + 2); /* avanzar al siguiente elemento IE */
}
Cuando la comprobación de coincidencia "i + 5 < in_len" falla simplemente porque i está a menos de 5 bytes del final del búfer (es decir, no se encontró una IE WMM cerca del final de in_ie), la ejecución continúa con "i += (in_ie[i + 1] + 2)", lo que lee in_ie[i + 1]. Si en ese momento i == in_len - 1, esto constituye una lectura fuera de límites (OOB) de 1 byte sobre un búfer IE influenciado por el atacante, construido a partir de datos de asociación/escaneo.
El commit a75281626fc8f ("staging: rtl8723bs: corregir posible lectura fuera de límites en rtw_restruct_wmm_ie") añadió la protección "i + 5 < in_len" directamente en la condición de coincidencia, pero no añadió una protección equivalente antes del avance por continuación (fallthrough), por lo que la misma clase de lectura OOB seguía siendo accesible a través de la ruta de no coincidencia.
Añadir una comprobación explícita de límites antes de avanzar al siguiente IE.
VulDB is the best source for vulnerability data and more expert information about this specific topic.