Description
libfuse is the reference implementation of the Linux FUSE. From version 3.18.0 to before version 3.18.2, a NULL pointer dereference and memory leak in fuse_uring_init_queue allows a local user to crash the FUSE daemon or cause resource exhaustion. When numa_alloc_local fails during io_uring queue entry setup, the code proceeds with NULL pointers. When fuse_uring_register_queue fails, NUMA allocations are leaked and the function incorrectly returns success. Only the io_uring transport is affected; the traditional /dev/fuse path is not affected. PoC confirmed with AddressSanitizer/LeakSanitizer. This issue has been patched in version 3.18.2.
Problem types
CWE-476: NULL Pointer Dereference
Product status
References
github.com/...ibfuse/security/advisories/GHSA-x669-v3mq-r358
github.com/...ommit/7beb86c09b6ec5aab14dc25256ed8a5ad18554d7
github.com/libfuse/libfuse/releases/tag/fuse-3.18.2