CVE-2023-53557: fprobe: Release rethook after the ftrace_ops is unregistered
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.
Security readout for executives and security teams
Plain-English summary
A Linux kernel fprobe cleanup race can leave another CPU using memory after it has been released. The observed result was a kernel protection fault. A local, low-privileged user may potentially compromise confidentiality, integrity, or availability, according to the supplied CVSS assessment, but the bundle does not demonstrate practical exploitation.
Executive priority
Treat as a high-priority kernel maintenance issue, especially on shared Linux systems or hosts running untrusted workloads. It requires local access rather than remote reachability, and active exploitation is not established. Schedule prompt vendor-approved updates while prioritizing externally managed, multi-tenant, and privileged infrastructure.
Technical view
During unregister_fprobe, fp->rethook could be freed while handlers on another CPU still referenced it. This lifecycle race produced a protection fault during BPF selftests. The kernel fix unregisters the associated ftrace function before freeing the rethook, preventing remaining users from accessing released memory.
Likely exposure
Exposure is limited to Linux systems running affected kernel revisions where fprobe functionality can be exercised. The supplied data identifies affected versions including 5.18, 6.1.40, 6.4.5, and 6.5, but its version ranges are incomplete or ambiguous. Confirm status against distribution kernel guidance and the referenced stable commits.
Exploitation context
The CVSS vector describes local access, low privileges, low complexity, and no user interaction. The failure was observed during BPF selftests. The bundle provides no evidence of public weaponization or real-world exploitation, and CVE-2023-53557 is not identified as a CISA KEV entry.
Researcher notes
The evidence supports a cross-CPU lifetime race involving rethook cleanup after fprobe unregistration. The poisoned 0x6b pattern is consistent with access to released memory, but no CWE is assigned in the bundle. Assess backports by code change rather than version string alone because distribution kernels may include the fix independently.
Mitigation direction
Update to a vendor-supported kernel containing the referenced stable fix.
Prioritize multi-user or untrusted-workload systems where local users can exercise relevant kernel functionality.
If immediate updating is impossible, consult the Linux distribution vendor for supported mitigations.
Reboot into the updated kernel and remove exposure to superseded vulnerable kernels.
Validation and detection
Inventory running kernel versions across Linux hosts.
Compare distribution kernel builds with the referenced upstream stable commits.
Confirm the active kernel after patching and rebooting.
Run vendor-approved regression tests covering fprobe, ftrace, and BPF functionality.
Monitor kernel logs for protection faults involving fprobe_handler.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2023-53557 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
0ADP providers
4Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.