CVE-2025-68181
NoneCVSS
—
EPSS
0.1%
Published
Dec 16, 2025
CISA due date
—
Cloudanix analysis
A graphics driver bug can cause warning messages or instability when certain older video cards fail to start correctly.
- Exploitation
- Local Privilege
- Attacker needs
- Local User
- Complexity
- High
- Impact
- Other
- Component
- OS kernel
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Double invocation of drm_put_dev() on a device allocated via devm_drm_dev_alloc() in radeon probe error and remove paths triggers refcount underflow and use-after-free.
Why it matters to the business
Systems using older Radeon hardware may experience kernel warnings, potential instability, or crashes during driver load failures; low active threat but affects kernel stability on affected distributions.
How an attack unfolds
An attacker with local access induces a deliberate probe failure in the radeon driver to exercise the still-present drm_put_dev() call after devres has already freed the structure, producing the refcount underflow condition.
How to fix it
Update the Linux kernel to a version containing commit 2fa41445d8c98f2a65503c373796466496edc0e7 (or the equivalent cherry-pick 3eb8c0b4c091da0a623ade0d3ee7aa4a93df1ea4) that removes the remaining drm_put_dev() calls from error paths.
How to confirm the fix worked
Reproduce a radeon probe failure after patching and confirm the refcount underflow warning no longer appears; inspect dmesg for absence of the specific warning string.
Typical attack path
- Obtain local execution context on a system with radeon hardware
- Trigger conditions that cause the radeon driver probe to fail
- Observe or exploit the resulting refcount underflow warning and potential use-after-free
How to detect it
Search kernel logs (dmesg, journalctl) for the exact strings indicating radeon probe failure followed by the refcount underflow warning; correlate with any subsequent use-after-free reports.
- refcount_t: underflow; use-after-free.
- radeon .* probe with driver radeon failed with error -22
- WARNING: CPU: .* at lib/refcount.c:28 refcount_warn_saturate
What your security team should do
- Prioritize kernel updates on systems exposing Radeon hardware
- Add the probe-failure warning strings to SIEM rules for early detection
- Review downstream distributions for backported fixes given the 315-day publication age
The record
In the Linux kernel, the following vulnerability has been resolved: drm/radeon: Remove calls to drm_put_dev() Since the allocation of the drivers main structure was changed to devm_drm_dev_alloc() drm_put_dev()'ing to trigger it to be free'd should be done by devres. However, drm_put_dev() is still in the probe error and device remove paths. When the driver fails to probe warnings like the following are shown because devres is trying to drm_put_dev() after the driver already did it. [ 5.642230] radeon 0000:01:05.0: probe with driver radeon failed with error -22 [ 5.649605] ------------[ cut here ]------------ [ 5.649607] refcount_t: underflow; use-after-free. [ 5.649620] WARNING: CPU: 0 PID: 357 at lib/refcount.c:28 refcount_warn_saturate+0xbe/0x110 (cherry picked from commit 3eb8c0b4c091da0a623ade0d3ee7aa4a93df1ea4)
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Linux | Kernel | 6.12.0 | 6.12.58 |
| openSUSE:Leap 16.0 | dtb-aarch64 | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-64kb | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-azure | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-default | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-default-base | 0 | 6.12.0-160000.9.1.160000.2.6 |
| openSUSE:Leap 16.0 | kernel-docs | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-kvmsmall | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-obs-build | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-obs-qa | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-rt | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-source | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-syms | 0 | 6.12.0-160000.9.1 |
| openSUSE:Leap 16.0 | kernel-zfcpdump | 0 | 6.12.0-160000.9.1 |
Related vulnerabilities
- CVE-2026-23226 In the Linux kernel, the following vulnerability has been resolved: ksmbd: add chann_lock… Also affects Kernel
- CVE-2026-23225 In the Linux kernel, the following vulnerability has been resolved: sched/mmcid: Don't… Also affects Kernel
- CVE-2026-23230 In the Linux kernel, the following vulnerability has been resolved: smb: client: split… Also affects Kernel
- CVE-2026-23224 In the Linux kernel, the following vulnerability has been resolved: erofs: fix UAF issue… Also affects Kernel
- CVE-2026-23227 In the Linux kernel, the following vulnerability has been resolved: drm/exynos: vidi: use… Also affects Kernel
- CVE-2026-23223 In the Linux kernel, the following vulnerability has been resolved: xfs: fix UAF in… Also affects Kernel
- CVE-2026-23228 In the Linux kernel, the following vulnerability has been resolved: smb: server: fix leak… Also affects Kernel
- CVE-2026-23229 In the Linux kernel, the following vulnerability has been resolved: crypto: virtio - Add… Also affects Kernel