UBUNTU-CVE-2024-45009
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.
02 / AFFECTED SOFTWARE
Affected packages
6 explicit affected versions
14 explicit affected versions
4 explicit affected versions
12 explicit affected versions
37 explicit affected versions
13 explicit affected versions
7 explicit affected versions
10 explicit affected versions
33 explicit affected versions
12 explicit affected versions
50 explicit affected versions
11 explicit affected versions
38 explicit affected versions
52 explicit affected versions
12 explicit affected versions
12 explicit affected versions
19 explicit affected versions
6 explicit affected versions
61 explicit affected versions
47 explicit affected versions
57 explicit affected versions
47 explicit affected versions
10 explicit affected versions
8 explicit affected versions
14 explicit affected versions
54 explicit affected versions
7 explicit affected versions
53 explicit affected versions
9 explicit affected versions
13 explicit affected versions
11 explicit affected versions
35 explicit affected versions
14 explicit affected versions
18 explicit affected versions
18 explicit affected versions
15 explicit affected versions
64 explicit affected versions
14 explicit affected versions
13 explicit affected versions
23 explicit affected versions
18 explicit affected versions
21 explicit affected versions
16 explicit affected versions
10 explicit affected versions
16 explicit affected versions
7 explicit affected versions
45 explicit affected versions
12 explicit affected versions
14 explicit affected versions
7 explicit affected versions
12 explicit affected versions
9 explicit affected versions
14 explicit affected versions
9 explicit affected versions
1 explicit affected versions
26 explicit affected versions
13 explicit affected versions
9 explicit affected versions
29 explicit affected versions
13 explicit affected versions
58 explicit affected versions
8 explicit affected versions
9 explicit affected versions
56 explicit affected versions
18 explicit affected versions
33 explicit affected versions
23 explicit affected versions
10 explicit affected versions
1 explicit affected versions
11 explicit affected versions
12 explicit affected versions
7 explicit affected versions
12 explicit affected versions
45 explicit affected versions
39 explicit affected versions
55 explicit affected versions
10 explicit affected versions
26 explicit affected versions
16 explicit affected versions
1 explicit affected versions
7 explicit affected versions
17 explicit affected versions
13 explicit affected versions
16 explicit affected versions
16 explicit affected versions
58 explicit affected versions
17 explicit affected versions
8 explicit affected versions
46 explicit affected versions
3 explicit affected versions
2 explicit affected versions
51 explicit affected versions
14 explicit affected versions
13 explicit affected versions
12 explicit affected versions
44 explicit affected versions
27 explicit affected versions
30 explicit affected versions
10 explicit affected versions
19 explicit affected versions
5 explicit affected versions
8 explicit affected versions
10 explicit affected versions
13 explicit affected versions
13 explicit affected versions
7 explicit affected versions
50 explicit affected versions
10 explicit affected versions
14 explicit affected versions
26 explicit affected versions
12 explicit affected versions
44 explicit affected versions
16 explicit affected versions
3 explicit affected versions
13 explicit affected versions
44 explicit affected versions
37 explicit affected versions
17 explicit affected versions
14 explicit affected versions
8 explicit affected versions
7 explicit affected versions
38 explicit affected versions
47 explicit affected versions
9 explicit affected versions
47 explicit affected versions
11 explicit affected versions
55 explicit affected versions
7 explicit affected versions
28 explicit affected versions
4 explicit affected versions
1 explicit affected versions
1 explicit affected versions
53 explicit affected versions
13 explicit affected versions
43 explicit affected versions
10 explicit affected versions
8 explicit affected versions
14 explicit affected versions
4 explicit affected versions
11 explicit affected versions
1 explicit affected versions
10 explicit affected versions
03 / CONNECTIONS
Connected vulnerabilities
04 / EVIDENCE
Source records
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.
05 / REFERENCES
Further evidence
- https://git.kernel.org/linus/1c1f721375989579e46741f59523e39ec9b2a9bd
- https://git.kernel.org/stable/c/1c1f721375989579e46741f59523e39ec9b2a9bd
- https://git.kernel.org/stable/c/2060f1efab370b496c4903b840844ecaff324c3c
- https://git.kernel.org/stable/c/35b31f5549ede4070566b949781e83495906b43d
- https://git.kernel.org/stable/c/85b866e4c4e63a1d7afb58f1e24273caad03d0b7
- https://git.kernel.org/stable/c/d20bf2c96d7ffd171299b32f562f70e5bf5dc608
- https://ubuntu.com/security/CVE-2024-45009
- https://ubuntu.com/security/notices/USN-7100-1
- https://ubuntu.com/security/notices/USN-7100-2
- https://ubuntu.com/security/notices/USN-7123-1
- https://ubuntu.com/security/notices/USN-7144-1
- https://ubuntu.com/security/notices/USN-7154-1
- https://ubuntu.com/security/notices/USN-7154-2
- https://ubuntu.com/security/notices/USN-7155-1
- https://ubuntu.com/security/notices/USN-7156-1
- https://ubuntu.com/security/notices/USN-7194-1
- https://ubuntu.com/security/notices/USN-7196-1
- https://www.cve.org/CVERecord?id=CVE-2024-45009