CVE-2025-39937
Description
In the Linux kernel, the following vulnerability has been resolved: net: rfkill: gpio: Fix crash due to dereferencering uninitialized pointer Since commit 7d5e9737efda ("net: rfkill: gpio: get the name and type from device property") rfkill_find_type() gets called with the possibly uninitialized "const char *type_name;" local variable. On x86 systems when rfkill-gpio binds to a "BCM4752" or "LNV4752" acpi_device, the rfkill->type is set based on the ACPI acpi_device_id: rfkill->type = (unsigned)id->driver_data; and there is no "type" property so device_property_read_string() will fail and leave type_name uninitialized, leading to a potential crash. rfkill_find_type() does accept a NULL pointer, fix the potential crash by initializing type_name to NULL. Note likely sofar this has not been caught because: 1. Not many x86 machines actually have a "BCM4752"/"LNV4752" acpi_device 2. The stack happened to contain NULL where type_name is stored
CVSS Details
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H Threat Intelligence
Weaknesses 1
Affected Products 13
| Vendor | Product | Version | Range |
|---|---|---|---|
| linux | linux_kernel | * | ≥4.6 – <5.4.300 |
| linux | linux_kernel | * | ≥5.5 – <5.10.245 |
| linux | linux_kernel | * | ≥5.11 – <5.15.194 |
| linux | linux_kernel | * | ≥5.16 – <6.1.154 |
| linux | linux_kernel | * | ≥6.2 – <6.6.108 |
| linux | linux_kernel | * | ≥6.7 – <6.12.49 |
| linux | linux_kernel | * | ≥6.13 – <6.16.9 |
| 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/184f608a68f96794e8fe58cd5535014d53622cde
- git.kernel.org https://git.kernel.org/stable/c/21a39b958b4bcf44f7674bfbbe1bbb8cad0d842d
- git.kernel.org https://git.kernel.org/stable/c/21ba85d9d508422ca9e6698463ff9357c928c22d
- git.kernel.org https://git.kernel.org/stable/c/47ade5f9d70b23a119ec20b1c6504864b2543a79
- git.kernel.org https://git.kernel.org/stable/c/689aee35ce671aab752f159e5c8e66d7685e6887
- git.kernel.org https://git.kernel.org/stable/c/8793e7a8e1b60131a825457174ed6398111daeb7
- git.kernel.org https://git.kernel.org/stable/c/ada2282259243387e6b6e89239aeb4897e62f051
- git.kernel.org https://git.kernel.org/stable/c/b6f56a44e4c1014b08859dcf04ed246500e310e5
Remediation
- git.kernel.org https://git.kernel.org/stable/c/184f608a68f96794e8fe58cd5535014d53622cde
- git.kernel.org https://git.kernel.org/stable/c/21a39b958b4bcf44f7674bfbbe1bbb8cad0d842d
- git.kernel.org https://git.kernel.org/stable/c/21ba85d9d508422ca9e6698463ff9357c928c22d
- git.kernel.org https://git.kernel.org/stable/c/47ade5f9d70b23a119ec20b1c6504864b2543a79
- git.kernel.org https://git.kernel.org/stable/c/689aee35ce671aab752f159e5c8e66d7685e6887
- git.kernel.org https://git.kernel.org/stable/c/8793e7a8e1b60131a825457174ed6398111daeb7
- git.kernel.org https://git.kernel.org/stable/c/ada2282259243387e6b6e89239aeb4897e62f051
- git.kernel.org https://git.kernel.org/stable/c/b6f56a44e4c1014b08859dcf04ed246500e310e5