CVE-2024-47728
MediumIn the Linux kernel, the following vulnerability has been resolved: bpf: Zero former ARG_PTR_TO_{LONG,INT} args in case of error For all non-tracing helpers which formerly had ARG_PTR_TO_{LONG,INT} as input arguments, zero the value for the case of an error as otherwise it could leak memory. For tracing, it is not needed given CAP_PERFMON can already read all kernel memory anyway hence bpf_get_func_arg() and bpf_get_func_ret() is skipped in here. Also, the MTU helpers mtu_len pointer value is being written but also read. Technically, the MEM_UNINIT should not be there in order to always force init. Removing MEM_UNINIT needs more verifier rework though: MEM_UNINIT right now implies two things actually: i) write into memory, ii) memory does not have to be initialized. If we lift MEM_UNINIT, it then becomes: i) read into memory, ii) memory must be initialized. This means that for bpf_*_check_mtu() we're readding the issue we're trying to fix, that is, it would then be able to write back into things like .rodata BPF maps. Follow-up work will rework the MEM_UNINIT semantics such that the intent can be better expressed. For now just clear the *mtu_len on error path which can be lifted later again.
CVSS 3.1 score
5.5
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness type
CWE-459CVE-2024-47728 is classified as CWE-459
See CWE-459 on MITRE CWE for full details on this weakness type.
Affected versions
Linux kernel versions
5.2
and later are affected. Fixed in
6.1.113,
6.6.54,
6.10.13,
6.11.2,
6.12
and their respective stable series.
References
The following references provide additional information about CVE-2024-47728 including vendor advisories, patch commits, exploit details, and third-party analysis. Links are sourced from the NIST NVD database.
-
-
PatchKernel patch commithttps://git.kernel.org/stable/c/4b3786a6c5397dc220b1483d8e2f4867743e966f
-
PatchKernel patch commithttps://git.kernel.org/stable/c/594a9f5a8d2de2573a856e506f77ba7dd2cefc6a
-
PatchKernel patch commithttps://git.kernel.org/stable/c/599d15b6d03356a97bff7a76155c5604c42a2962
Frequently asked questions
-
What is CVE-2024-47728?
CVE-2024-47728 is a Medium severity Linux kernel vulnerability with a CVSS score of 5.5 out of 10 . It affects Linux kernel versions from 5.2 onward and has been patched in 6.1.113, 6.6.54, 6.10.13 and others. CVE-2024-47728 has not been confirmed as actively exploited and is not listed in the CISA KEV catalog.
-
What is the CVSS score for CVE-2024-47728?
CVE-2024-47728 has a CVSS score of 5.5 out of 10, rated Medium severity (CVSS 3.1). The vector string is
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H. -
Is there a patch available for CVE-2024-47728?
Yes — CVE-2024-47728 has been patched. Fixed versions include 6.1.113, 6.6.54, 6.10.13 and others. If you are running Linux kernel 5.2 or later up to the fix versions, apply the relevant patch for your kernel branch.
-
Is CVE-2024-47728 actively exploited?
No — CVE-2024-47728 has not been confirmed as actively exploited. It is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.