Overview
About vulnerability
In the Linux kernel, the following vulnerability has been resolved:
drm/amd/display: Validate payload length and link_index in dc_process_dmub_aux_transfer_async
[Why&How] dc_process_dmub_aux_transfer_async() copies payload->length bytes into a 16-byte stack buffer (dpaux.data[16]) guarded only by an ASSERT(), which is a no-op in release builds. If a caller ever passes length > 16 this results in a stack buffer overflow via memcpy.
Additionally, link_index is used to dereference dc->links[] without bounds checking against dc->link_count, risking an out-of-bounds access.
Replace the ASSERT with a hard runtime check that returns false when payload->length exceeds the destination buffer size, and add a bounds check for link_index before it is used.
(cherry picked from commit ba4caa9fecdf7a38f98c878ad05a8a64148b6881)
Details
- Affected product:
- AlmaLinux 9.2 ESU , CentOS 8.4 ELS , CentOS 8.5 ELS , CentOS Stream 8 ELS , TuxCare 9.6 ESU , Ubuntu 20.04 ELS
- Affected packages:
- kernel @ 5.14.0 (+5 more)
Fixes
KernelCare state
Live-patch status from KernelCare for each operating system.
| Operating system | Status | Covered kernels |
|---|---|---|
| AlmaLinux 10 | Released |
60 kernels
|
| AlmaLinux 8 | In Rollout |
109 kernels
|
| AlmaLinux 9 | Released |
126 kernels
|
| AlmaLinux 9.2 ESU | Released |
32 kernels
|
| AlmaLinux 9.6 ESU | Released |
18 kernels
|
| CloudLinux OS 7h | Released |
94 kernels
|
| CloudLinux OS 8 | Released |
1 kernel
|
| Debian 12 | Planned | — |
| Oracle Linux 10 | Released |
46 kernels
|
| Oracle Linux 8 | In Rollout |
105 kernels
|
| Oracle Linux 9 | Released |
125 kernels
|
| RHEL 10 | Released |
60 kernels
|
| RHEL 8 | In Rollout |
102 kernels
|
| RHEL 9 | Released |
124 kernels
|
| Rocky Linux 10 | Released |
43 kernels
|
| Rocky Linux 8 | In Rollout |
92 kernels
|
| Rocky Linux 9 | Released |
101 kernels
|
| Ubuntu 24.04 | Planned | — |