Description
In the Linux kernel, the following vulnerability has been resolved:
misc: fastrpc: avoid double fput() on failed usercopy
If the copy back to userland fails for the FASTRPC_IOCTL_ALLOC_DMA_BUFF ioctl(), we shouldn't assume that 'buf->dmabuf' is still valid. In fact, dma_buf_fd() called fd_install() before, i.e. "consumed" one reference, leaving us with none.
Calling dma_buf_put() will therefore put a reference we no longer own, leading to a valid file descritor table entry for an already released 'file' object which is a straight use-after-free.
Simply avoid calling dma_buf_put() and rely on the process exit code to do the necessary cleanup, if needed, i.e. if the file descriptor is still valid.
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 6cffd79504ce040f460831030d3069fa1c99bb71, < 4e6fd2b5fcf8e7119305a6042bd92e7f2b9ed215; >= 6cffd79504ce040f460831030d3069fa1c99bb71, < a5ce7ee5fcc07583159f54ab4af5164de00148f5; >= 6cffd79504ce040f460831030d3069fa1c99bb71, < e4382d0a39f9a1e260d62fdc079ddae5293c037d; >= 6cffd79504ce040f460831030d3069fa1c99bb71, < 76f85c307ef9f10aa2cef1b1d5ee654c1f3345fc; >= 6cffd79504ce040f460831030d3069fa1c99bb71, < 46963e2e0629cb31c96b1d47ddd89dc3d8990b34 |
| Linux | Linux | 5.1 |
References
- https://git.kernel.org/stable/c/46963e2e0629cb31c96b1d47ddd89dc3d8990b34Patch
- https://git.kernel.org/stable/c/4e6fd2b5fcf8e7119305a6042bd92e7f2b9ed215Patch
- https://git.kernel.org/stable/c/76f85c307ef9f10aa2cef1b1d5ee654c1f3345fcPatch
- https://git.kernel.org/stable/c/a5ce7ee5fcc07583159f54ab4af5164de00148f5Patch
- https://git.kernel.org/stable/c/e4382d0a39f9a1e260d62fdc079ddae5293c037dPatch
- https://git.kernel.org/stable/c/46963e2e0629cb31c96b1d47ddd89dc3d8990b34Patch
- https://git.kernel.org/stable/c/4e6fd2b5fcf8e7119305a6042bd92e7f2b9ed215Patch
- https://git.kernel.org/stable/c/76f85c307ef9f10aa2cef1b1d5ee654c1f3345fcPatch
- https://git.kernel.org/stable/c/a5ce7ee5fcc07583159f54ab4af5164de00148f5Patch
- https://git.kernel.org/stable/c/e4382d0a39f9a1e260d62fdc079ddae5293c037dPatch
Timeline
- Published
- Jul 16, 2024
- Last modified
- Aug 4, 2026
- NVD status
- Modified