CVE-2026-89587
In the Linux kernel, the following vulnerability has been resolved: ACPI: pfr_update: fix stack buffer overflow in query_capability() query_capability() copies four ACPI buffer objects returned by the firmware _DSM into fixed-size u8[16] fields in struct pfru_update_cap_info using memcpy with the firmware-supplied length: memcpy(&cap_hdr->code_type, elements[CAP_CODE_TYPE_IDX].buffer.pointer, elements[CAP_CODE_TYPE_IDX].buffer.length); The same pattern repeats for drv_type, platform_id, and oem_id. If the firmware returns buffer.length > 16 for any of these fields, memcpy writes past the destination array. struct pfru_update_cap_info is stack-allocated in pfru_ioctl(). Confirmed with KASAN on 7.2-rc6: three stack-out-of-bounds reports are generated when a DSM returns 64-byte buffers, with writes reaching 44 bytes past the end of cap_hdr's [64, 156) frame window into adjacent stack redzones. Introduce a helper pointer to out_obj->package.elements and use it to validate each buffer length against its destination field size before copying, returning -EINVAL if the firmware supplies an oversized buffer.
What this means for your business
- An attacker can use it only with access to the machine itself, with an ordinary user login, and without anyone at your company clicking anything.
- FIRST's prediction model gives it a 0.1% chance of attack attempts being seen in the next 30 days, ranking above 3% of all known flaws.
What to do
- 1Ask your IT team or provider whether any of your systems use the affected product.
- 2If you do, follow the vendor's guidance. No patch reference has been published yet.
Not sure if your company is exposed?
Fastnexa’s certified penetration testers can check whether attackers could use this flaw, or others like it, against your websites, apps and network. The full test is free for our first 10 founding clients until 31 December 2026.
Scoring
- CVSS
- 7.8 (v3.1)
- Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H- Assigned by
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Dates
- Published
- 2026-09-11
- Last modified
- 2026-09-14
- Sources
- NVD
References
- https://git.kernel.org/stable/c/15d2b7f38f95d28652170344f39ee492c55e567c
- https://git.kernel.org/stable/c/6d4ed2fd022bc862b156e53aae163b61259e1caa
- https://git.kernel.org/stable/c/a2151624b55029dad0ca7efd17fb83a0461c8843
- https://git.kernel.org/stable/c/c5a31b4e7e37c92550be9a2edf51ca853a4d251a
- https://git.kernel.org/stable/c/ced45be0073a8a31b30b4a7f68cd3a15734515de
- https://git.kernel.org/stable/c/d3af83e327565a9444cebc0db714cb837e493046