CVE-2023-52504

Source
https://cve.org/CVERecord?id=CVE-2023-52504
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-52504.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2023-52504
Downstream
Related
Published
2024-03-02T21:52:18.500Z
Modified
2026-04-11T12:46:31.728730Z
Summary
x86/alternatives: Disable KASAN in apply_alternatives()
Details

In the Linux kernel, the following vulnerability has been resolved:

x86/alternatives: Disable KASAN in apply_alternatives()

Fei has reported that KASAN triggers during apply_alternatives() on a 5-level paging machine:

BUG: KASAN: out-of-bounds in rcu_is_watching()
Read of size 4 at addr ff110003ee6419a0 by task swapper/0/0
...
__asan_load4()
rcu_is_watching()
trace_hardirqs_on()
text_poke_early()
apply_alternatives()
...

On machines with 5-level paging, cpufeatureenabled(X86FEATURELA57) gets patched. It includes KASAN code, where KASANSHADOWSTART depends on __VIRTUALMASKSHIFT, which is defined with cpufeatureenabled().

KASAN gets confused when applyalternatives() patches the KASANSHADOWSTART users. A test patch that makes KASANSHADOW_START static, by replacing __VIRTUALMASKSHIFT with 56, works around the issue.

Fix it for real by disabling KASAN while the kernel is patching alternatives.

[ mingo: updated the changelog ]

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/52xxx/CVE-2023-52504.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
6657fca06e3ffab8d0b3f9d8b397f5ee498952d7
Fixed
3719d3c36aa853d5a2401af9f8d6b116c91ad5ae
Fixed
3770c38cd6a60494da29ac2da73ff8156440a2d1
Fixed
6788b10620ca6e98575d1e06e72a8974aad7657e
Fixed
ecba5afe86f30605eb9dfb7f265a8de0218d4cfc
Fixed
5b784489c8158518bf7a466bb3cc045b0fb66b4b
Fixed
cd287cc208dfe6bd6da98e7f88e723209242c9b4
Fixed
d35652a5fc9944784f6f50a5c979518ff8dacf61

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-52504.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
4.17.0
Fixed
4.19.297
Type
ECOSYSTEM
Events
Introduced
4.20.0
Fixed
5.4.270
Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.199
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.136
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.59
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.5.8

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-52504.json"