mptcp: plug races between subflow fail and subflow creation
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.1.149, 6.6.101, 6.12.40, 6.15.8
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: yes
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: mptcp: plug races between subflow fail and subflow creation We have races similar to the one addressed by the previous patch between subflow failing and additional subflow creation. They are just harder to trigger. The solution is similar. Use a separate flag to track the condition 'socket state prevent any additional subflow creation' protected by the fallback lock. The socket fallback makes such flag true, and also receiving or sending an MP_FAIL option. The field 'allow_infinite_fallback' is now always touched under the relevant lock, we can drop the ONCE annotation on write.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
From 478d770008b03ed9d74bdc8add2315b7fd124ecc · fixed in c476d627584b7589a134a8b48dd5c6639e4401c5; From 478d770008b03ed9d74bdc8add2315b7fd124ecc · fixed in 7c96d519ee15a130842a6513530b4d20acd2bfcd; From 478d770008b03ed9d74bdc8add2315b7fd124ecc · fixed in f81b6fbe13c7fc413b5158cdffc6a59391a2a8db; From 478d770008b03ed9d74bdc8add2315b7fd124ecc · fixed in 659da22dee5ff316ba63bdaeeac7b58b5442f6c2; From 478d770008b03ed9d74bdc8add2315b7fd124ecc · fixed in def5b7b2643ebba696fc60ddf675dca13f073486
- Linux Linux
5.15
- KernelLinux
From 5.15.0 · fixed in 6.1.149; From 6.2.0 · fixed in 6.6.101; From 6.7.0 · fixed in 6.12.40; From 6.13.0 · fixed in 6.15.8