Reference counting error in overlayfs/shiftfs error path when used in conjuction with aufs
CVE-2019-15794
7.1HIGH
What is CVE-2019-15794?
Overlayfs in the Linux kernel and shiftfs, a non-upstream patch to the Linux kernel included in the Ubuntu 5.0 and 5.3 kernel series, both replace vma->vm_file in their mmap handlers. On error the original value is not restored, and the reference is put for the file to which vm_file points. On upstream kernels this is not an issue, as no callers dereference vm_file following after call_mmap() returns an error. However, the aufs patchs change mmap_region() to replace the fput() using a local variable with vma_fput(), which will fput() vm_file, leading to a refcount underflow.
Affected Version(s)
Linux kernel 5.3 kernel < 5.3.0-24.26
Linux kernel 5.0 kernel < 5.0.0-37.40