In the Linux kernel, the following vulnerability has been resolved:
powerpc/pseries: Enforce hcall result buffer validity and size
plpar_hcall(), plpar_hcall9(), and related functions expect callers to provide valid result buffers of certain minimum size. Currently this is communicated only through comments in the code and the compiler has no idea.
For example, if I write a bug like this:
long retbuf[PLPAR_HCALL_BUFSIZE]; // should be PLPAR_HCALL9_BUFSIZE plpar_hcall9(H_ALLOCATE_VAS_WINDOW, retbuf, ...);
This compiles with no diagnostics emitted, but likely results in stack corruption at runtime when plpar_hcall9() stores results past the end of the array. (To be clear this is a contrived example and I have not found a real instance yet.)
To make this class of error less likely, we can use explicitly-sized array parameters instead of pointers in the declarations for the hcall APIs. When compiled with -Warray-bounds[1], the code above now provokes a diagnostic like this:
error: array argument is too small; is of size 32, callee requires at least 72 [-Werror,-Warray-bounds] 60 | plpar_hcall9(H_ALLOCATE_VAS_WINDOW, retbuf, | ^ ~~~~~~
[1] Enabled for LLVM builds but not GCC for now. See commit 0da6e5fd6c37 ("gcc: disable '-Warray-bounds' for gcc-13 too") and related changes.
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade perfUpgrade kernel-zfcpdumpUpgrade kernel-debug-develUpgrade kernel-develUpgrade kernel-debug-coreUpgrade kernel-debugUpgrade kernel-zfcpdump-develUpgrade python3-perfUpgrade kernel-debug-modulesUpgrade kernel-tools-libsUpgrade kernel-coreUpgrade kernel-modules-extraUpgrade kernel-modulesUpgrade kernel-docUpgrade kernel-zfcpdump-modules-extraUpgrade bpftoolUpgrade kernelUpgrade kernel-toolsUpgrade kernel-debug-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-cross-headersUpgrade kernel-abi-stablelistsUpgrade kernel-headersUpgrade kernel-tools-libs-devel | Aug 12, 2024 | Jul 12, 2024 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Jul 17, 2024 | Jul 12, 2024 |
| Oracle_linux | — | Upgrade kernel-uekUpgrade kernel | Aug 16, 2024 | Jul 12, 2024 |
| Redhat_linux | — | Upgrade kernelNo solution exists | Aug 12, 2024 | Jul 12, 2024 |
| Rocky_linux | — | Upgrade kernel-modulesUpgrade kernel-tools-libs-develUpgrade kernel-headersUpgrade perf-debuginfoUpgrade perfUpgrade python3-perfUpgrade kernel-debug-develUpgrade kernel-tools-debuginfoUpgrade python3-perf-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debug-coreUpgrade kernel-cross-headersUpgrade bpftoolUpgrade kernel-debuginfoUpgrade kernel-debugUpgrade kernel-coreUpgrade kernelUpgrade kernel-tools-libsUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-debug-modulesUpgrade kernel-toolsUpgrade kernel-modules-extraUpgrade kernel-develUpgrade kernel-debug-modules-extraUpgrade kernel-debug-debuginfo | Aug 22, 2024 | Jul 12, 2024 |
| Ubuntu | — | Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-5.15.0-1067-oracleUpgrade linux-image-awsUpgrade linux-image-aws-lts-20.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-5.4.0-1043-iotUpgrade linux-image-generic-lpaeUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-5.15.0-1069-awsUpgrade linux-image-gkeop-5.15Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-5.15.0-1064-intel-iotgUpgrade linux-image-azure-fdeUpgrade linux-image-5.4.0-1120-kvmUpgrade linux-image-6.8.0-1013-nvidia-lowlatencyUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.4.0-1131-oracleUpgrade linux-image-5.15.0-1064-nvidia-lowlatencyUpgrade linux-image-oem-20.04bUpgrade linux-image-oemUpgrade linux-image-nvidia-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-5.15.0-1072-azure-fdeUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-6.8.0-44-genericUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-virtual-hwe-18.04Upgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-1012-oemUpgrade linux-image-6.8.0-1015-awsUpgrade linux-image-5.4.0-1099-gkeopUpgrade linux-image-5.4.0-1137-azureUpgrade linux-image-6.8.0-1012-oracleUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-6.8.0-1012-ibmUpgrade linux-image-nvidiaUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-121-generic-64kUpgrade linux-image-5.15.0-121-lowlatency-64kUpgrade linux-image-5.4.0-1079-ibmUpgrade linux-image-6.8.0-44-generic-64kUpgrade linux-image-5.15.0-1066-gkeUpgrade linux-image-5.4.0-1092-bluefieldUpgrade linux-image-5.15.0-121-lowlatencyUpgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-45-genericUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-1014-azure-fdeUpgrade linux-image-5.15.0-1062-raspiUpgrade linux-image-6.8.0-1013-nvidiaUpgrade linux-image-6.8.0-1014-gcpUpgrade linux-image-azureUpgrade linux-image-raspiUpgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-44-lowlatencyUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-gcpUpgrade linux-image-5.4.0-1116-raspiUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.8.0-1013-nvidia-lowlatency-64kUpgrade linux-image-5.4.0-195-lowlatencyUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-5.4.0-1132-awsUpgrade linux-image-5.4.0-1136-gcpUpgrade linux-image-gkeop-5.4Upgrade linux-image-oracleUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-6.8.0-1014-azureUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-5.15.0-1062-ibmUpgrade linux-image-gke-5.15Upgrade linux-image-generic-hwe-18.04Upgrade linux-image-oem-22.04bUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-6.8.0-44-lowlatency-64kUpgrade linux-image-5.4.0-195-genericUpgrade linux-image-aws-lts-22.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.15.0-1052-gkeopUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-virtualUpgrade linux-image-5.4.0-1051-xilinx-zynqmpUpgrade linux-image-5.15.0-1068-gcpUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-oem-22.04cUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-oracle-64kUpgrade linux-image-intelUpgrade linux-image-azure-lts-20.04Upgrade linux-image-6.8.0-1012-oracle-64kUpgrade linux-image-ibmUpgrade linux-image-6.8.0-1013-nvidia-64kUpgrade linux-image-oem-20.04cUpgrade linux-image-generic-64kUpgrade linux-image-bluefieldUpgrade linux-image-6.8.0-1011-raspiUpgrade linux-image-ibm-classicUpgrade linux-image-5.15.0-1035-xilinx-zynqmpUpgrade linux-image-5.15.0-1066-kvmUpgrade linux-image-oem-20.04dUpgrade linux-image-raspi2-hwe-18.04Upgrade linux-image-oem-20.04Upgrade linux-image-genericUpgrade linux-image-raspi2Upgrade linux-image-gkeUpgrade linux-image-gcp-lts-20.04Upgrade linux-image-5.4.0-195-generic-lpaeUpgrade linux-image-lowlatencyUpgrade linux-image-oem-22.04aUpgrade linux-image-6.8.0-1010-gkeUpgrade linux-image-6.8.0-45-generic-64kUpgrade linux-image-5.15.0-121-generic-lpaeUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-osp1Upgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-intel-iotgUpgrade linux-image-5.15.0-1064-nvidiaUpgrade linux-image-kvmUpgrade linux-image-nvidia-64kUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-121-genericUpgrade linux-image-5.15.0-1072-azure | Sep 12, 2024 | Jul 12, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 13, 2025 | Jul 12, 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