In the Linux kernel, the following vulnerability has been resolved:
hwmon: (coretemp) Check for null before removing sysfs attrs
If coretempaddcore() gets an error then pdata->coredata[indx] is already NULL and has been kfreed. Don't pass that to sysfsremovegroup() as that will crash in sysfsremove_group().
[Shortened for readability] [91854.020159] sysfs: cannot create duplicate filename '/devices/platform/coretemp.0/hwmon/hwmon2/temp20label' <cpu offline> [91855.126115] BUG: kernel NULL pointer dereference, address: 0000000000000188 [91855.165103] #PF: supervisor read access in kernel mode [91855.194506] #PF: errorcode(0x0000) - not-present page [91855.224445] PGD 0 P4D 0 [91855.238508] Oops: 0000 [#1] PREEMPT SMP PTI ... [91855.342716] RIP: 0010:sysfsremovegroup+0xc/0x80 ... [91855.796571] Call Trace: [91855.810524] coretempcpuoffline+0x12b/0x1dd [coretemp] [91855.841738] ? coretempcpuonline+0x180/0x180 [coretemp] [91855.871107] cpuhpinvokecallback+0x105/0x4b0 [91855.893432] cpuhpthreadfun+0x8e/0x150 ...
Fix this by checking for NULL first.
{ "vanir_signatures": [ { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@280110db1a7d62ad635b103bafc3ae96e8bef75c", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 344.0, "function_hash": "173712459409848897262961920214301692093" }, "deprecated": false, "id": "CVE-2022-49010-16c74dd8", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a89ff5f5cc64b9fe7a992cf56988fd36f56ca82a", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-1b515ebd", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a89ff5f5cc64b9fe7a992cf56988fd36f56ca82a", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 344.0, "function_hash": "173712459409848897262961920214301692093" }, "deprecated": false, "id": "CVE-2022-49010-388cc355", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@070d5ea4a0592a37ad96ce7f7b6b024f90bb009f", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-424af19b", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ae6c8b6e5d5628df1c475c0a8fca1465e205c95b", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 344.0, "function_hash": "173712459409848897262961920214301692093" }, "deprecated": false, "id": "CVE-2022-49010-4fa47964", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@280110db1a7d62ad635b103bafc3ae96e8bef75c", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-54c73b40", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@070d5ea4a0592a37ad96ce7f7b6b024f90bb009f", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 250.0, "function_hash": "207277914634350683592129020546791501459" }, "deprecated": false, "id": "CVE-2022-49010-606b8329", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7692700ac818866d138a8de555130a6e70e6ac16", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-8f356b22", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ae6c8b6e5d5628df1c475c0a8fca1465e205c95b", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-975e6b9e", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@89eecabe6a47403237f45aafd7d24f93cb973653", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-9cce676a", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f06e0cd01eab954bd5f2190c9faa79bb5357e05b", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 344.0, "function_hash": "173712459409848897262961920214301692093" }, "deprecated": false, "id": "CVE-2022-49010-9f1cc775", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@fb503d077ff7b43913503eaf72995d1239028b99", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "31452804471426091667370183999526171889", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-a76d6b88", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7692700ac818866d138a8de555130a6e70e6ac16", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 344.0, "function_hash": "173712459409848897262961920214301692093" }, "deprecated": false, "id": "CVE-2022-49010-ee1b8b2c", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f06e0cd01eab954bd5f2190c9faa79bb5357e05b", "target": { "file": "drivers/hwmon/coretemp.c" }, "digest": { "threshold": 0.9, "line_hashes": [ "130479723451285730467607238579288079928", "258996323157848977854543232306962427711", "82456345034125134523583223136075071518" ] }, "deprecated": false, "id": "CVE-2022-49010-ee3e3dca", "signature_type": "Line", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@89eecabe6a47403237f45aafd7d24f93cb973653", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 344.0, "function_hash": "173712459409848897262961920214301692093" }, "deprecated": false, "id": "CVE-2022-49010-f3a9e814", "signature_type": "Function", "signature_version": "v1" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@fb503d077ff7b43913503eaf72995d1239028b99", "target": { "function": "coretemp_remove_core", "file": "drivers/hwmon/coretemp.c" }, "digest": { "length": 250.0, "function_hash": "207277914634350683592129020546791501459" }, "deprecated": false, "id": "CVE-2022-49010-fea4ffd9", "signature_type": "Function", "signature_version": "v1" } ] }