In the Linux kernel, the following vulnerability has been resolved:
drm/client: Fully protect modes[] with dev->mode_config.mutex
The modes[] array contains pointers to modes on the connectors' mode lists, which are protected by dev->mode_config.mutex. Thus we need to extend modes[] the same protection or by the time we use it the elements may already be pointing to freed/reused memory.
[
{
"id": "CVE-2024-35950-0006fe13",
"signature_version": "v1",
"digest": {
"length": 2918.0,
"function_hash": "235053255283735332852693655610179423440"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5a2f957e3c4553bbb100504a1acfeaeb33f4ca4e",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c",
"function": "drm_client_modeset_probe"
}
},
{
"id": "CVE-2024-35950-502beb22",
"signature_version": "v1",
"digest": {
"length": 2918.0,
"function_hash": "235053255283735332852693655610179423440"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8ceb873d816786a7c8058f50d903574aff8d3764",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c",
"function": "drm_client_modeset_probe"
}
},
{
"id": "CVE-2024-35950-5e5224f4",
"signature_version": "v1",
"digest": {
"length": 2918.0,
"function_hash": "235053255283735332852693655610179423440"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41586487769eede64ab1aa6c65c74cbf76c12ef0",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c",
"function": "drm_client_modeset_probe"
}
},
{
"id": "CVE-2024-35950-6b9a0e46",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"207063115058892065117131228496466944149",
"212853965304655470181194706112596986511",
"308148286069504017042845735290242989760",
"186975805830102134090363991122288446909",
"120993449824726649858367880816890423458",
"113569145898743996303096840278882408241",
"85572501540118312436455325465776009232",
"102251808825286432782585609692453555905",
"110663620847307957757581236690346536004",
"44562809946404589927997616200652595387",
"333933340651041359292827447487465144808",
"90947626566484710632987868429084190388"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3eadd887dbac1df8f25f701e5d404d1b90fd0fea",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c"
}
},
{
"id": "CVE-2024-35950-7b783642",
"signature_version": "v1",
"digest": {
"length": 2918.0,
"function_hash": "235053255283735332852693655610179423440"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3eadd887dbac1df8f25f701e5d404d1b90fd0fea",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c",
"function": "drm_client_modeset_probe"
}
},
{
"id": "CVE-2024-35950-9cb19f70",
"signature_version": "v1",
"digest": {
"length": 2918.0,
"function_hash": "235053255283735332852693655610179423440"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@04e018bd913d3d3336ab7d21c2ad31a9175fe984",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c",
"function": "drm_client_modeset_probe"
}
},
{
"id": "CVE-2024-35950-c67dafaa",
"signature_version": "v1",
"digest": {
"length": 2918.0,
"function_hash": "235053255283735332852693655610179423440"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d2dc6600d4e3e1453e3b1fb233e9f97e2a1ae949",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c",
"function": "drm_client_modeset_probe"
}
},
{
"id": "CVE-2024-35950-d770b4f2",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"207063115058892065117131228496466944149",
"212853965304655470181194706112596986511",
"308148286069504017042845735290242989760",
"186975805830102134090363991122288446909",
"120993449824726649858367880816890423458",
"113569145898743996303096840278882408241",
"85572501540118312436455325465776009232",
"102251808825286432782585609692453555905",
"110663620847307957757581236690346536004",
"44562809946404589927997616200652595387",
"333933340651041359292827447487465144808",
"90947626566484710632987868429084190388"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@41586487769eede64ab1aa6c65c74cbf76c12ef0",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c"
}
},
{
"id": "CVE-2024-35950-db24b109",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"207063115058892065117131228496466944149",
"212853965304655470181194706112596986511",
"308148286069504017042845735290242989760",
"186975805830102134090363991122288446909",
"120993449824726649858367880816890423458",
"113569145898743996303096840278882408241",
"85572501540118312436455325465776009232",
"102251808825286432782585609692453555905",
"110663620847307957757581236690346536004",
"44562809946404589927997616200652595387",
"333933340651041359292827447487465144808",
"90947626566484710632987868429084190388"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@04e018bd913d3d3336ab7d21c2ad31a9175fe984",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c"
}
},
{
"id": "CVE-2024-35950-eceabf03",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"207063115058892065117131228496466944149",
"212853965304655470181194706112596986511",
"308148286069504017042845735290242989760",
"186975805830102134090363991122288446909",
"120993449824726649858367880816890423458",
"113569145898743996303096840278882408241",
"85572501540118312436455325465776009232",
"102251808825286432782585609692453555905",
"110663620847307957757581236690346536004",
"44562809946404589927997616200652595387",
"333933340651041359292827447487465144808",
"90947626566484710632987868429084190388"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5a2f957e3c4553bbb100504a1acfeaeb33f4ca4e",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c"
}
},
{
"id": "CVE-2024-35950-f6f20e3d",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"207063115058892065117131228496466944149",
"212853965304655470181194706112596986511",
"308148286069504017042845735290242989760",
"186975805830102134090363991122288446909",
"120993449824726649858367880816890423458",
"113569145898743996303096840278882408241",
"85572501540118312436455325465776009232",
"102251808825286432782585609692453555905",
"110663620847307957757581236690346536004",
"44562809946404589927997616200652595387",
"333933340651041359292827447487465144808",
"90947626566484710632987868429084190388"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8ceb873d816786a7c8058f50d903574aff8d3764",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c"
}
},
{
"id": "CVE-2024-35950-f762351e",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"207063115058892065117131228496466944149",
"212853965304655470181194706112596986511",
"308148286069504017042845735290242989760",
"186975805830102134090363991122288446909",
"120993449824726649858367880816890423458",
"113569145898743996303096840278882408241",
"85572501540118312436455325465776009232",
"102251808825286432782585609692453555905",
"110663620847307957757581236690346536004",
"44562809946404589927997616200652595387",
"333933340651041359292827447487465144808",
"90947626566484710632987868429084190388"
]
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d2dc6600d4e3e1453e3b1fb233e9f97e2a1ae949",
"target": {
"file": "drivers/gpu/drm/drm_client_modeset.c"
}
}
]