Description
In the Linux kernel, the following vulnerability has been resolved: userfaultfd: prevent registration of special VMAs Vova Tokarev says: userfaultfd allows registration on shadow stack VMAs. With userfaultfd access, you can register on the shadow stack, discard a page ... and inject a page with chosen return addresses via UFFDIO_COPY. Update vma_can_userfault() to reject VM_SHADOW_STACK. While on it, also reject VM_SPECIAL so that if a driver would implement vm_uffd_ops, it wouldn't be possible to register special VMAs with userfaultfd. Since VM_SPECIAL includes VM_DONTEXPAND which is set but hugetlb, exclude hugetlb VMAs from the check for VM_SPECIAL.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
54007f818206dc27309ca423df4c87dd160a7208 to < d974b4b786214883bd8e56bda10b454c80fd6205affected54007f818206dc27309ca423df4c87dd160a7208 to < 495a28d5a100be1b232633f4c2dcc42ba10b3796affected54007f818206dc27309ca423df4c87dd160a7208 to < 165613191ad9d034bf17c00e3a142f9561597ec5affected54007f818206dc27309ca423df4c87dd160a7208 to < 0c26202b157f1efc3cd2f26f5c30f59b508a6a5daffected54007f818206dc27309ca423df4c87dd160a7208 to < 3c58f641e813c3c71039f8fd4d4e2a3aab713288affected
Linux Linux
Default version status: affected
6.6affected0 to < 6.6unaffected6.6.153 to ≤ 6.6.*unaffected6.12.105 to ≤ 6.12.*unaffected6.18.44 to ≤ 6.18.*unaffected7.1.6 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/d974b4b786214883bd8e56bda10b454c80fd6205 ↗
- https://git.kernel.org/stable/c/495a28d5a100be1b232633f4c2dcc42ba10b3796 ↗
- https://git.kernel.org/stable/c/165613191ad9d034bf17c00e3a142f9561597ec5 ↗
- https://git.kernel.org/stable/c/0c26202b157f1efc3cd2f26f5c30f59b508a6a5d ↗
- https://git.kernel.org/stable/c/3c58f641e813c3c71039f8fd4d4e2a3aab713288 ↗