{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-46178","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-05-13T15:03:33.103Z","datePublished":"2026-05-28T09:36:32.222Z","dateUpdated":"2026-08-05T12:30:16.484Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T12:30:16.484Z"},"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()."}],"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."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/hw/mlx4/srq.c"],"versions":[{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"53fd4c03558672ccb167754fbacbf045c7ab335c","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"0be6ae614ca7fa53e7389e3c7462ed20abbd4192","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"5b3b220d54e6a3d77380cb7caa1ef79cb8f4fc94","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"c5dc30da990045105c9762248d23076223e7878a","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"0dbd619716fb07b7de1acd64fec673ee6e1adde7","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"e01b8c9286c470b71a38acd320106f2c4f2826a1","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"388617f44d81604a760742a0b5de292d411e63e3","status":"affected","versionType":"git"},{"version":"225c7b1feef1b41170f7037a5b10a65cd8a42c54","lessThan":"c54c7e4cb679c0aaa1cb489b9c3f2cd98e63a44c","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/hw/mlx4/srq.c"],"versions":[{"version":"2.6.22","status":"affected"},{"version":"0","lessThan":"2.6.22","status":"unaffected","versionType":"semver"},{"version":"5.10.258","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.209","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.175","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.140","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.88","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.30","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.0.7","lessThanOrEqual":"7.0.*","status":"unaffected","versionType":"semver"},{"version":"7.1","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"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"}]}]}],"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"}],"title":"RDMA/mlx4: Fix resource leak on error in mlx4_ib_create_srq()","x_generator":{"engine":"bippy-1.2.0"}}}}