CVE-2024-40974: Linux kernel · powerpc/pseries: Enforce hcall result buffer validity and size plpar_hcall(),
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 7.8 High · fixed in 5.4.0-1132.142~18.04.1 : patch Linux kernel soon.
Data as of 26 Oct 2026, 23:28 UTC
- Patch
- Available – fixed in 5.4.0-1132.142~18.04.1, 5.4.0-1137.144~18.04.1, 5.4.0-1136.145~18.04.1 +71
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 12 Jul 2024
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Patches and advisories
- ubuntu.com/security/notices/USN-6999-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7003-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7003-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7004-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7005-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7006-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7003-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7007-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7008-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7005-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7009-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7019-1 (opens in a new tab)
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Ubuntu 24.04 LTSlinuxpkg:deb/ubuntu/linux?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-awspkg:deb/ubuntu/linux-aws?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azurepkg:deb/ubuntu/linux-azure?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-gcppkg:deb/ubuntu/linux-gcp?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-gkepkg:deb/ubuntu/linux-gke?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-ibmpkg:deb/ubuntu/linux-ibm?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
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.
References
- ubuntu.com/security/CVE-2024-40974 (opens in a new tab)
- cve.org/CVERecord?id=CVE-2024-40974 (opens in a new tab)
- git.kernel.org/linus/ff2e185cf73df480ec69675936c4ee75a445c3e4 (opens in a new tab)
- git.kernel.org/stable/c/acf2b80c31c37acab040baa3cf5f19fbd5140b18 (opens in a new tab)
- git.kernel.org/stable/c/19c166ee42cf16d8b156a6cb4544122d9a65d3ca (opens in a new tab)
- git.kernel.org/stable/c/a8c988d752b3d98d5cc1e3929c519a55ef55426c (opens in a new tab)
- git.kernel.org/stable/c/262e942ff5a839b9e4f3302a8987928b0c8b8a2d (opens in a new tab)
- git.kernel.org/stable/c/8aa11aa001576bf3b00dcb8559564ad7a3113588 (opens in a new tab)
- git.kernel.org/stable/c/3ad0034910a57aa88ed9976b1431b7b8c84e0048 (opens in a new tab)
- git.kernel.org/stable/c/aa6107dcc4ce9a3451f2d729204713783b657257 (opens in a new tab)
- git.kernel.org/stable/c/ff2e185cf73df480ec69675936c4ee75a445c3e4 (opens in a new tab)
- ubuntu.com/security/notices/USN-6999-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7003-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7003-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7004-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7005-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7006-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7003-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7007-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7008-1 (opens in a new tab)