Description
In the Linux kernel, the following vulnerability has been resolved: KVM: s390: Fix length check __import_wp_info() struct kvm_hw_breakpoint::len is a __u64 that is fully controlled by user space. This is then assigned to wp_info->len, which is an int. The bounds check is done on the truncated value while the allocation uses the untruncated one: wp_info->len = bp_data->len; [...] if (wp_info->len < 0 || wp_info->len > MAX_WP_SIZE) return -EINVAL; wp_info->old_data = kmalloc(bp_data->len, GFP_KERNEL_ACCOUNT); Use the validated value for the allocation as intended. Without this fix userspace can trigger >4GB allocations which will fail and result in a WARN due to MAX_PAGE_ORDER.
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
27291e2165b6de70c476b7b675308113edd69a60 to < aef540194effd768bed0bd2e6a74fe135a3d7c3aaffected27291e2165b6de70c476b7b675308113edd69a60 to < 71153d3262517e1c02c3a66aa5094f279b2d1454affected27291e2165b6de70c476b7b675308113edd69a60 to < fec89d327d9b2b669b5bbdac209386c6317c3722affected27291e2165b6de70c476b7b675308113edd69a60 to < b94ab9caa5d72c78226121cccff5e33f946da900affected27291e2165b6de70c476b7b675308113edd69a60 to < beb9c55af609c4c7308259d7191688c75a4e3d4aaffected27291e2165b6de70c476b7b675308113edd69a60 to < 3fe801db90bdeefb0bbdda42d832846b53f64f8aaffected27291e2165b6de70c476b7b675308113edd69a60 to < 4c07680a467e2f7697245bcd11691bffb2a6f0edaffected
Linux Linux
Default version status: affected
3.16affected0 to < 3.16unaffected5.15.221 to ≤ 5.15.*unaffected6.1.188 to ≤ 6.1.*unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.51 to ≤ 6.18.*unaffected7.2.5 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/aef540194effd768bed0bd2e6a74fe135a3d7c3a ↗
- https://git.kernel.org/stable/c/71153d3262517e1c02c3a66aa5094f279b2d1454 ↗
- https://git.kernel.org/stable/c/fec89d327d9b2b669b5bbdac209386c6317c3722 ↗
- https://git.kernel.org/stable/c/b94ab9caa5d72c78226121cccff5e33f946da900 ↗
- https://git.kernel.org/stable/c/beb9c55af609c4c7308259d7191688c75a4e3d4a ↗
- https://git.kernel.org/stable/c/3fe801db90bdeefb0bbdda42d832846b53f64f8a ↗
- https://git.kernel.org/stable/c/4c07680a467e2f7697245bcd11691bffb2a6f0ed ↗