Vulnerability Details CVE-2023-53557
In the Linux kernel, the following vulnerability has been resolved:
fprobe: Release rethook after the ftrace_ops is unregistered
While running bpf selftests it's possible to get following fault:
general protection fault, probably for non-canonical address \
0x6b6b6b6b6b6b6b6b: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC NOPTI
...
Call Trace:
<TASK>
fprobe_handler+0xc1/0x270
? __pfx_bpf_testmod_init+0x10/0x10
? __pfx_bpf_testmod_init+0x10/0x10
? bpf_fentry_test1+0x5/0x10
? bpf_fentry_test1+0x5/0x10
? bpf_testmod_init+0x22/0x80
? do_one_initcall+0x63/0x2e0
? rcu_is_watching+0xd/0x40
? kmalloc_trace+0xaf/0xc0
? do_init_module+0x60/0x250
? __do_sys_finit_module+0xac/0x120
? do_syscall_64+0x37/0x90
? entry_SYSCALL_64_after_hwframe+0x72/0xdc
</TASK>
In unregister_fprobe function we can't release fp->rethook while it's
possible there are some of its users still running on another cpu.
Moving rethook_free call after fp->ops is unregistered with
unregister_ftrace_function call.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.0
EPSS Ranking 5.7%
CVSS Severity
CVSS v3 Score 5.5
Products affected by CVE-2023-53557
-
cpe:2.3:o:linux:linux_kernel:5.18
-
cpe:2.3:o:linux:linux_kernel:5.18.1
-
cpe:2.3:o:linux:linux_kernel:5.18.10
-
cpe:2.3:o:linux:linux_kernel:5.18.11
-
cpe:2.3:o:linux:linux_kernel:5.18.12
-
cpe:2.3:o:linux:linux_kernel:5.18.13
-
cpe:2.3:o:linux:linux_kernel:5.18.14
-
cpe:2.3:o:linux:linux_kernel:5.18.15
-
cpe:2.3:o:linux:linux_kernel:5.18.16
-
cpe:2.3:o:linux:linux_kernel:5.18.17
-
cpe:2.3:o:linux:linux_kernel:5.18.18
-
cpe:2.3:o:linux:linux_kernel:5.18.19
-
cpe:2.3:o:linux:linux_kernel:5.18.2
-
cpe:2.3:o:linux:linux_kernel:5.18.3
-
cpe:2.3:o:linux:linux_kernel:5.18.4
-
cpe:2.3:o:linux:linux_kernel:5.18.5
-
cpe:2.3:o:linux:linux_kernel:5.18.6
-
cpe:2.3:o:linux:linux_kernel:5.18.7
-
cpe:2.3:o:linux:linux_kernel:5.18.8
-
cpe:2.3:o:linux:linux_kernel:5.18.9
-
cpe:2.3:o:linux:linux_kernel:5.19
-
cpe:2.3:o:linux:linux_kernel:5.19.1
-
cpe:2.3:o:linux:linux_kernel:5.19.10
-
cpe:2.3:o:linux:linux_kernel:5.19.11
-
cpe:2.3:o:linux:linux_kernel:5.19.12
-
cpe:2.3:o:linux:linux_kernel:5.19.13
-
cpe:2.3:o:linux:linux_kernel:5.19.14
-
cpe:2.3:o:linux:linux_kernel:5.19.15
-
cpe:2.3:o:linux:linux_kernel:5.19.16
-
cpe:2.3:o:linux:linux_kernel:5.19.17
-
cpe:2.3:o:linux:linux_kernel:5.19.2
-
cpe:2.3:o:linux:linux_kernel:5.19.3
-
cpe:2.3:o:linux:linux_kernel:5.19.4
-
cpe:2.3:o:linux:linux_kernel:5.19.5
-
cpe:2.3:o:linux:linux_kernel:5.19.6
-
cpe:2.3:o:linux:linux_kernel:5.19.7
-
cpe:2.3:o:linux:linux_kernel:5.19.8
-
cpe:2.3:o:linux:linux_kernel:5.19.9
-
cpe:2.3:o:linux:linux_kernel:6.0
-
cpe:2.3:o:linux:linux_kernel:6.0.1
-
cpe:2.3:o:linux:linux_kernel:6.0.10
-
cpe:2.3:o:linux:linux_kernel:6.0.11
-
cpe:2.3:o:linux:linux_kernel:6.0.12
-
cpe:2.3:o:linux:linux_kernel:6.0.13
-
cpe:2.3:o:linux:linux_kernel:6.0.14
-
cpe:2.3:o:linux:linux_kernel:6.0.15
-
cpe:2.3:o:linux:linux_kernel:6.0.16
-
cpe:2.3:o:linux:linux_kernel:6.0.17
-
cpe:2.3:o:linux:linux_kernel:6.0.18
-
cpe:2.3:o:linux:linux_kernel:6.0.19
-
cpe:2.3:o:linux:linux_kernel:6.0.2
-
cpe:2.3:o:linux:linux_kernel:6.0.3
-
cpe:2.3:o:linux:linux_kernel:6.0.4
-
cpe:2.3:o:linux:linux_kernel:6.0.5
-
cpe:2.3:o:linux:linux_kernel:6.0.6
-
cpe:2.3:o:linux:linux_kernel:6.0.7
-
cpe:2.3:o:linux:linux_kernel:6.0.8
-
cpe:2.3:o:linux:linux_kernel:6.0.9
-
cpe:2.3:o:linux:linux_kernel:6.1
-
cpe:2.3:o:linux:linux_kernel:6.1.0
-
cpe:2.3:o:linux:linux_kernel:6.1.1
-
cpe:2.3:o:linux:linux_kernel:6.1.10
-
cpe:2.3:o:linux:linux_kernel:6.1.11
-
cpe:2.3:o:linux:linux_kernel:6.1.12
-
cpe:2.3:o:linux:linux_kernel:6.1.13
-
cpe:2.3:o:linux:linux_kernel:6.1.14
-
cpe:2.3:o:linux:linux_kernel:6.1.15
-
cpe:2.3:o:linux:linux_kernel:6.1.16
-
cpe:2.3:o:linux:linux_kernel:6.1.17
-
cpe:2.3:o:linux:linux_kernel:6.1.18
-
cpe:2.3:o:linux:linux_kernel:6.1.19
-
cpe:2.3:o:linux:linux_kernel:6.1.2
-
cpe:2.3:o:linux:linux_kernel:6.1.20
-
cpe:2.3:o:linux:linux_kernel:6.1.21
-
cpe:2.3:o:linux:linux_kernel:6.1.22
-
cpe:2.3:o:linux:linux_kernel:6.1.23
-
cpe:2.3:o:linux:linux_kernel:6.1.24
-
cpe:2.3:o:linux:linux_kernel:6.1.25
-
cpe:2.3:o:linux:linux_kernel:6.1.26
-
cpe:2.3:o:linux:linux_kernel:6.1.27
-
cpe:2.3:o:linux:linux_kernel:6.1.28
-
cpe:2.3:o:linux:linux_kernel:6.1.29
-
cpe:2.3:o:linux:linux_kernel:6.1.3
-
cpe:2.3:o:linux:linux_kernel:6.1.30
-
cpe:2.3:o:linux:linux_kernel:6.1.31
-
cpe:2.3:o:linux:linux_kernel:6.1.32
-
cpe:2.3:o:linux:linux_kernel:6.1.33
-
cpe:2.3:o:linux:linux_kernel:6.1.34
-
cpe:2.3:o:linux:linux_kernel:6.1.35
-
cpe:2.3:o:linux:linux_kernel:6.1.36
-
cpe:2.3:o:linux:linux_kernel:6.1.37
-
cpe:2.3:o:linux:linux_kernel:6.1.38
-
cpe:2.3:o:linux:linux_kernel:6.1.39
-
cpe:2.3:o:linux:linux_kernel:6.1.4
-
cpe:2.3:o:linux:linux_kernel:6.1.5
-
cpe:2.3:o:linux:linux_kernel:6.1.6
-
cpe:2.3:o:linux:linux_kernel:6.1.7
-
cpe:2.3:o:linux:linux_kernel:6.1.8
-
cpe:2.3:o:linux:linux_kernel:6.1.9
-
cpe:2.3:o:linux:linux_kernel:6.2
-
cpe:2.3:o:linux:linux_kernel:6.2.0
-
cpe:2.3:o:linux:linux_kernel:6.2.1
-
cpe:2.3:o:linux:linux_kernel:6.2.10
-
cpe:2.3:o:linux:linux_kernel:6.2.11
-
cpe:2.3:o:linux:linux_kernel:6.2.12
-
cpe:2.3:o:linux:linux_kernel:6.2.13
-
cpe:2.3:o:linux:linux_kernel:6.2.14
-
cpe:2.3:o:linux:linux_kernel:6.2.15
-
cpe:2.3:o:linux:linux_kernel:6.2.16
-
cpe:2.3:o:linux:linux_kernel:6.2.2
-
cpe:2.3:o:linux:linux_kernel:6.2.3
-
cpe:2.3:o:linux:linux_kernel:6.2.4
-
cpe:2.3:o:linux:linux_kernel:6.2.5
-
cpe:2.3:o:linux:linux_kernel:6.2.6
-
cpe:2.3:o:linux:linux_kernel:6.2.7
-
cpe:2.3:o:linux:linux_kernel:6.2.8
-
cpe:2.3:o:linux:linux_kernel:6.2.9
-
cpe:2.3:o:linux:linux_kernel:6.3
-
cpe:2.3:o:linux:linux_kernel:6.3.1
-
cpe:2.3:o:linux:linux_kernel:6.3.10
-
cpe:2.3:o:linux:linux_kernel:6.3.11
-
cpe:2.3:o:linux:linux_kernel:6.3.12
-
cpe:2.3:o:linux:linux_kernel:6.3.13
-
cpe:2.3:o:linux:linux_kernel:6.3.2
-
cpe:2.3:o:linux:linux_kernel:6.3.3
-
cpe:2.3:o:linux:linux_kernel:6.3.4
-
cpe:2.3:o:linux:linux_kernel:6.3.5
-
cpe:2.3:o:linux:linux_kernel:6.3.6
-
cpe:2.3:o:linux:linux_kernel:6.3.7
-
cpe:2.3:o:linux:linux_kernel:6.3.8
-
cpe:2.3:o:linux:linux_kernel:6.3.9
-
cpe:2.3:o:linux:linux_kernel:6.4
-
cpe:2.3:o:linux:linux_kernel:6.4.1
-
cpe:2.3:o:linux:linux_kernel:6.4.2
-
cpe:2.3:o:linux:linux_kernel:6.4.3
-
cpe:2.3:o:linux:linux_kernel:6.4.4
-
cpe:2.3:o:linux:linux_kernel:6.5