CVE-2026-53403

fbdev: Fix fb_new_modelist to prevent null-ptr-deref in fb_videomode_to_var

MEDIUM
5.5
CVSS Score
Published: July 19, 2026 at 12:02 PM UTC
Updated: August 17, 2026 at 05:17 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.1%

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.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

2.6.12 ≤ v < 5.10.2602.6.12 ≤ v < 5.15.2112.6.12 ≤ v < 6.1.1772.6.12 ≤ v < 6.12.952.6.12 ≤ v < 6.18.382.6.12 ≤ v < 6.6.1442.6.12 ≤ v < 7.1.32.6.12 ≤ v < 7.22.6.12.1 ≤ v < 5.10.2605.11 ≤ v < 5.15.2115.16 ≤ v < 6.1.1776.13 ≤ v < 6.18.386.19 ≤ v < 7.1.36.2 ≤ v < 6.6.1446.7 ≤ v < 6.12.951da177e4c3f41524e886b7f1b8a0c1fc7321cac22.6.122.6.12 rc22.6.12 rc32.6.12 rc42.6.12 rc5
Vendor states this is fixed in 0d8c7f21ad8529d5c181e61f86be35b887ae2e4d (fixed)
Vendor states this is fixed in 1458a4d804550b7101e8bb02c1cb941088e4c0c7 (fixed)
Vendor states this is fixed in 4f1a7fe8ba845cb7d39580755f78c3b7b9a0b61e (fixed)
Vendor states this is fixed in 7640b4f68acb54c2c4f6b4a8aee0e9849dacd929 (fixed)
Vendor states this is fixed in 7f08fc10fa3d3366dc3af723970bd03d7d6d10e3 (fixed)
Vendor states this is fixed in 8707f02ac9f5f632039b60df2c9f3dc914709f72 (fixed)
Vendor states this is fixed in 88913059c77e171f44ba829282d42dde0d458811 (fixed)
Vendor states this is fixed in eea16b6f805c0b1fb2f72f0f771088ea45356956 (fixed)
Vendor states this is fixed in 2.6.12 (unaffected)
Vendor states this is fixed in 5.10.260 (unaffected)
Vendor states this is fixed in 5.15.211 (unaffected)
Vendor states this is fixed in 6.1.177 (unaffected)
Vendor states this is fixed in 6.12.95 (unaffected)
Vendor states this is fixed in 6.18.38 (unaffected)
Vendor states this is fixed in 6.6.144 (unaffected)
Vendor states this is fixed in 7.1.3 (unaffected)
Vendor states this is fixed in 7.2 (unaffected)

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-476

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card