In the Linux kernel, the following vulnerability has been resolved:
arm64: acpi: Harden getcpuforacpiid() against missing CPU entry
In a review discussion of the changes to support vCPU hotplug where a check was added on the GICC being enabled if was online, it was noted that there is need to map back to the cpu and use that to index into a cpumask. As such, a valid ID is needed.
If an MPIDR check fails in acpimapgiccpuinterface() it is possible for the entry in cpumadtgicc[cpu] == NULL. This function would then cause a NULL pointer dereference. Whilst a path to trigger this has not been established, harden this caller against the possibility.
{ "vanir_signatures": [ { "id": "CVE-2024-46822-16068dec", "signature_type": "Line", "target": { "file": "arch/arm64/include/asm/acpi.h" }, "deprecated": false, "digest": { "line_hashes": [ "195186173110001604958068329548453650951", "230407776603505782192195688577595764544", "301127848822754738384706668781296133747", "18247816427656838444061011758392164431" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4c3b21204abb4fa3ab310fbbb5cf7f0e85f3a1bc" }, { "id": "CVE-2024-46822-3bb4b68c", "signature_type": "Function", "target": { "file": "arch/arm64/include/asm/acpi.h", "function": "get_cpu_for_acpi_id" }, "deprecated": false, "digest": { "length": 168.0, "function_hash": "103677700803697265980594707871853033671" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@945be49f4e832a9184c313fdf8917475438a795b" }, { "id": "CVE-2024-46822-69d1c89a", "signature_type": "Function", "target": { "file": "arch/arm64/include/asm/acpi.h", "function": "get_cpu_for_acpi_id" }, "deprecated": false, "digest": { "length": 168.0, "function_hash": "103677700803697265980594707871853033671" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@40cae0df42e5e7f7a1c0f32deed9c4027c1ba94e" }, { "id": "CVE-2024-46822-ac50498f", "signature_type": "Line", "target": { "file": "arch/arm64/include/asm/acpi.h" }, "deprecated": false, "digest": { "line_hashes": [ "195186173110001604958068329548453650951", "230407776603505782192195688577595764544", "301127848822754738384706668781296133747", "18247816427656838444061011758392164431" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@40cae0df42e5e7f7a1c0f32deed9c4027c1ba94e" }, { "id": "CVE-2024-46822-d8558b93", "signature_type": "Function", "target": { "file": "arch/arm64/include/asm/acpi.h", "function": "get_cpu_for_acpi_id" }, "deprecated": false, "digest": { "length": 168.0, "function_hash": "103677700803697265980594707871853033671" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4c3b21204abb4fa3ab310fbbb5cf7f0e85f3a1bc" }, { "id": "CVE-2024-46822-e75a5687", "signature_type": "Line", "target": { "file": "arch/arm64/include/asm/acpi.h" }, "deprecated": false, "digest": { "line_hashes": [ "195186173110001604958068329548453650951", "230407776603505782192195688577595764544", "301127848822754738384706668781296133747", "18247816427656838444061011758392164431" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@945be49f4e832a9184c313fdf8917475438a795b" } ] }