CVE-2025-39967
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 Details
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H Threat Intelligence
Weaknesses 1
Affected Products 26
| Vendor | Product | Version | Range |
|---|---|---|---|
| linux | linux_kernel | * | ≥4.4.235 – <4.5 |
| linux | linux_kernel | * | ≥4.9.235 – <4.10 |
| linux | linux_kernel | * | ≥4.14.196 – <4.15 |
| linux | linux_kernel | * | ≥4.19.143 – <4.20 |
| linux | linux_kernel | * | ≥5.4.62 – <5.4.300 |
| linux | linux_kernel | * | ≥5.8.6 – <5.9 |
| linux | linux_kernel | * | ≥5.9.1 – <5.10.245 |
| linux | linux_kernel | * | ≥5.11 – <5.15.194 |
| linux | linux_kernel | * | ≥5.16 – <6.1.155 |
| linux | linux_kernel | * | ≥6.2 – <6.6.109 |
| linux | linux_kernel | * | ≥6.7 – <6.12.50 |
| linux | linux_kernel | * | ≥6.13 – <6.16.10 |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 5.9 | any |
| linux | linux_kernel | 6.17 | any |
| linux | linux_kernel | 6.17 | any |
| linux | linux_kernel | 6.17 | any |
| linux | linux_kernel | 6.17 | any |
| linux | linux_kernel | 6.17 | any |
| linux | linux_kernel | 6.17 | any |
| linux | linux_kernel | 6.17 | any |
References 8
- git.kernel.org https://git.kernel.org/stable/c/1a194e6c8e1ee745e914b0b7f50fa86c89ed13fe
- git.kernel.org https://git.kernel.org/stable/c/4a4bac869560f943edbe3c2b032062f6673b13d3
- git.kernel.org https://git.kernel.org/stable/c/994bdc2d23c79087fbf7dcd9544454e8ebcef877
- git.kernel.org https://git.kernel.org/stable/c/9c8ec14075c5317edd6b242f1be8167aa1e4e333
- git.kernel.org https://git.kernel.org/stable/c/a6eb9f423b3db000aaedf83367b8539f6b72dcfc
- git.kernel.org https://git.kernel.org/stable/c/adac90bb1aaf45ca66f9db8ac100be16750ace78
- git.kernel.org https://git.kernel.org/stable/c/b8a6e85328aeb9881531dbe89bcd2637a06c3c95
- git.kernel.org https://git.kernel.org/stable/c/c0c01f9aa08c8e10e10e8c9ebb5be01a4eff6eb7
Remediation
- git.kernel.org https://git.kernel.org/stable/c/1a194e6c8e1ee745e914b0b7f50fa86c89ed13fe
- git.kernel.org https://git.kernel.org/stable/c/4a4bac869560f943edbe3c2b032062f6673b13d3
- git.kernel.org https://git.kernel.org/stable/c/994bdc2d23c79087fbf7dcd9544454e8ebcef877
- git.kernel.org https://git.kernel.org/stable/c/9c8ec14075c5317edd6b242f1be8167aa1e4e333
- git.kernel.org https://git.kernel.org/stable/c/a6eb9f423b3db000aaedf83367b8539f6b72dcfc
- git.kernel.org https://git.kernel.org/stable/c/adac90bb1aaf45ca66f9db8ac100be16750ace78
- git.kernel.org https://git.kernel.org/stable/c/b8a6e85328aeb9881531dbe89bcd2637a06c3c95
- git.kernel.org https://git.kernel.org/stable/c/c0c01f9aa08c8e10e10e8c9ebb5be01a4eff6eb7