Vulnerabilidad en Linux (CVE-2026-23292)
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
25/03/2026
Última modificación:
25/03/2026
Descripción
En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:<br />
<br />
scsi: target: Corrección de bloqueo recursivo en __configfs_open_file()<br />
<br />
En flush_write_buffer, se adquiere &amp;p-&gt;frag_sem y luego se llama a la función de almacenamiento cargada, que, aquí, es target_core_item_dbroot_store(). Esta función llamó a filp_open(), tras lo cual se llamaron a estas funciones (en orden inverso), según el rastro de llamadas:<br />
<br />
down_read<br />
__configfs_open_file<br />
do_dentry_open<br />
vfs_open<br />
do_open<br />
path_openat<br />
do_filp_open<br />
file_open_name<br />
filp_open<br />
target_core_item_dbroot_store<br />
flush_write_buffer<br />
configfs_write_iter<br />
<br />
target_core_item_dbroot_store() intenta validar la nueva ruta de archivo intentando abrir la ruta de archivo que se le proporcionó; sin embargo, en este caso, el informe de error muestra:<br />
<br />
db_root: not a directory: /sys/kernel/config/target/dbroot<br />
<br />
indicando que se intentó abrir el mismo archivo configfs, en el que está trabajando actualmente. Así, está intentando adquirir el semáforo frag_sem del mismo archivo del que ya posee el semáforo obtenido en flush_write_buffer(), lo que lleva a adquirir el semáforo de forma anidada y una posibilidad de bloqueo recursivo.<br />
<br />
Solucione esto modificando target_core_item_dbroot_store() para usar kern_path() en lugar de filp_open() para evitar abrir el archivo usando la función específica del sistema de archivos __configfs_open_file(), y modificándolo aún más para hacer que esta corrección sea compatible.
Impacto
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/142eacb50fb903a4c10dee7e67b6e79ebb36a582
- https://git.kernel.org/stable/c/14d4ac19d1895397532eec407433c5d74d9da53b
- https://git.kernel.org/stable/c/3161ef61f121d4573cad5b57c92188dcd9b284b3
- https://git.kernel.org/stable/c/4fcfa424a581d823cb1a9676e3eefe6ca17e453a
- https://git.kernel.org/stable/c/9a5641024fbfd9b24fe65984ad85fea10a3ae438
- https://git.kernel.org/stable/c/e8ef82cb6443d5f3260b1b830e17f03dda4229ea



