In the Linux kernel, the following vulnerability has been resolved:
usb: gadget: userial: Add null pointer check in gserialsuspend
Consider a case where gserialdisconnect has already cleared gser->ioport. And if gserialsuspend gets called afterwards, it will lead to accessing of gser->ioport and thus causing null pointer dereference.
Avoid this by adding a null pointer check. Added a static spinlock to prevent gser->ioport from becoming null after the newly added null pointer check.
[
{
"id": "CVE-2023-53356-22a1c2bd",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a8ea7ed644cbf6314b5b0136b5398754b549fb8f",
"digest": {
"length": 195.0,
"function_hash": "322138640518883899191249427239997500914"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"target": {
"function": "gserial_suspend",
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-2a824b41",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e60a827ac074ce6bd58305fe5a86afab5fce6a04",
"digest": {
"length": 195.0,
"function_hash": "322138640518883899191249427239997500914"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"target": {
"function": "gserial_suspend",
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-2a9cb655",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a8ea7ed644cbf6314b5b0136b5398754b549fb8f",
"digest": {
"line_hashes": [
"248778009989356785048451217806798056045",
"335781932815135910402693927601469273045",
"199580504973140943739965451383290655469",
"323015397855108658418343186393703210935",
"106855467610739300334104910438297987947",
"7588516766340339836966624611318777494"
],
"threshold": 0.9
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-4986f960",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e60a827ac074ce6bd58305fe5a86afab5fce6a04",
"digest": {
"line_hashes": [
"248778009989356785048451217806798056045",
"335781932815135910402693927601469273045",
"199580504973140943739965451383290655469",
"323015397855108658418343186393703210935",
"106855467610739300334104910438297987947",
"7588516766340339836966624611318777494"
],
"threshold": 0.9
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-5622a782",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2788a3553f7497075653210b42e2aeb6ba95e28e",
"digest": {
"length": 195.0,
"function_hash": "322138640518883899191249427239997500914"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"target": {
"function": "gserial_suspend",
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-5d607cf0",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2788a3553f7497075653210b42e2aeb6ba95e28e",
"digest": {
"line_hashes": [
"248778009989356785048451217806798056045",
"335781932815135910402693927601469273045",
"199580504973140943739965451383290655469",
"323015397855108658418343186393703210935",
"106855467610739300334104910438297987947",
"7588516766340339836966624611318777494"
],
"threshold": 0.9
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-74cf9901",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@374447e3367767156405bedd230c5d391f4b7962",
"digest": {
"length": 195.0,
"function_hash": "322138640518883899191249427239997500914"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"target": {
"function": "gserial_suspend",
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-c25b1cc7",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ecb89fe8feb2b60a53325b0eeb9866d88909a",
"digest": {
"line_hashes": [
"248778009989356785048451217806798056045",
"335781932815135910402693927601469273045",
"199580504973140943739965451383290655469",
"323015397855108658418343186393703210935",
"106855467610739300334104910438297987947",
"7588516766340339836966624611318777494"
],
"threshold": 0.9
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-d0bac06d",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2f6ecb89fe8feb2b60a53325b0eeb9866d88909a",
"digest": {
"length": 195.0,
"function_hash": "322138640518883899191249427239997500914"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"target": {
"function": "gserial_suspend",
"file": "drivers/usb/gadget/function/u_serial.c"
}
},
{
"id": "CVE-2023-53356-ef7eba1c",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@374447e3367767156405bedd230c5d391f4b7962",
"digest": {
"line_hashes": [
"248778009989356785048451217806798056045",
"335781932815135910402693927601469273045",
"199580504973140943739965451383290655469",
"323015397855108658418343186393703210935",
"106855467610739300334104910438297987947",
"7588516766340339836966624611318777494"
],
"threshold": 0.9
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"target": {
"file": "drivers/usb/gadget/function/u_serial.c"
}
}
]