What’s Vulnerable › Vulnerabilities

CVE-2023-53171: vfio/type1: prevent underflow of locked_vm via exec()

Description

In the Linux kernel, the following vulnerability has been resolved: vfio/type1: prevent underflow of locked_vm via exec() When a vfio container is preserved across exec, the task does not change, but it gets a new mm with locked_vm=0, and loses the count from existing dma mappings. If the user later unmaps a dma mapping, locked_vm underflows to a large unsigned value, and a subsequent dma map request fails with ENOMEM in __account_locked_vm. To avoid underflow, grab and save the mm at the time a dma is mapped. Use that mm when adjusting locked_vm, rather than re-acquiring the saved task's mm, which may have changed. If the saved mm is dead, do nothing. locked_vm is incremented for existing mappings in a subsequent patch.

Affected products

How to fix

Upgrade to a fixed version: Linux kernel 5.10.173, 5.15.99, 6.1.16, 6.2.3. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2023-53171 or the next vulnerability affects your stack