CVE-2026-53403: Linux kernel · fbdev: Fix fb_new_modelist to prevent null-ptr-deref in fb_videomode_to_var
Affects Linux kernelSource CVE Database V5
Not known to be exploited · fixed in eea16b6f805c0b1fb2f72f0f771088ea45356956 : update Linux kernel when convenient.
Data as of 6 Nov 2026, 16:49 UTC
Rated by Threat Radar · No CVSS score from NVD or the CNA
Thin evidence
One scorer or none- CISA SSVC
- Exploitation
- No evidence of active exploitation and no public proof of concept
- Automatable
- Attackers cannot reliably automate steps 1–4 of the kill chain
- Technical impact
- Limited control over the software or limited information exposure
CISA SSVC assessment, 2026-11-06.
- Patch
- Available – fixed in eea16b6f805c0b1fb2f72f0f771088ea45356956, 88913059c77e171f44ba829282d42dde0d458811, 8707f02ac9f5f632039b60df2c9f3dc914709f72 +5
Exploitation evidence
Disclosed: evidence found.
CVE published 19 Jul 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 6 Nov 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in
|
Description
In the Linux kernel, the following vulnerability has been resolved: fbdev: Fix fb_new_modelist to prevent null-ptr-deref in fb_videomode_to_var info->var, a framebuffer's current mode, is expected to have a matching entry in info->modelist. var_to_display() relies on this and treats a failed fb_match_mode() as "This should not happen". fb_set_var() keeps it true by adding the mode to the list on every change, and do_register_framebuffer() does the same at registration. store_modes() replaces the modelist from userspace. fb_new_modelist() validates the new modes but does not check that info->var still has a match. It relies on fbcon_new_modelist() to re-point consoles, but that only handles consoles mapped to the framebuffer. With fbcon unbound there are none, so info->var is left describing a mode that is no longer in the list. A later console takeover runs var_to_display(), where fb_match_mode() returns NULL and leaves fb_display[i].mode NULL. fbcon_switch() passes it to display_to_var(), and fb_videomode_to_var() dereferences the NULL mode. Keep the current mode in the list in fb_new_modelist(), the same way fb_set_var() does.
References
- git.kernel.org/stable/c/1458a4d804550b7101e8bb02c1cb941088e4c0c7 (opens in a new tab)
- git.kernel.org/stable/c/8707f02ac9f5f632039b60df2c9f3dc914709f72 (opens in a new tab)
- git.kernel.org/stable/c/0d8c7f21ad8529d5c181e61f86be35b887ae2e4d (opens in a new tab)
- git.kernel.org/stable/c/7640b4f68acb54c2c4f6b4a8aee0e9849dacd929 (opens in a new tab)
- git.kernel.org/stable/c/4f1a7fe8ba845cb7d39580755f78c3b7b9a0b61e (opens in a new tab)
- git.kernel.org/stable/c/eea16b6f805c0b1fb2f72f0f771088ea45356956 (opens in a new tab)
- git.kernel.org/stable/c/88913059c77e171f44ba829282d42dde0d458811 (opens in a new tab)
- git.kernel.org/stable/c/7f08fc10fa3d3366dc3af723970bd03d7d6d10e3 (opens in a new tab)