Severity by source
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
AC:H reflects kernel maintainers' own statement that device_register() failure is extremely rare; all other metrics match the provided vector.
Primary rating from Vendor (Linux).
CVSS VectorVendor: Linux
Lifecycle Timeline
6DescriptionCVE.org
In the Linux kernel, the following vulnerability has been resolved:
Revert "media: v4l2-dev: fix error handling in __video_register_device()"
This reverts commit 2a934fdb01db6458288fc9386d3d8ceba6dd551a.
The intentions of that patch were good, but it doesn't work.
The idea is that if device_register fails, you have to do a put_device to let the ref counter release resources.
However, the V4L2 API says that if video_register_device() fails, then you have to call video_device_release(), which kfree()s the video_device struct.
But the put_device() will already have freed the struct, so you end up in a double-free scenario.
There is not really a good way of fixing this without breaking video_register_device() into two parts, one that initializes everything, and one that does the actual device_register, and then converting all V4L2 drivers to this new model.
That is a massive job, and it is very unlikely that device_register will fail.
So rather than ending up in a double-free scenario, just revert this patch, and in that case we'll have a small memory leak. Which is a lot more robust.
AnalysisAI
Double-free memory corruption in the Linux kernel V4L2 (Video for Linux 2) subsystem exists in the error-handling path of __video_register_device() after a prior patch introduced a put_device() call on device_register() failure. Because the V4L2 API contract requires callers to invoke video_device_release() - which kfree()s the video_device struct - on registration failure, the intermediate put_device() frees the struct first, causing a subsequent double-free. …
Unlock full vulnerability intelligence
- Risk assessment & exploitation conditions
- Attack chain visualization
- Remediation with exact patch versions
- Threat intelligence from 22 sources
- Personal watchlist & email alerts
Free forever · No credit card required
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata
Vulnerability AssessmentAI
| Exploitation | Exploitation requires: (1) local access with at least low-privilege user credentials (PR:L per CVSS); (2) a Linux kernel build containing commit 2a934fdb01db6458288fc9386d3d8ceba6dd551a but not the revert; (3) the ability to trigger or wait for a device_register() failure in __video_register_device() - an event the kernel maintainers describe as 'very unlikely'; (4) a system with V4L2 media device support compiled in and an active video device driver. … Additional conditions and limiting factors are described in the full assessment. |
| Risk Assessment | The provided CVSS 7.8 (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) overstates practical risk. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in. |
| Exploit Scenario | Full exploit scenario with step-by-step reproduction available after sign-in. |
| Remediation | Vendor-released patches are available: Linux 5.4.295, 5.10.239, 5.15.186, 6.1.142, 6.6.95, 6.12.109, 6.15.4, 6.18.50, 7.2.4, and 7.3-rc1 all contain the revert commit. … Detailed patch versions, workarounds, and compensating controls in full report. |
Recommended ActionAI
Within 24 hours, identify all Linux systems running video device drivers or V4L2-dependent applications, including video conferencing platforms and camera hardware. …
Sign in for detailed remediation steps and compensating controls.
Threat intelligence, references, and detailed analysis are available after sign-in.
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-76653
GHSA-x4c4-qfr2-c3vv