{"id":"CVE-2026-98760","state":"PUBLISHED","title":"usb: typec: tipd: fix uninitialized typec_partner_desc in tps6598x_connect()","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: typec: tipd: fix uninitialized typec_partner_desc in tps6598x_connect()\n\ntps6598x_connect() passes a stack-allocated typec_partner_desc to\ntypec_register_partner() after initializing only usb_pd, accessory and\nidentity.\n\ntypec_register_partner() copies attach and deattach from the descriptor\ninto the partner. With those fields left unset, garbage function pointers\nmay be stored and later invoked from typec_partner_link_device() when a USB\ndevice is linked to the port. Uninitialized pd_revision and usb_capability\nsimilarly leak stack data through partner sysfs.\n\nZero-initialize the descriptor so optional callbacks remain NULL and the\nremaining fields are zero.","publishedAt":"2026-10-18T15:47:50.759Z","updatedAt":"2026-10-30T12:39:29.050Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"bab4210634be8e6d4181155d1b99106ad24cea70","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"72582e9bb721cd766ae333af8ebf90061dfefeaf","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"a39d53f70e637ff3970046c32106a0e64fca62cd","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"4b6823ce0e548491cb9663303cba28e18d351096","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"282be6ae8be791762740107c79cecf5121f66063","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"dac0c073c6ad5f1bbb5e9fea9023fc1b4dab5e14","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"c4b27b3605788bbf9e4251f3cd4ab94645ab036f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/typec/tipd/core.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.15","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.15","versionType":"semver"},{"version":"5.15.224","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.191","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.113","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.56","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.10","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","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/tipd/core.c"]}],"references":["https://git.kernel.org/stable/c/bab4210634be8e6d4181155d1b99106ad24cea70","https://git.kernel.org/stable/c/72582e9bb721cd766ae333af8ebf90061dfefeaf","https://git.kernel.org/stable/c/a39d53f70e637ff3970046c32106a0e64fca62cd","https://git.kernel.org/stable/c/4b6823ce0e548491cb9663303cba28e18d351096","https://git.kernel.org/stable/c/282be6ae8be791762740107c79cecf5121f66063","https://git.kernel.org/stable/c/dac0c073c6ad5f1bbb5e9fea9023fc1b4dab5e14","https://git.kernel.org/stable/c/c4b27b3605788bbf9e4251f3cd4ab94645ab036f"],"weaknesses":[],"ingestedAt":"2026-10-30T12:58:04.520Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/98xxx/CVE-2026-98760.json","commit":"1f312381e38164a43607eebab851b151dd16861e","baselineCommit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-98760","state":"PUBLISHED","datePublished":"2026-10-18T15:47:50.759Z","dateUpdated":"2026-10-30T12:39:29.050Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-09-25T10:25:14.368Z"},"containers":{"cna":{"title":"usb: typec: tipd: fix uninitialized typec_partner_desc in tps6598x_connect()","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: typec: tipd: fix uninitialized typec_partner_desc in tps6598x_connect()\n\ntps6598x_connect() passes a stack-allocated typec_partner_desc to\ntypec_register_partner() after initializing only usb_pd, accessory and\nidentity.\n\ntypec_register_partner() copies attach and deattach from the descriptor\ninto the partner. With those fields left unset, garbage function pointers\nmay be stored and later invoked from typec_partner_link_device() when a USB\ndevice is linked to the port. Uninitialized pd_revision and usb_capability\nsimilarly leak stack data through partner sysfs.\n\nZero-initialize the descriptor so optional callbacks remain NULL and the\nremaining fields are zero."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"bab4210634be8e6d4181155d1b99106ad24cea70","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"72582e9bb721cd766ae333af8ebf90061dfefeaf","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"a39d53f70e637ff3970046c32106a0e64fca62cd","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"4b6823ce0e548491cb9663303cba28e18d351096","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"282be6ae8be791762740107c79cecf5121f66063","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"dac0c073c6ad5f1bbb5e9fea9023fc1b4dab5e14","versionType":"git"},{"version":"0a4c005bd1715d8b32a368ed5516a6ee7e603d18","status":"affected","lessThan":"c4b27b3605788bbf9e4251f3cd4ab94645ab036f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/usb/typec/tipd/core.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.15","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.15","versionType":"semver"},{"version":"5.15.224","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.191","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.160","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.113","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.56","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.10","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","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/tipd/core.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/bab4210634be8e6d4181155d1b99106ad24cea70"},{"url":"https://git.kernel.org/stable/c/72582e9bb721cd766ae333af8ebf90061dfefeaf"},{"url":"https://git.kernel.org/stable/c/a39d53f70e637ff3970046c32106a0e64fca62cd"},{"url":"https://git.kernel.org/stable/c/4b6823ce0e548491cb9663303cba28e18d351096"},{"url":"https://git.kernel.org/stable/c/282be6ae8be791762740107c79cecf5121f66063"},{"url":"https://git.kernel.org/stable/c/dac0c073c6ad5f1bbb5e9fea9023fc1b4dab5e14"},{"url":"https://git.kernel.org/stable/c/c4b27b3605788bbf9e4251f3cd4ab94645ab036f"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-30T12:39:29.050Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"5.15.224"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"6.1.191"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"6.6.160"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"6.12.113"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"6.18.56"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"7.2.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"7.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}