In the Linux kernel, the following vulnerability has been resolved:
binder: fix race between mmput() and do_exit()
Task A calls binder_update_page_range() to allocate and insert pages on a remote address space from Task B. For this, Task A pins the remote mm via mmget_not_zero() first. This can race with Task B do_exit() and the final mmput() refcount decrement will come from Task A.
Task A | Task B ------------------+------------------ mmget_not_zero() | | do_exit() | exit_mm() | mmput() mmput() | exit_mmap() | remove_vma() | fput() |
In this case, the work of ____fput() from Task B is queued up in Task A as TWA_RESUME. So in theory, Task A returns to userspace and the cleanup work gets executed. However, Task A instead sleep, waiting for a reply from Task B that never comes (it's dead).
This means the binder_deferred_release() is blocked until an unrelated binder event forces Task A to go back to userspace. All the associated death notifications will also be delayed until then.
In order to fix this use mmput_async() that will schedule the work in the corresponding mm->async_put_work WQ instead of Task A.
CVSS Details
- CVSS 3.1 Base Score: 4.7
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jun 27, 2024 | Mar 18, 2024 |
| Ubuntu | — | Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-generic-64kUpgrade linux-image-5.4.0-1127-azureUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-5.15.0-102-generic-lpaeUpgrade linux-image-5.15.0-1050-raspiUpgrade linux-image-awsUpgrade linux-image-oem-22.04cUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-5.4.0-175-genericUpgrade linux-image-nvidia-6.5Upgrade linux-image-raspiUpgrade linux-image-5.4.0-176-generic-lpaeUpgrade linux-image-aws-lts-20.04Upgrade linux-image-5.4.0-1106-raspiUpgrade linux-image-5.15.0-1057-awsUpgrade linux-image-5.15.0-1060-azure-fdeUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-oem-20.04bUpgrade linux-image-oem-22.04dUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.5.0-1024-oracle-64kUpgrade linux-image-azureUpgrade linux-image-6.5.0-41-lowlatencyUpgrade linux-image-azure-fdeUpgrade linux-image-6.5.0-1024-oemUpgrade linux-image-6.5.0-1024-oracleUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-5.15.0-1048-nvidiaUpgrade linux-image-nvidiaUpgrade linux-image-6.5.0-41-genericUpgrade linux-image-5.15.0-102-lowlatencyUpgrade linux-image-gkeop-5.15Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-oem-22.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oem-20.04cUpgrade linux-image-5.4.0-1041-xilinx-zynqmpUpgrade linux-image-6.5.0-1022-gcpUpgrade linux-image-6.5.0-1021-awsUpgrade linux-image-laptop-23.10Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-starfiveUpgrade linux-image-5.4.0-175-lowlatencyUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.5.0-1021-nvidiaUpgrade linux-image-oemUpgrade linux-image-5.15.0-1040-gkeopUpgrade linux-image-gkeop-5.4Upgrade linux-image-aws-lts-22.04Upgrade linux-image-oracleUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.4.0-176-lowlatencyUpgrade linux-image-oem-20.04dUpgrade linux-image-5.15.0-1054-gkeUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-6.5.0-1018-raspiUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-6.5.0-1021-nvidia-64kUpgrade linux-image-gcpUpgrade linux-image-5.4.0-1034-iotUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-genericUpgrade linux-image-5.4.0-1110-kvmUpgrade linux-image-5.15.0-1060-azureUpgrade linux-image-kvmUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-azure-lts-20.04Upgrade linux-image-5.4.0-1082-bluefieldUpgrade linux-image-6.5.0-1015-starfiveUpgrade linux-image-5.15.0-1055-gcpUpgrade linux-image-oem-osp1Upgrade linux-image-5.15.0-1054-kvmUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-gke-5.15Upgrade linux-image-6.5.0-1022-azure-fdeUpgrade linux-image-5.15.0-1055-oracleUpgrade linux-image-5.15.0-102-generic-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-5.15.0-1052-intel-iotgUpgrade linux-image-5.15.0-1050-ibmUpgrade linux-image-intelUpgrade linux-image-6.5.0-41-lowlatency-64kUpgrade linux-image-5.4.0-176-genericUpgrade linux-image-gkeopUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-6.5.0-41-generic-64kUpgrade linux-image-5.4.0-1089-gkeopUpgrade linux-image-6.5.0-1017-laptopUpgrade linux-image-5.15.0-1048-nvidia-lowlatencyUpgrade linux-image-5.4.0-1122-awsUpgrade linux-image-oem-22.04bUpgrade linux-image-azure-cvmUpgrade linux-image-generic-lpaeUpgrade linux-image-lowlatencyUpgrade linux-image-raspi2Upgrade linux-image-oracle-64kUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.4.0-1126-gcpUpgrade linux-image-5.15.0-102-genericUpgrade linux-image-bluefieldUpgrade linux-image-virtualUpgrade linux-image-intel-iotgUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-gkeUpgrade linux-image-oem-20.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.4.0-1121-oracleUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-6.5.0-1022-azureUpgrade linux-image-nvidia-64k-6.5Upgrade linux-image-oem-22.04aUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-5.15.0-102-lowlatency-64kUpgrade linux-image-5.4.0-1069-ibmUpgrade linux-image-ibm | Apr 10, 2024 | Mar 18, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Mar 18, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub