CVE-2022-50102: video: fbdev: arkfb: Fix a divide-by-zero bug in ark_set_pixclock()
In the Linux kernel, the following vulnerability has been resolved:
video: fbdev: arkfb: Fix a divide-by-zero bug in ark_set_pixclock()
Since the user can control the arguments of the ioctl() from the user
space, under special arguments that may result in a divide-by-zero bug
in:
drivers/video/fbdev/arkfb.c:784: ark_set_pixclock(info, (hdiv * info->var.pixclock) / hmul);
with hdiv=1, pixclock=1 and hmul=2 you end up with (1*1)/2 = (int) 0.
and then in:
drivers/video/fbdev/arkfb.c:504: rv = dac_set_freq(par->dac, 0, 1000000000 / pixclock);
we'll get a division-by-zero.
The following log can reveal it:
divide error: 0000 [#1] PREEMPT SMP KASAN PTI
RIP: 0010:ark_set_pixclock drivers/video/fbdev/arkfb.c:504 [inline]
RIP: 0010:arkfb_set_par+0x10fc/0x24c0 drivers/video/fbdev/arkfb.c:784
Call Trace:
fb_set_var+0x604/0xeb0 drivers/video/fbdev/core/fbmem.c:1034
do_fb_ioctl+0x234/0x670 drivers/video/fbdev/core/fbmem.c:1110
fb_ioctl+0xdd/0x130 drivers/video/fbdev/core/fbmem.c:1189
Fix this by checking the argument of ark_set_pixclock() first.
Security readout for executives and security teams
Plain-English summary
CVE-2022-50102 is a Linux kernel bug in the arkfb framebuffer driver. A local user can supply framebuffer ioctl values that cause a divide-by-zero in kernel code, likely crashing the system. The sources do not show remote exposure, privilege escalation, or active exploitation.
Executive priority
Treat as routine kernel hygiene unless affected systems expose local framebuffer access to untrusted users. Patch through normal kernel maintenance, with higher priority for shared, kiosk, embedded, or multi-user devices.
Technical view
The bug is in drivers/video/fbdev/arkfb.c. User-controlled ioctl input can make ark_set_pixclock() receive a zero pixclock after integer division, then divide by that value. The upstream fix checks the argument before use. Impact evidence supports local denial of service, not code execution.
Likely exposure
Exposure appears limited to Linux systems using or carrying the arkfb framebuffer driver with reachable framebuffer ioctl access. This is likely niche, especially in server environments, but embedded, legacy graphics, or custom kernels should be checked.
Exploitation context
The CVE record describes a user-space controlled ioctl path and a kernel divide error trace. CISA KEV status is false in the supplied bundle, and no cited source reports exploitation in the wild.
Researcher notes
The supplied data lacks CVSS, CWE, and detailed vendor matrices. The strongest evidence is the kernel fix description and stable commit references. Analysis should avoid claiming privilege escalation, remote attack, or exploitation without additional sources.
Mitigation direction
Update to a vendor kernel containing the referenced stable arkfb fix.
Confirm downstream kernels have backported the ark_set_pixclock() argument check.
If unsure, follow Linux distribution or device vendor guidance.
Prioritize systems where untrusted local users can access framebuffer devices.
Validation and detection
Inventory Linux kernel versions and framebuffer driver configuration.
Check whether arkfb is built, loaded, or exposed on affected systems.
Verify the fixed stable commit or vendor backport is present.
Review local access controls for framebuffer device nodes.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2022-50102 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
9Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Jun 18, 2025, 11:02 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.