In the Linux kernel, the following vulnerability has been resolved:
tls: get psock ref after taking rxlock to avoid leak
At the start of tlsswrecvmsg, we take a reference on the psock, and then call tlsrxreader_lock. If that fails, we return directly without releasing the reference.
Instead of adding a new label, just take the reference after locking has succeeded, since we don't need it before.
[
{
"id": "CVE-2024-35908-0e54bafa",
"signature_version": "v1",
"digest": {
"function_hash": "215471457260439554925328176674017771810",
"length": 3727.0
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f1b7f14130d782433bc98c1e1e41ce6b4d4c3096",
"target": {
"file": "net/tls/tls_sw.c",
"function": "tls_sw_recvmsg"
}
},
{
"id": "CVE-2024-35908-2e9eb815",
"signature_version": "v1",
"digest": {
"function_hash": "215471457260439554925328176674017771810",
"length": 3727.0
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@417e91e856099e9b8a42a2520e2255e6afe024be",
"target": {
"file": "net/tls/tls_sw.c",
"function": "tls_sw_recvmsg"
}
},
{
"id": "CVE-2024-35908-5ece7f7a",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"281701273465012633770594320566791972395",
"296873180455569853097991727957018923518",
"78376545764466870031920649544294372388",
"530656660248950649206753310554753021",
"253125865918173452851855556163048101064",
"310474898478145283529362722560001480247",
"128975201789492304317391706468636074020"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f1b7f14130d782433bc98c1e1e41ce6b4d4c3096",
"target": {
"file": "net/tls/tls_sw.c"
}
},
{
"id": "CVE-2024-35908-97012aae",
"signature_version": "v1",
"digest": {
"function_hash": "215471457260439554925328176674017771810",
"length": 3727.0
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b565d294e3d5aa809566a4d819835da11997d8b3",
"target": {
"file": "net/tls/tls_sw.c",
"function": "tls_sw_recvmsg"
}
},
{
"id": "CVE-2024-35908-a9b16576",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"281701273465012633770594320566791972395",
"296873180455569853097991727957018923518",
"78376545764466870031920649544294372388",
"530656660248950649206753310554753021",
"253125865918173452851855556163048101064",
"310474898478145283529362722560001480247",
"128975201789492304317391706468636074020"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b565d294e3d5aa809566a4d819835da11997d8b3",
"target": {
"file": "net/tls/tls_sw.c"
}
},
{
"id": "CVE-2024-35908-f2c7eecd",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"281701273465012633770594320566791972395",
"296873180455569853097991727957018923518",
"78376545764466870031920649544294372388",
"530656660248950649206753310554753021",
"253125865918173452851855556163048101064",
"310474898478145283529362722560001480247",
"128975201789492304317391706468636074020"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@417e91e856099e9b8a42a2520e2255e6afe024be",
"target": {
"file": "net/tls/tls_sw.c"
}
}
]