Linux 7.3.1 cierra una fuga de KASLR y arregla los coredump.

Publicado el 30 de octubre de 2026, 15:17

Las versiones .1 del kernel rara vez dan titulares, y Linux 7.3.1 no es la excepción: no trae funciones nuevas ni cambia nada que vayas a notar al encender el equipo. Aun así, Greg Kroah-Hartman publicó este viernes 30 de octubre, a las 13:09 CET, el primer punto de corrección de errores del ciclo 7.3, y entre sus cuarenta commits hay una vulnerabilidad que conviene no dejar pasar.

Para situarlo: Linus Torvalds lanzó Linux 7.3 el domingo 18 de octubre, tras siete candidatas a lanzamiento, y se quejó del tamaño descomunal de ese ciclo. Tanto, que ni siquiera preparó la lista ordenada de novedades destacadas. Doce días después llega el primer parche estable, formado por un commit de versión y 39 correcciones retroportadas, es decir, arreglos que ya existían en la rama principal y se trasladan a la estable. Es una actualización recomendada para cualquiera que esté en 7.3, y no debería sumar sorpresas de hardware a las que ya vieron algunos usuarios de gráficas AMD con la versión principal.

Una fuga de KASLR escondida en el llavero del kernel

Si lo tuyo es la seguridad, aquí es donde te interesa quedarte. KASLR es la técnica que cambia de sitio, en cada arranque, la dirección donde se carga el kernel, para que un atacante no sepa dónde buscar. El subsistema de llaveros (keyrings) es el que guarda claves y credenciales dentro del propio kernel.

El parche de Kyle Zeng arregla algo que suena muy técnico pero se entiende bien: el índice de los llaveros dependía de direcciones reales del kernel. Con la llamada KEYCTL_READ, un usuario sin privilegios podía leer un orden que se derivaba de esos punteros y, a partir de ahí, deducir el desplazamiento de KASLR. En una compilación típica de x86-64 bastaban 45 claves para conseguirlo. Ahora el índice usa identificadores opacos con una clave SipHash, de modo que ya no revela nada útil. Una fuga de este tipo no te compromete el sistema por sí sola, pero es la pieza que suele faltarle a quien quiere encadenar otros fallos, y por eso se corrige con tanta prisa. Junto a ella viajan otros arreglos del mismo subsistema: un uso tras liberación al descargar módulos de claves, una desreferencia nula que podía tumbar el kernel y una condición de carrera en key_reject_and_link.

Coredumps que dejan de quedarse a medias

El bloque más voluminoso es una serie de diez parches de Christian Brauner sobre cómo se desmonta un proceso. Un coredump es el volcado de memoria que se guarda cuando un programa se estrella, y es lo primero que abres cuando intentas averiguar qué ha pasado. Si ese volcado se trunca en silencio porque el kernel lanza señales sobre un proceso que se está muriendo, tienes un archivo inservible y una depuración mucho más penosa de lo necesario. La serie cierra varias de esas grietas: el orden en la salida del proceso, las interrupciones por TIF_NOTIFY_SIGNAL y un interbloqueo en fork que, en teoría, podía bloquear cualquier creación de procesos del sistema. Son esas correcciones que no notas cuando todo va bien y que agradeces muchísimo el día que persigues un cuelgue raro.

io_uring, tracing y el resto de arreglos

Fuera de esos dos grandes bloques, el árbol es más mundano pero tiene su miga. io_uring recibe unos cinco parches de fiabilidad, con Jens Axboe al frente de la corrección de un cuelgue en operaciones multishot y de un problema de drenaje que retrasaba las peticiones mucho más de lo esperable. También hay una mejora de latencia en PREEMPT_RT medida en una Jetson Orin Nano, donde el peor caso de despertar pasó de unos 1.040 microsegundos a unos 18, una diferencia nada pequeña si trabajas con tiempo real. El subsistema de tracing se lleva alrededor de nueve parches, casi todos de limpieza, con un par relevantes para la seguridad. Entre ellos, el árbol de Steven Rostedt cierra una lectura fuera de límites, prog[-1], que podía provocar un filtro de eventos incompleto. Completan la lista un uso tras liberación en Bluetooth L2CAP, una protección contra división por cero en DAMON y un arreglo que devuelve la cabecera de CPU a /proc/interrupts en sistemas grandes.

Cuando la IA firma en la rama estable

Hay un detalle que no vas a ver en casi ninguna cobertura. Varios de estos parches llevan créditos de tipo Assisted-by que mencionan herramientas como Claude, Codex, DeepSeek o un genérico LLM. El del fallo de Bluetooth, por ejemplo, atribuye a deepseek-4-flash el haber detectado la carrera. Los humanos siguen escribiendo, revisando y firmando: Greg Kroah-Hartman firmó los cuarenta commits. Pero la tendencia se nota, y ya no se queda en la rama principal, ha llegado a la línea de corrección de errores.

Quizá lo más interesante de Linux 7.3.1 no sea ningún parche concreto, sino lo normal que resulta todo. Una fuga de punteros cerrada, volcados que ya no se cortan, asistentes de IA citados con nombre en los créditos y nadie levantando la voz. Con un kernel que crece ciclo a ciclo, el mantenimiento silencioso es lo que decide si te fías de él, y que parte de ese trabajo empiece a repartirse con las máquinas obliga a preguntarse algo que todavía nadie tiene del todo claro: cuánta supervisión humana es suficiente cuando el volumen supera lo que una persona puede mirar con calma.

Fuente: Linux compatible

Añadir comentario

Comentarios

Todavía no hay comentarios