{"id":"CVE-2026-46178","state":"PUBLISHED","title":"RDMA/mlx4: Fix resource leak on error in mlx4_ib_create_srq()","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mlx4: Fix resource leak on error in mlx4_ib_create_srq()\n\nSashiko points out that mlx4_srq_alloc() was not undone during error\nunwind, add the missing call to mlx4_srq_free().","publishedAt":"2026-05-28T09:36:32.222Z","updatedAt":"2026-10-19T19:36:53.902Z","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":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"53fd4c03558672ccb167754fbacbf045c7ab335c","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"0be6ae614ca7fa53e7389e3c7462ed20abbd4192","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"5b3b220d54e6a3d77380cb7caa1ef79cb8f4fc94","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"c5dc30da990045105c9762248d23076223e7878a","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"0dbd619716fb07b7de1acd64fec673ee6e1adde7","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"e01b8c9286c470b71a38acd320106f2c4f2826a1","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"388617f44d81604a760742a0b5de292d411e63e3","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"c54c7e4cb679c0aaa1cb489b9c3f2cd98e63a44c","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/hw/mlx4/srq.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.22","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.22","versionType":"semver"},{"version":"5.10.258","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.209","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.175","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.140","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.88","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.30","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.0.7","status":"unaffected","lessThanOrEqual":"7.0.*","versionType":"semver"},{"version":"7.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/hw/mlx4/srq.c"]}],"references":["https://git.kernel.org/stable/c/53fd4c03558672ccb167754fbacbf045c7ab335c","https://git.kernel.org/stable/c/0be6ae614ca7fa53e7389e3c7462ed20abbd4192","https://git.kernel.org/stable/c/5b3b220d54e6a3d77380cb7caa1ef79cb8f4fc94","https://git.kernel.org/stable/c/c5dc30da990045105c9762248d23076223e7878a","https://git.kernel.org/stable/c/0dbd619716fb07b7de1acd64fec673ee6e1adde7","https://git.kernel.org/stable/c/e01b8c9286c470b71a38acd320106f2c4f2826a1","https://git.kernel.org/stable/c/388617f44d81604a760742a0b5de292d411e63e3","https://git.kernel.org/stable/c/c54c7e4cb679c0aaa1cb489b9c3f2cd98e63a44c"],"weaknesses":["CWE-772"],"ingestedAt":"2026-10-29T20:12:07.131Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/46xxx/CVE-2026-46178.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-46178","state":"PUBLISHED","datePublished":"2026-05-28T09:36:32.222Z","dateUpdated":"2026-10-19T19:36:53.902Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-05-13T15:03:33.103Z"},"containers":{"cna":{"title":"RDMA/mlx4: Fix resource leak on error in mlx4_ib_create_srq()","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mlx4: Fix resource leak on error in mlx4_ib_create_srq()\n\nSashiko points out that mlx4_srq_alloc() was not undone during error\nunwind, add the missing call to mlx4_srq_free()."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"53fd4c03558672ccb167754fbacbf045c7ab335c","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"0be6ae614ca7fa53e7389e3c7462ed20abbd4192","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"5b3b220d54e6a3d77380cb7caa1ef79cb8f4fc94","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"c5dc30da990045105c9762248d23076223e7878a","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"0dbd619716fb07b7de1acd64fec673ee6e1adde7","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"e01b8c9286c470b71a38acd320106f2c4f2826a1","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"388617f44d81604a760742a0b5de292d411e63e3","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","status":"affected","lessThan":"c54c7e4cb679c0aaa1cb489b9c3f2cd98e63a44c","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/hw/mlx4/srq.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.22","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.22","versionType":"semver"},{"version":"5.10.258","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.209","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.175","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.140","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.88","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.30","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.0.7","status":"unaffected","lessThanOrEqual":"7.0.*","versionType":"semver"},{"version":"7.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/hw/mlx4/srq.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/53fd4c03558672ccb167754fbacbf045c7ab335c"},{"url":"https://git.kernel.org/stable/c/0be6ae614ca7fa53e7389e3c7462ed20abbd4192"},{"url":"https://git.kernel.org/stable/c/5b3b220d54e6a3d77380cb7caa1ef79cb8f4fc94"},{"url":"https://git.kernel.org/stable/c/c5dc30da990045105c9762248d23076223e7878a"},{"url":"https://git.kernel.org/stable/c/0dbd619716fb07b7de1acd64fec673ee6e1adde7"},{"url":"https://git.kernel.org/stable/c/e01b8c9286c470b71a38acd320106f2c4f2826a1"},{"url":"https://git.kernel.org/stable/c/388617f44d81604a760742a0b5de292d411e63e3"},{"url":"https://git.kernel.org/stable/c/c54c7e4cb679c0aaa1cb489b9c3f2cd98e63a44c"}],"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 path is reached only through the local RDMA uverbs device interface (/dev/infiniband/uverbsN) via a create-SRQ command with driver udata present; it is not reachable from a network peer.\nAC:L - The attacker reliably forces the failing path by supplying a bad/unmapped response buffer (`copy_to_user` → -EFAULT), which deterministically creates the dangling radix-tree pointer to freed memory; per UAF guidance this is Low.\nPR:L - Triggering requires only an unprivileged local account with access to the RDMA verbs device, which is commonly exposed to non-root users in HPC/cloud/RDMA-enabled environments; no real root is needed.\nUI:N - The attacker performs the create-SRQ call and supplies the faulting buffer entirely on their own; no victim action is required.\nS:U - The freed object and its corruption stay within the kernel's own security authority; there is no crossing of a VM/IOMMU/sandbox boundary.\nC:H - The dangling pointer is a use-after-free; reclaiming the freed `mlx4_ib_srq` lets an attacker control its contents and read kernel memory through the event-handler dereference chain.\nI:H - The UAF causes `mlx4_srq_event()` to write to freed memory and call function pointers (`srq->event`, `event_handler`) read from freed memory, giving a heap-spray-based control-flow-hijack / arbitrary-write primitive.\nA:H - Dereferencing the freed object reliably crashes the kernel, and repeatedly exercising the bug also exhausts the finite hardware SRQ/ICM resource pool, denying RDMA service."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T12:30:16.484Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"5.10.258"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"5.15.209"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"6.1.175"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"6.6.140"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"6.12.88"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"6.18.30"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"7.0.7"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.22","versionEndExcluding":"7.1"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-46178","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T15:20:49.101284Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-772","lang":"en","type":"CWE","description":"CWE-772 Missing Release of Resource after Effective Lifetime"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-19T19:36:53.902Z"}}]}}}