blob: 361c3d4558c3345b52a566e29e3a9c638a523972 [file] [log] [blame]
{
"containers": {
"cna": {
"providerMetadata": {
"orgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038"
},
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: u_serial: Disable ep before setting port to null to fix the crash caused by port being null\n\nConsidering that in some extreme cases, when performing the\nunbinding operation, gserial_disconnect has cleared gser->ioport,\nwhich triggers gadget reconfiguration, and then calls gs_read_complete,\nresulting in access to a null pointer. Therefore, ep is disabled before\ngserial_disconnect sets port to null to prevent this from happening.\n\nCall trace:\n gs_read_complete+0x58/0x240\n usb_gadget_giveback_request+0x40/0x160\n dwc3_remove_requests+0x170/0x484\n dwc3_ep0_out_start+0xb0/0x1d4\n __dwc3_gadget_start+0x25c/0x720\n kretprobe_trampoline.cfi_jt+0x0/0x8\n kretprobe_trampoline.cfi_jt+0x0/0x8\n udc_bind_to_driver+0x1d8/0x300\n usb_gadget_probe_driver+0xa8/0x1dc\n gadget_dev_desc_UDC_store+0x13c/0x188\n configfs_write_iter+0x160/0x1f4\n vfs_write+0x2d0/0x40c\n ksys_write+0x7c/0xf0\n __arm64_sys_write+0x20/0x30\n invoke_syscall+0x60/0x150\n el0_svc_common+0x8c/0xf8\n do_el0_svc+0x28/0xa0\n el0_svc+0x24/0x84"
}
],
"affected": [
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/usb/gadget/function/u_serial.c"
],
"versions": [
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "f5f33fb57aae12e4b0add79e0242f458ea0bc510",
"status": "affected",
"versionType": "git"
},
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "1062b648bff63ed62b2d47a045e08ea9741d98ea",
"status": "affected",
"versionType": "git"
},
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "d2de56cc45ee447f005d63217e84988b4f02faa9",
"status": "affected",
"versionType": "git"
},
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "3d730e8758c75b68a0152ee1ac48a270ea6725b4",
"status": "affected",
"versionType": "git"
},
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "0c50f00cc29948184af05bda31392fff5821f4f3",
"status": "affected",
"versionType": "git"
},
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "8e122d780a0f19aefd700dbd0b0e3ed3af0ae97f",
"status": "affected",
"versionType": "git"
},
{
"version": "c1dca562be8ada614ef193aa246c6f8705bcd6b9",
"lessThan": "13014969cbf07f18d62ceea40bd8ca8ec9d36cec",
"status": "affected",
"versionType": "git"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/usb/gadget/function/u_serial.c"
],
"versions": [
{
"version": "2.6.27",
"status": "affected"
},
{
"version": "0",
"lessThan": "2.6.27",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.4.290",
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.10.234",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.15.177",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.1.125",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.6.72",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.12.10",
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.13",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
],
"references": [
{
"url": "https://git.kernel.org/stable/c/f5f33fb57aae12e4b0add79e0242f458ea0bc510"
},
{
"url": "https://git.kernel.org/stable/c/1062b648bff63ed62b2d47a045e08ea9741d98ea"
},
{
"url": "https://git.kernel.org/stable/c/d2de56cc45ee447f005d63217e84988b4f02faa9"
},
{
"url": "https://git.kernel.org/stable/c/3d730e8758c75b68a0152ee1ac48a270ea6725b4"
},
{
"url": "https://git.kernel.org/stable/c/0c50f00cc29948184af05bda31392fff5821f4f3"
},
{
"url": "https://git.kernel.org/stable/c/8e122d780a0f19aefd700dbd0b0e3ed3af0ae97f"
},
{
"url": "https://git.kernel.org/stable/c/13014969cbf07f18d62ceea40bd8ca8ec9d36cec"
}
],
"title": "usb: gadget: u_serial: Disable ep before setting port to null to fix the crash caused by port being null",
"x_generator": {
"engine": "bippy-5f407fcff5a0"
}
}
},
"cveMetadata": {
"assignerOrgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038",
"cveID": "CVE-2024-57915",
"requesterUserId": "gregkh@kernel.org",
"serial": "1",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.0"
}