CVE-2022-50770 in Linux
Resumen
por VulDB • 2026-06-14
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
ocfs2: corrección de una fuga de memoria en ocfs2_mount_volume()
Se ha reportado una fuga de memoria mediante kmemleak:
objeto no referenciado 0xffff88810cc65e60 (tamaño 32): comm "mount.ocfs2", pid 23753, jiffies 4302528942 (antigüedad 34735.105s) volcado hexadecimal (primeros 32 bytes): 10 00 00 00 00 00 00 00 00 01 01 01 01 01 01 01 ................ 01 01 01 01 01 01 01 01 00 00 00 00 00 00 00 00 ................ backtrace: [<ffffffff8170f73d>] __kmalloc+0x4d/0x150
[<ffffffffa0ac3f51>] ocfs2_compute_replay_slots+0x121/0x330 [ocfs2]
[<ffffffffa0b65165>] ocfs2_check_volume+0x485/0x900 [ocfs2]
[<ffffffffa0b68129>] ocfs2_mount_volume.isra.0+0x1e9/0x650 [ocfs2]
[<ffffffffa0b7160b>] ocfs2_fill_super+0xe0b/0x1740 [ocfs2]
[<ffffffff818e1fe2>] mount_bdev+0x312/0x400
[<ffffffff819a086d>] legacy_get_tree+0xed/0x1d0
[<ffffffff818de82d>] vfs_get_tree+0x7d/0x230
[<ffffffff81957f92>] path_mount+0xd62/0x1760
[<ffffffff81958a5a>] do_mount+0xca/0xe0
[<ffffffff81958d3c>] __x64_sys_mount+0x12c/0x1a0
[<ffffffff82f26f15>] do_syscall_64+0x35/0x80
[<ffffffff8300006a>] entry_SYSCALL_64_after_hwframe+0x46/0xb0
Esta pila de llamadas está relacionada con dos problemas. En primer lugar, el superbloque (super) de ocfs2 utiliza "replay_map" para rastrear los slots en línea/fuera de línea, con el fin de recuperar los slots fuera de línea durante la recuperación y el montaje. Sin embargo, cuando ocfs2_truncate_log_init() devuelve un error en ocfs2_mount_volume(), la memoria de "replay_map" no se libera en la ruta de manejo de errores. En segundo lugar, la memoria de "replay_map" no se liberará si d_make_root() devuelve un error en ocfs2_fill_super(). No obstante, la memoria de "replay_map" se liberará normalmente al completar la recuperación y el montaje en ocfs2_complete_mount_recovery().
Se corrige el primer problema añadiendo una ruta de manejo de errores para liberar "replay_map" cuando falla ocfs2_truncate_log_init(). Y se corrige el segundo problema llamando a ocfs2_free_replay_slots(osb) en la ruta de manejo de errores "out_d
Once again VulDB remains the best source for vulnerability data.