Executive brief
A vulnerability in the Linux kernel's AMD graphics driver could allow a local user to cause a system crash. The issue occurs when the driver fails to properly verify firmware information before attempting to use it. This primarily impacts system availability, potentially leading to a denial-of-service on affected machines using AMD hardware.
Technical details
A NULL pointer dereference vulnerability exists in the AMD GPU driver (drm/amd/pm) within the Linux kernel. The root cause is located in the `init_overdrive_limits` function in `drivers/gpu/drm/amd/pm/powerplay/hwmgr/processpptables.c`, where the return value of `smu_atom_get_data_table` (specifically for the FirmwareInfo table) is not checked for NULL before being dereferenced. A local attacker with sufficient privileges to trigger power management table processing could exploit this to cause a kernel panic (Denial of Service). The issue has been resolved by adding a `PP_ASSERT_WITH_CODE` check to ensure `fw_info` is valid before use. Fixes are available in various stable kernel branches including 5.10.227, 5.15.168, 6.1.113, 6.6.55, 6.10.14, and 6.11.3.
Affected products
- Linux Linux Kernel up to (excluding) 5.10.227, 5.11 to (excluding) 5.15.168, 5.16 to (excluding) 6.1.113, 6.2 to (excluding) 6.6.55, 6.7 to (excluding) 6.10.14, 6.11 to (excluding) 6.11.3
Timeline
- 2024-10-21: disclosed
- 2024-10-21: advisory
- 2024-08-20: patched: Mainline patch date
References
- https://git.kernel.org/stable/c/016bf0294b401246471c6710c6bf9251616228b6
- https://git.kernel.org/stable/c/186fb12e7a7b038c2710ceb2fb74068f1b5d55a4
- https://git.kernel.org/stable/c/29f388945770bd0a6c82711436b2bc98b0dfac92
- https://git.kernel.org/stable/c/8adf4408d482faa51b2c14e60bfd9946ec1911a4
- https://git.kernel.org/stable/c/9550d8d6f19fac7623f044ae8d9503825b325497
- https://git.kernel.org/stable/c/b511474f49588cdca355ebfce54e7eddbf7b75a5
- https://git.kernel.org/stable/c/fd5f4ac1a986f0e7e9fa019201b5890554f87bcf