{"id":"CVE-2026-43056","state":"PUBLISHED","title":"net: mana: fix use-after-free in add_adev() error path","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: mana: fix use-after-free in add_adev() error path\n\nIf auxiliary_device_add() fails, add_adev() jumps to add_fail and calls\nauxiliary_device_uninit(adev).\n\nThe auxiliary device has its release callback set to adev_release(),\nwhich frees the containing struct mana_adev. Since adev is embedded in\nstruct mana_adev, the subsequent fall-through to init_fail and access\nto adev->id may result in a use-after-free.\n\nFix this by saving the allocated auxiliary device id in a local\nvariable before calling auxiliary_device_add(), and use that saved id\nin the cleanup path after auxiliary_device_uninit().","publishedAt":"2026-05-01T14:15:48.837Z","updatedAt":"2026-10-19T19:06:11.769Z","severity":{"score":7.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"d88541ffd56d62a61e77209080001eddd4d69815","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"43f5b19fd190fea20d052bc84741b28031d5baa9","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"5f4061f8225d18695e5afe9bbf1cb7bd673d7872","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"e5a75bf026c686b91a7dc6f9c5caf5016745d1fe","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"c4ea7d8907cf72b259bf70bd8c2e791e1c4ff70f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/microsoft/mana/mana_en.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.2","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.2","versionType":"semver"},{"version":"6.6.134","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.81","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.22","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"6.19.12","status":"unaffected","lessThanOrEqual":"6.19.*","versionType":"semver"},{"version":"7.0","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/microsoft/mana/mana_en.c"]}],"references":["https://git.kernel.org/stable/c/d88541ffd56d62a61e77209080001eddd4d69815","https://git.kernel.org/stable/c/43f5b19fd190fea20d052bc84741b28031d5baa9","https://git.kernel.org/stable/c/5f4061f8225d18695e5afe9bbf1cb7bd673d7872","https://git.kernel.org/stable/c/e5a75bf026c686b91a7dc6f9c5caf5016745d1fe","https://git.kernel.org/stable/c/c4ea7d8907cf72b259bf70bd8c2e791e1c4ff70f"],"weaknesses":["CWE-416"],"ingestedAt":"2026-10-29T20:11:57.932Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/43xxx/CVE-2026-43056.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-43056","state":"PUBLISHED","datePublished":"2026-05-01T14:15:48.837Z","dateUpdated":"2026-10-19T19:06:11.769Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-05-01T14:12:55.980Z"},"containers":{"cna":{"title":"net: mana: fix use-after-free in add_adev() error path","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: mana: fix use-after-free in add_adev() error path\n\nIf auxiliary_device_add() fails, add_adev() jumps to add_fail and calls\nauxiliary_device_uninit(adev).\n\nThe auxiliary device has its release callback set to adev_release(),\nwhich frees the containing struct mana_adev. Since adev is embedded in\nstruct mana_adev, the subsequent fall-through to init_fail and access\nto adev->id may result in a use-after-free.\n\nFix this by saving the allocated auxiliary device id in a local\nvariable before calling auxiliary_device_add(), and use that saved id\nin the cleanup path after auxiliary_device_uninit()."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"d88541ffd56d62a61e77209080001eddd4d69815","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"43f5b19fd190fea20d052bc84741b28031d5baa9","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"5f4061f8225d18695e5afe9bbf1cb7bd673d7872","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"e5a75bf026c686b91a7dc6f9c5caf5016745d1fe","versionType":"git"},{"version":"a69839d4327d053b18d8e1b0e7ddeee78db78f4f","status":"affected","lessThan":"c4ea7d8907cf72b259bf70bd8c2e791e1c4ff70f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/microsoft/mana/mana_en.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"6.2","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.2","versionType":"semver"},{"version":"6.6.134","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.81","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.22","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"6.19.12","status":"unaffected","lessThanOrEqual":"6.19.*","versionType":"semver"},{"version":"7.0","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/microsoft/mana/mana_en.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/d88541ffd56d62a61e77209080001eddd4d69815"},{"url":"https://git.kernel.org/stable/c/43f5b19fd190fea20d052bc84741b28031d5baa9"},{"url":"https://git.kernel.org/stable/c/5f4061f8225d18695e5afe9bbf1cb7bd673d7872"},{"url":"https://git.kernel.org/stable/c/e5a75bf026c686b91a7dc6f9c5caf5016745d1fe"},{"url":"https://git.kernel.org/stable/c/c4ea7d8907cf72b259bf70bd8c2e791e1c4ff70f"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The vulnerable `add_adev()` error path is reached during MANA PCI driver probe/resume/recovery or auxiliary RDMA service handling, not by processing received network packets. The highest defensible attacker path is local influence over driver/device lifecycle or resource-failure conditions.\nAC:L - Once `auxiliary_device_add()` fails, the UAF is deterministic because `auxiliary_device_uninit()` releases the embedded object and the cleanup path immediately reads `adev->id`. No attacker-uncontrolled race is required beyond reaching that failure path.\nPR:L - The path is not exposed to unauthenticated remote peers, but a local attacker can plausibly influence resource exhaustion/failure conditions around driver lifecycle events. Direct sysfs/module lifecycle control is privileged, but Low is the higher-severity defensible choice under the conservative scoring rule.\nUI:N - No separate victim action is required once the attacker can exercise or influence the local driver lifecycle/failure path. Probe, resume, and service-event handling run in kernel context.\nS:U - The affected component and impacts are within the Linux kernel security scope. This is not a VM escape, IOMMU bypass, or cross-authority boundary violation.\nC:H - This is a kernel use-after-free of an auxiliary-device container object after its release callback frees it. Under conservative kernel UAF scoring, freed slab reuse can support information disclosure, so confidentiality is High.\nI:H - The UAF lets stale object contents influence cleanup through `mana_adev_idx_free()`, and kernel UAFs are conservatively treated as potentially exploitable memory corruption. Integrity is therefore High.\nA:H - At minimum, the stale access can trigger a kernel UAF report, invalid IDA cleanup, oops, or panic during probe/resume error unwinding. Availability impact is High."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T12:25:37.114Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.2","versionEndExcluding":"6.6.134"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.2","versionEndExcluding":"6.12.81"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.2","versionEndExcluding":"6.18.22"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.2","versionEndExcluding":"6.19.12"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.2","versionEndExcluding":"7.0"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-43056","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T15:14:07.416746Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-416","lang":"en","type":"CWE","description":"CWE-416 Use After Free"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-19T19:06:11.769Z"}}]}}}