{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-98354","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-09-25T10:25:14.343Z","datePublished":"2026-10-06T08:46:41.768Z","dateUpdated":"2026-10-06T08:46:41.768Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-10-06T08:46:41.768Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mad: Fix receive buffer leak when PKey enforcement fails\n\nib_mad_complete_recv() initializes mad_recv_wc->rmpp_list and then runs\nib_mad_enforce_security() before linking recv_buf onto that list.  On\nfailure it calls ib_free_recv_mad(), which only walks rmpp_list and frees\nthe ib_mad_private of every buffer found there.  As the list is still\nempty at that point, nothing is freed at all.\n\nThe caller cannot clean up either: ib_mad_recv_done() sets recv to NULL\nright after ib_mad_complete_recv() returns, assuming the MAD layer took\nownership of the buffer.  Every MAD that fails the PKey check therefore\nleaks one ib_mad_private (about 300 bytes per IB port MAD, ~2K for OPA),\nand a remote node can trigger this repeatedly by sending MADs with a\nwrong PKey.\n\nLink recv_buf onto rmpp_list right after the list is initialized, so the\nerror path has something to free."}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/infiniband/core/mad.c"],"versions":[{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"4617c9a856188674dddb0ca66979746d07688579","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"8e2036fb47a5b152d53eadbd35abf311bd34cc7f","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"bad289e42f512646a988f278f536d21547df73f1","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"752b30e9d339008e5ce7eed412e9446078916129","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"39c4ea72a40503e102ae07e6776005f96ca078a6","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"5091e25ec503f7fc02723ca435226467b68caac7","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"c0d8df85db146d6275e226cb950023be69dd6c77","status":"affected","versionType":"git"},{"version":"47a2b338fe63200d716d2e24131cdb49f17c77da","lessThan":"3476c28c9addfa253f505e6bd87f1f5598b961d0","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/core/mad.c"],"versions":[{"version":"4.13","status":"affected"},{"version":"0","lessThan":"4.13","status":"unaffected","versionType":"semver"},{"version":"5.10.271","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.222","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.189","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.158","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.112","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.54","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.2.8","lessThanOrEqual":"7.2.*","status":"unaffected","versionType":"semver"},{"version":"7.3-rc4","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":"4.13","versionEndExcluding":"5.10.271"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"5.15.222"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"6.1.189"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"6.6.158"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"6.12.112"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"6.18.54"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"7.2.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.13","versionEndExcluding":"7.3-rc4"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/4617c9a856188674dddb0ca66979746d07688579"},{"url":"https://git.kernel.org/stable/c/8e2036fb47a5b152d53eadbd35abf311bd34cc7f"},{"url":"https://git.kernel.org/stable/c/bad289e42f512646a988f278f536d21547df73f1"},{"url":"https://git.kernel.org/stable/c/752b30e9d339008e5ce7eed412e9446078916129"},{"url":"https://git.kernel.org/stable/c/39c4ea72a40503e102ae07e6776005f96ca078a6"},{"url":"https://git.kernel.org/stable/c/5091e25ec503f7fc02723ca435226467b68caac7"},{"url":"https://git.kernel.org/stable/c/c0d8df85db146d6275e226cb950023be69dd6c77"},{"url":"https://git.kernel.org/stable/c/3476c28c9addfa253f505e6bd87f1f5598b961d0"}],"title":"RDMA/mad: Fix receive buffer leak when PKey enforcement fails","x_generator":{"engine":"bippy-1.2.0"}}}}