CVE-2024-45009 mptcp: pm: only decrement add_addr_accepted for MPJ req
A logic error in the Linux kernel's MPTCP path manager can cause a kernel warning and potential denial of service when removing subflow endpoints.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-45009?
CVE-2024-45009 is a high-severity denial of service vulnerability in Linux kernel, published on 11 Sep 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
mptcp: pm: only decrement add_addr_accepted for MPJ req
Adding the following warning ...
WARN_ON_ONCE(msk->pm.add_addr_accepted == 0)
... before decrementing the add_addr_accepted counter helped to find a bug when running the "remove single subflow" subtest from the mptcp_join.sh selftest.
Removing a 'subflow' endpoint will first trigger a RM_ADDR, then the subflow closure. Before this patch, and upon the reception of the RM_ADDR, the other peer will then try to decrement this add_addr_accepted. That's not correct because the attached subflows have not been created upon the reception of an ADD_ADDR.
A way to solve that is to decrement the counter only if the attached subflow was an MP_JOIN to a remote id that was not 0, and initiated by the host receiving the RM_ADDR.
Which versions are affected by CVE-2024-45009?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2024-45009?
Apply the vendor's patch.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2024-45009 being exploited?
There is no known exploitation of CVE-2024-45009 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as AZL-49197, AZL-49224, BELL-CVE-2024-45009, DEBIAN-CVE-2024-45009, GHSA-rhqc-rfxh-qj7g, ROOT-OS-DEBIAN-11-CVE-2024-45009 and 1 more.