{"id":"CVE-2024-36893","state":"PUBLISHED","title":"usb: typec: tcpm: Check for port partner validity before consuming it","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: typec: tcpm: Check for port partner validity before consuming it\n\ntypec_register_partner() does not guarantee partner registration\nto always succeed. In the event of failure, port->partner is set\nto the error value or NULL. Given that port->partner validity is\nnot checked, this results in the following crash:\n\nUnable to handle kernel NULL pointer dereference at virtual address xx\n pc : run_state_machine+0x1bc8/0x1c08\n lr : run_state_machine+0x1b90/0x1c08\n..\n Call trace:\n   run_state_machine+0x1bc8/0x1c08\n   tcpm_state_machine_work+0x94/0xe4\n   kthread_worker_fn+0x118/0x328\n   kthread+0x1d0/0x23c\n   ret_from_fork+0x10/0x20\n\nTo prevent the crash, check for port->partner validity before\nderefencing it in all the call sites.","publishedAt":"2024-05-30T15:28:59.113Z","updatedAt":"2026-05-23T15:47:17.169Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"31220bd89c22a18478f52fcd8069e8e2adb8f4f2","status":"affected","lessThan":"2a07e6f0ad8a6e504a3912cfe8dc859b7d0740a5","versionType":"git"},{"version":"9b7cd3fe01f0d03cf5820b351a6be2a6e0a6da6f","status":"affected","lessThan":"d56d2ca03cc22123fd7626967d096d8661324e57","versionType":"git"},{"version":"c97cd0b4b54eb42aed7f6c3c295a2d137f6d2416","status":"affected","lessThan":"789326cafbd1f67f424436b6bc8bdb887a364637","versionType":"git"},{"version":"c97cd0b4b54eb42aed7f6c3c295a2d137f6d2416","status":"affected","lessThan":"fc2b655cb6dd2b381f1f284989721002e39b6b77","versionType":"git"},{"version":"c97cd0b4b54eb42aed7f6c3c295a2d137f6d2416","status":"affected","lessThan":"ae11f04b452b5205536e1c02d31f8045eba249dd","versionType":"git"},{"version":"2897b36d2482b84f35e659989d5cb4501fb31ccd","status":"affected","versionType":"git"},{"version":"cbcf107780aecf51aba68488044a416d95060b6d","status":"affected","versionType":"git"},{"version":"5.15.132","status":"affected","lessThan":"5.15.168","versionType":"semver"},{"version":"6.1.53","status":"affected","lessThan":"6.1.91","versionType":"semver"},{"version":"6.4.16","status":"affected","lessThan":"6.5","versionType":"semver"},{"version":"6.5.3","status":"affected","lessThan":"6.6","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/typec/tcpm/tcpm.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.6","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.6","versionType":"semver"},{"version":"5.15.168","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.91","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.31","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.8.10","status":"unaffected","lessThanOrEqual":"6.8.*","versionType":"semver"},{"version":"6.9","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/typec/tcpm/tcpm.c"]}],"references":["https://git.kernel.org/stable/c/2a07e6f0ad8a6e504a3912cfe8dc859b7d0740a5","https://git.kernel.org/stable/c/d56d2ca03cc22123fd7626967d096d8661324e57","https://git.kernel.org/stable/c/789326cafbd1f67f424436b6bc8bdb887a364637","https://git.kernel.org/stable/c/fc2b655cb6dd2b381f1f284989721002e39b6b77","https://git.kernel.org/stable/c/ae11f04b452b5205536e1c02d31f8045eba249dd"],"weaknesses":[],"ingestedAt":"2026-10-29T20:07:30.303Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2024/36xxx/CVE-2024-36893.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2024-36893","state":"PUBLISHED","datePublished":"2024-05-30T15:28:59.113Z","dateUpdated":"2026-05-23T15:47:17.169Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-05-30T15:25:07.065Z"},"containers":{"cna":{"title":"usb: typec: tcpm: Check for port partner validity before consuming it","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: typec: tcpm: Check for port partner validity before consuming it\n\ntypec_register_partner() does not guarantee partner registration\nto always succeed. In the event of failure, port->partner is set\nto the error value or NULL. Given that port->partner validity is\nnot checked, this results in the following crash:\n\nUnable to handle kernel NULL pointer dereference at virtual address xx\n pc : run_state_machine+0x1bc8/0x1c08\n lr : run_state_machine+0x1b90/0x1c08\n..\n Call trace:\n   run_state_machine+0x1bc8/0x1c08\n   tcpm_state_machine_work+0x94/0xe4\n   kthread_worker_fn+0x118/0x328\n   kthread+0x1d0/0x23c\n   ret_from_fork+0x10/0x20\n\nTo prevent the crash, check for port->partner validity before\nderefencing it in all the call sites."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"31220bd89c22a18478f52fcd8069e8e2adb8f4f2","status":"affected","lessThan":"2a07e6f0ad8a6e504a3912cfe8dc859b7d0740a5","versionType":"git"},{"version":"9b7cd3fe01f0d03cf5820b351a6be2a6e0a6da6f","status":"affected","lessThan":"d56d2ca03cc22123fd7626967d096d8661324e57","versionType":"git"},{"version":"c97cd0b4b54eb42aed7f6c3c295a2d137f6d2416","status":"affected","lessThan":"789326cafbd1f67f424436b6bc8bdb887a364637","versionType":"git"},{"version":"c97cd0b4b54eb42aed7f6c3c295a2d137f6d2416","status":"affected","lessThan":"fc2b655cb6dd2b381f1f284989721002e39b6b77","versionType":"git"},{"version":"c97cd0b4b54eb42aed7f6c3c295a2d137f6d2416","status":"affected","lessThan":"ae11f04b452b5205536e1c02d31f8045eba249dd","versionType":"git"},{"version":"2897b36d2482b84f35e659989d5cb4501fb31ccd","status":"affected","versionType":"git"},{"version":"cbcf107780aecf51aba68488044a416d95060b6d","status":"affected","versionType":"git"},{"version":"5.15.132","status":"affected","lessThan":"5.15.168","versionType":"semver"},{"version":"6.1.53","status":"affected","lessThan":"6.1.91","versionType":"semver"},{"version":"6.4.16","status":"affected","lessThan":"6.5","versionType":"semver"},{"version":"6.5.3","status":"affected","lessThan":"6.6","versionType":"semver"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/typec/tcpm/tcpm.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.6","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.6","versionType":"semver"},{"version":"5.15.168","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.91","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.31","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.8.10","status":"unaffected","lessThanOrEqual":"6.8.*","versionType":"semver"},{"version":"6.9","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/typec/tcpm/tcpm.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/2a07e6f0ad8a6e504a3912cfe8dc859b7d0740a5"},{"url":"https://git.kernel.org/stable/c/d56d2ca03cc22123fd7626967d096d8661324e57"},{"url":"https://git.kernel.org/stable/c/789326cafbd1f67f424436b6bc8bdb887a364637"},{"url":"https://git.kernel.org/stable/c/fc2b655cb6dd2b381f1f284989721002e39b6b77"},{"url":"https://git.kernel.org/stable/c/ae11f04b452b5205536e1c02d31f8045eba249dd"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-23T15:47:17.169Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15.132","versionEndExcluding":"5.15.168"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.1.53","versionEndExcluding":"6.1.91"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.6","versionEndExcluding":"6.6.31"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.6","versionEndExcluding":"6.8.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.6","versionEndExcluding":"6.9"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.4.16"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.5.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2024-36893","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-05-30T18:53:53.633071Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-06-04T17:48:05.743Z"}},{"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/d56d2ca03cc22123fd7626967d096d8661324e57","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/789326cafbd1f67f424436b6bc8bdb887a364637","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/fc2b655cb6dd2b381f1f284989721002e39b6b77","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/ae11f04b452b5205536e1c02d31f8045eba249dd","tags":["x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-02T03:43:50.062Z"}}]}}}