fbdev: core: fbcvt: avoid division by 0 in fb_cvt_hperiod()
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 5.4.295, 5.10.239, 5.15.186, 6.1.142, 6.6.94, and 2 more
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: fbdev: core: fbcvt: avoid division by 0 in fb_cvt_hperiod() In fb_find_mode_cvt(), iff mode->refresh somehow happens to be 0x80000000, cvt.f_refresh will become 0 when multiplying it by 2 due to overflow. It's then passed to fb_cvt_hperiod(), where it's used as a divider -- division by 0 will result in kernel oops. Add a sanity check for cvt.f_refresh to avoid such overflow... Found by Linux Verification Center (linuxtesting.org) with the Svace static analysis tool.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in 9027ce4c037b566b658b8939a76326b7125e3627; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in 610f247f2772e4f92b63442125a1b7ade79898d8; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in 2d63433e8eaa3c91b2948190e395bc67009db0d9; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in 54947530663edcbaaee1314c01fdd8c72861b124; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in ab91647acdf43b984824776559a452212eaeb21a; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in b235393b9f43ff86a38ca2bde6372312ea215dc5; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in 53784073cbad18f75583fd3da9ffdfc4d1f05405; From 96fe6a2109db29cd15b90a093c16e6cb4b19371a · fixed in 3f6dae09fc8c306eb70fdfef70726e1f154e173a
- Linux Linux
2.6.14
- KernelLinux
From 2.6.14 · fixed in 5.4.295; From 5.5.0 · fixed in 5.10.239; From 5.11.0 · fixed in 5.15.186; From 5.16.0 · fixed in 6.1.142; From 6.2.0 · fixed in 6.6.94; From 6.7.0 · fixed in 6.12.34; From 6.13.0 · fixed in 6.15.3
References 8
git.kernel.org
- stable/c/9027ce4c037b566b658b8939a76326b7125e3627
- stable/c/610f247f2772e4f92b63442125a1b7ade79898d8
- stable/c/2d63433e8eaa3c91b2948190e395bc67009db0d9
- stable/c/54947530663edcbaaee1314c01fdd8c72861b124
- stable/c/ab91647acdf43b984824776559a452212eaeb21a
- stable/c/b235393b9f43ff86a38ca2bde6372312ea215dc5
- stable/c/53784073cbad18f75583fd3da9ffdfc4d1f05405
- stable/c/3f6dae09fc8c306eb70fdfef70726e1f154e173a