{"id":"CVE-2022-48926","state":"PUBLISHED","title":"usb: gadget: rndis: add spinlock for rndis response list","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: rndis: add spinlock for rndis response list\n\nThere's no lock for rndis response list. It could cause list corruption\nif there're two different list_add at the same time like below.\nIt's better to add in rndis_add_response / rndis_free_response\n/ rndis_get_next_response to prevent any race condition on response list.\n\n[  361.894299] [1:   irq/191-dwc3:16979] list_add corruption.\nnext->prev should be prev (ffffff80651764d0),\nbut was ffffff883dc36f80. (next=ffffff80651764d0).\n\n[  361.904380] [1:   irq/191-dwc3:16979] Call trace:\n[  361.904391] [1:   irq/191-dwc3:16979]  __list_add_valid+0x74/0x90\n[  361.904401] [1:   irq/191-dwc3:16979]  rndis_msg_parser+0x168/0x8c0\n[  361.904409] [1:   irq/191-dwc3:16979]  rndis_command_complete+0x24/0x84\n[  361.904417] [1:   irq/191-dwc3:16979]  usb_gadget_giveback_request+0x20/0xe4\n[  361.904426] [1:   irq/191-dwc3:16979]  dwc3_gadget_giveback+0x44/0x60\n[  361.904434] [1:   irq/191-dwc3:16979]  dwc3_ep0_complete_data+0x1e8/0x3a0\n[  361.904442] [1:   irq/191-dwc3:16979]  dwc3_ep0_interrupt+0x29c/0x3dc\n[  361.904450] [1:   irq/191-dwc3:16979]  dwc3_process_event_entry+0x78/0x6cc\n[  361.904457] [1:   irq/191-dwc3:16979]  dwc3_process_event_buf+0xa0/0x1ec\n[  361.904465] [1:   irq/191-dwc3:16979]  dwc3_thread_interrupt+0x34/0x5c","publishedAt":"2024-08-22T03:31:18.572Z","updatedAt":"2026-05-11T18:49:49.363Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"9f5d8ba538ef81cd86ea587ca3f8c77e26bea405","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"669c2b178956718407af5631ccbc61c24413f038","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"9f688aadede6b862a0a898792b1a35421c93636f","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"9ab652d41deab49848673c3dadb57ad338485376","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"4ce247af3f30078d5b97554f1ae6200a0222c15a","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"da514063440b53a27309a4528b726f92c3cfe56f","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"33222d1571d7ce8c1c75f6b488f38968fa93d2d9","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"aaaba1c86d04dac8e49bf508b492f81506257da3","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/gadget/function/rndis.c","drivers/usb/gadget/function/rndis.h"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.6","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.6","versionType":"semver"},{"version":"4.9.304","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.269","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.232","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.182","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.103","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.26","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"5.16.12","status":"unaffected","lessThanOrEqual":"5.16.*","versionType":"semver"},{"version":"5.17","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/gadget/function/rndis.c","drivers/usb/gadget/function/rndis.h"]}],"references":["https://git.kernel.org/stable/c/9f5d8ba538ef81cd86ea587ca3f8c77e26bea405","https://git.kernel.org/stable/c/669c2b178956718407af5631ccbc61c24413f038","https://git.kernel.org/stable/c/9f688aadede6b862a0a898792b1a35421c93636f","https://git.kernel.org/stable/c/9ab652d41deab49848673c3dadb57ad338485376","https://git.kernel.org/stable/c/4ce247af3f30078d5b97554f1ae6200a0222c15a","https://git.kernel.org/stable/c/da514063440b53a27309a4528b726f92c3cfe56f","https://git.kernel.org/stable/c/33222d1571d7ce8c1c75f6b488f38968fa93d2d9","https://git.kernel.org/stable/c/aaaba1c86d04dac8e49bf508b492f81506257da3"],"weaknesses":[],"ingestedAt":"2026-10-29T20:05:26.763Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2022/48xxx/CVE-2022-48926.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2022-48926","state":"PUBLISHED","datePublished":"2024-08-22T03:31:18.572Z","dateUpdated":"2026-05-11T18:49:49.363Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-08-21T06:06:23.297Z"},"containers":{"cna":{"title":"usb: gadget: rndis: add spinlock for rndis response list","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: rndis: add spinlock for rndis response list\n\nThere's no lock for rndis response list. It could cause list corruption\nif there're two different list_add at the same time like below.\nIt's better to add in rndis_add_response / rndis_free_response\n/ rndis_get_next_response to prevent any race condition on response list.\n\n[  361.894299] [1:   irq/191-dwc3:16979] list_add corruption.\nnext->prev should be prev (ffffff80651764d0),\nbut was ffffff883dc36f80. (next=ffffff80651764d0).\n\n[  361.904380] [1:   irq/191-dwc3:16979] Call trace:\n[  361.904391] [1:   irq/191-dwc3:16979]  __list_add_valid+0x74/0x90\n[  361.904401] [1:   irq/191-dwc3:16979]  rndis_msg_parser+0x168/0x8c0\n[  361.904409] [1:   irq/191-dwc3:16979]  rndis_command_complete+0x24/0x84\n[  361.904417] [1:   irq/191-dwc3:16979]  usb_gadget_giveback_request+0x20/0xe4\n[  361.904426] [1:   irq/191-dwc3:16979]  dwc3_gadget_giveback+0x44/0x60\n[  361.904434] [1:   irq/191-dwc3:16979]  dwc3_ep0_complete_data+0x1e8/0x3a0\n[  361.904442] [1:   irq/191-dwc3:16979]  dwc3_ep0_interrupt+0x29c/0x3dc\n[  361.904450] [1:   irq/191-dwc3:16979]  dwc3_process_event_entry+0x78/0x6cc\n[  361.904457] [1:   irq/191-dwc3:16979]  dwc3_process_event_buf+0xa0/0x1ec\n[  361.904465] [1:   irq/191-dwc3:16979]  dwc3_thread_interrupt+0x34/0x5c"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"9f5d8ba538ef81cd86ea587ca3f8c77e26bea405","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"669c2b178956718407af5631ccbc61c24413f038","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"9f688aadede6b862a0a898792b1a35421c93636f","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"9ab652d41deab49848673c3dadb57ad338485376","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"4ce247af3f30078d5b97554f1ae6200a0222c15a","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"da514063440b53a27309a4528b726f92c3cfe56f","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"33222d1571d7ce8c1c75f6b488f38968fa93d2d9","versionType":"git"},{"version":"f6281af9d62e128aa6efad29cf7265062af114f2","status":"affected","lessThan":"aaaba1c86d04dac8e49bf508b492f81506257da3","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/gadget/function/rndis.c","drivers/usb/gadget/function/rndis.h"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.6","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.6","versionType":"semver"},{"version":"4.9.304","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.269","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.232","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.182","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.103","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.26","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"5.16.12","status":"unaffected","lessThanOrEqual":"5.16.*","versionType":"semver"},{"version":"5.17","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/gadget/function/rndis.c","drivers/usb/gadget/function/rndis.h"]}],"references":[{"url":"https://git.kernel.org/stable/c/9f5d8ba538ef81cd86ea587ca3f8c77e26bea405"},{"url":"https://git.kernel.org/stable/c/669c2b178956718407af5631ccbc61c24413f038"},{"url":"https://git.kernel.org/stable/c/9f688aadede6b862a0a898792b1a35421c93636f"},{"url":"https://git.kernel.org/stable/c/9ab652d41deab49848673c3dadb57ad338485376"},{"url":"https://git.kernel.org/stable/c/4ce247af3f30078d5b97554f1ae6200a0222c15a"},{"url":"https://git.kernel.org/stable/c/da514063440b53a27309a4528b726f92c3cfe56f"},{"url":"https://git.kernel.org/stable/c/33222d1571d7ce8c1c75f6b488f38968fa93d2d9"},{"url":"https://git.kernel.org/stable/c/aaaba1c86d04dac8e49bf508b492f81506257da3"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T18:49:49.363Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"4.9.304"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"4.14.269"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"4.19.232"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"5.4.182"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"5.10.103"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"5.15.26"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"5.16.12"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.6","versionEndExcluding":"5.17"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2022-48926","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-09-10T15:33:05.816809Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-09-12T17:33:10.483Z"}}]}}}