In the Linux kernel, the following vulnerability has been resolved:
mptcp: ensure snd_una is properly initialized on connect
This is strictly related to commit fb7a0d334894 ("mptcp: ensure sndnxt is properly initialized on connect"). It turns out that syzkaller can trigger the retransmit after fallback and before processing any other incoming packet - so that snduna is still left uninitialized.
Address the issue explicitly initializing snduna together with sndnxt and write_seq.
[
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 1282.0,
"function_hash": "15964160175548245159885984655646843757"
},
"id": "CVE-2024-40931-0e98bc41",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ef473bf1dd7e8dd08bcc04b9e2d1bfed69a0a7ce",
"target": {
"file": "net/mptcp/protocol.c",
"function": "mptcp_connect"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"196121940881662930713965669749253775774",
"113490861631179638312530601179625029065",
"325817619627943292052180214292949290974",
"202215326615271276235633030020787680055"
]
},
"id": "CVE-2024-40931-0f4f8307",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@208cd22ef5e57f82d38ec11c1a1703f9401d6dde",
"target": {
"file": "net/mptcp/protocol.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 1282.0,
"function_hash": "15964160175548245159885984655646843757"
},
"id": "CVE-2024-40931-14371061",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8031b58c3a9b1db3ef68b3bd749fbee2e1e1aaa3",
"target": {
"file": "net/mptcp/protocol.c",
"function": "mptcp_connect"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"269921056462562950229504868512984758088",
"76360684291091766709672550565146165573",
"314554605189008267718753124726922119851",
"270028954299802088796997544247597084797"
]
},
"id": "CVE-2024-40931-4b52eb87",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f1f0a46f8bb8890b90ab7194f0a0c8fe2a3fb57f",
"target": {
"file": "net/mptcp/protocol.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 1282.0,
"function_hash": "15964160175548245159885984655646843757"
},
"id": "CVE-2024-40931-51fbc546",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f1f0a46f8bb8890b90ab7194f0a0c8fe2a3fb57f",
"target": {
"file": "net/mptcp/protocol.c",
"function": "mptcp_connect"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"269921056462562950229504868512984758088",
"76360684291091766709672550565146165573",
"314554605189008267718753124726922119851",
"270028954299802088796997544247597084797"
]
},
"id": "CVE-2024-40931-8e2ccf74",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8031b58c3a9b1db3ef68b3bd749fbee2e1e1aaa3",
"target": {
"file": "net/mptcp/protocol.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"269921056462562950229504868512984758088",
"76360684291091766709672550565146165573",
"314554605189008267718753124726922119851",
"270028954299802088796997544247597084797"
]
},
"id": "CVE-2024-40931-8ea63716",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@ef473bf1dd7e8dd08bcc04b9e2d1bfed69a0a7ce",
"target": {
"file": "net/mptcp/protocol.c"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 986.0,
"function_hash": "139465857168771089937332441675127733445"
},
"id": "CVE-2024-40931-aa4ebf5b",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@208cd22ef5e57f82d38ec11c1a1703f9401d6dde",
"target": {
"file": "net/mptcp/protocol.c",
"function": "mptcp_stream_connect"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 1209.0,
"function_hash": "76161944114907076070373369596550038496"
},
"id": "CVE-2024-40931-e5709c6a",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7b9c7fc8600b64a86e4b47b2d190bba380267726",
"target": {
"file": "net/mptcp/protocol.c",
"function": "mptcp_stream_connect"
}
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"269921056462562950229504868512984758088",
"76360684291091766709672550565146165573",
"43329373786880079899186549542913005764",
"82392575758350906611216370103746238618"
]
},
"id": "CVE-2024-40931-ec88fe68",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7b9c7fc8600b64a86e4b47b2d190bba380267726",
"target": {
"file": "net/mptcp/protocol.c"
}
}
]