CVE-2025-39967
Vulnerability Summary
Timeline
Description
In the Linux kernel, the following vulnerability has been resolved: fbcon: fix integer overflow in fbcon_do_set_font Fix integer overflow vulnerabilities in fbcon_do_set_font() where font size calculations could overflow when handling user-controlled font parameters. The vulnerabilities occur when: 1. CALC_FONTSZ(h, pitch, charcount) performs h * pith * charcount multiplication with user-controlled values that can overflow. 2. FONT_EXTRA_WORDS * sizeof(int) + size addition can also overflow 3. This results in smaller allocations than expected, leading to buffer overflows during font data copying. Add explicit overflow checking using check_mul_overflow() and check_add_overflow() kernel helpers to safety validate all size calculations before allocation.
CVSS Metrics
- v3.1•HIGH•Score: 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
EPSS Trends
Current EPSS score: 0.02%• Percentile: 6%
Techniques & Countermeasures
- CWE-190•Integer Overflow or Wraparound
The product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number.
Affected Systems
- linux•linux
≥ 96e41fc29e8af5c5085fb8a79cab8d0d00bab86c, < 994bdc2d23c79087fbf7dcd9544454e8ebcef877 | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < 9c8ec14075c5317edd6b242f1be8167aa1e4e333 | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < b8a6e85328aeb9881531dbe89bcd2637a06c3c95 | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < a6eb9f423b3db000aaedf83367b8539f6b72dcfc | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < adac90bb1aaf45ca66f9db8ac100be16750ace78 | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < 4a4bac869560f943edbe3c2b032062f6673b13d3 | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < c0c01f9aa08c8e10e10e8c9ebb5be01a4eff6eb7 | ≥ 39b3cffb8cf3111738ea993e2757ab382253d86a, < 1a194e6c8e1ee745e914b0b7f50fa86c89ed13fe | ae021a904ac82d9fc81c25329d3c465c5a7d5686 | 451bffa366f2cc0e5314807cb847f31c0226efed | 2c455e9c5865861f5ce09c5f596909495ed7657c | 72f099805dbc907fbe8fa19bccdc31d3e2ee6e9e | 34cf1aff169dc6dedad8d79da7bf1b4de2773dbc | ≥ 5.4.62, < 5.4.300 | ≥ 4.4.235, < 4.5 | ≥ 4.9.235, < 4.10 | ≥ 4.14.196, < 4.15 | ≥ 4.19.143, < 4.20 | ≥ 5.8.6, < 5.9 | 5.9
- linux•linux_kernel
≥ 4.4.235, < 4.5 | ≥ 4.9.235, < 4.10 | ≥ 4.14.196, < 4.15 | ≥ 4.19.143, < 4.20 | ≥ 5.4.62, < 5.4.300 | ≥ 5.8.6, < 5.9 | ≥ 5.9.1, < 5.10.245 | ≥ 5.11, < 5.15.194 | ≥ 5.16, < 6.1.155 | ≥ 6.2, < 6.6.109 | ≥ 6.7, < 6.12.50 | ≥ 6.13, < 6.16.10 | 5.9 | 5.9:rc3 | 5.9:rc4 | 5.9:rc5 | 5.9:rc6 | 5.9:rc7 | 5.9:rc8 | 6.17:rc1 | 6.17:rc2 | 6.17:rc3 | 6.17:rc4 | 6.17:rc5 | 6.17:rc6 | 6.17:rc7
References (8)
- https://git.kernel.org/stable/c/994bdc2d23c79087fbf7dcd9544454e8ebcef877
- https://git.kernel.org/stable/c/9c8ec14075c5317edd6b242f1be8167aa1e4e333
- https://git.kernel.org/stable/c/b8a6e85328aeb9881531dbe89bcd2637a06c3c95
- https://git.kernel.org/stable/c/a6eb9f423b3db000aaedf83367b8539f6b72dcfc
- https://git.kernel.org/stable/c/adac90bb1aaf45ca66f9db8ac100be16750ace78
- https://git.kernel.org/stable/c/4a4bac869560f943edbe3c2b032062f6673b13d3
- https://git.kernel.org/stable/c/c0c01f9aa08c8e10e10e8c9ebb5be01a4eff6eb7
- https://git.kernel.org/stable/c/1a194e6c8e1ee745e914b0b7f50fa86c89ed13fe