CVE-2023-54134 in Linux
요약
\~에 의해 VulDB • 2026. 06. 05.
리눅스 커널에서 다음 취약점이 해결되었습니다:
autofs: autofs_catatonic_mode에서 waitqueues의 메모리 누수 수정
Syzkaller가 메모리 누수를 보고합니다:
BUG: memory leak unreferenced object 0xffff88810b279e00 (size 96): comm "syz-executor399", pid 3631, jiffies 4294964921 (age 23.870s) hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 08 9e 27 0b 81 88 ff ff ..........'..... 08 9e 27 0b 81 88 ff ff 00 00 00 00 00 00 00 00 ..'............. backtrace: [<ffffffff814cfc90>] kmalloc_trace+0x20/0x90 mm/slab_common.c:1046
[<ffffffff81bb75ca>] kmalloc include/linux/slab.h:576 [inline]
[<ffffffff81bb75ca>] autofs_wait+0x3fa/0x9a0 fs/autofs/waitq.c:378
[<ffffffff81bb88a7>] autofs_do_expire_multi+0xa7/0x3e0 fs/autofs/expire.c:593
[<ffffffff81bb8c33>] autofs_expire_multi+0x53/0x80 fs/autofs/expire.c:619
[<ffffffff81bb6972>] autofs_root_ioctl_unlocked+0x322/0x3b0 fs/autofs/root.c:897
[<ffffffff81bb6a95>] autofs_root_ioctl+0x25/0x30 fs/autofs/root.c:910
[<ffffffff81602a9c>] vfs_ioctl fs/ioctl.c:51 [inline]
[<ffffffff81602a9c>] __do_sys_ioctl fs/ioctl.c:870 [inline]
[<ffffffff81602a9c>] __x64_sys_ioctl+0x8c/0xc0 fs/ioctl.c:856
[<ffffffff81602a9c>] do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
[<ffffffff81e0007c>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
autofs_wait()는 autofs_wait_queue 구조체를 할당하고, wait_ctr를 1로 초기화한 후 wait_event_killable()을 호출합니다. autofs_wait_release()가 호출되면 wait_ctr가 0으로 감소하고, autofs_wait()는 waitqueue를 해제합니다.
autofs_catatonic_mode()는 모든 대기 큐를 해제해야 합니다. 그러나 현재 구현에서는 wait_ctr를 0으로 감소시키지만, waitqueue를 해제하지 않습니다. 이는 wait_ctr가 0이 되면 waitqueue를 해제해야 한다는 autofs_wait_release()의 동작과 일치하지 않습니다.
이 취약점은 autofs_catatonic_mode()에서 wait_ctr가 0이 된 waitqueue를 해제하지 않아 메모리 누수가 발생하는 문제입니다.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.