{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2022-49356",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2025-02-26T02:08:31.545Z",
        "datePublished": "2025-02-26T02:11:06.430Z",
        "dateUpdated": "2026-08-05T08:54:52.320Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-05T08:54:52.320Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nSUNRPC: Trap RDMA segment overflows\n\nPrevent svc_rdma_build_writes() from walking off the end of a Write\nchunk's segment array. Caught with KASAN.\n\nThe test that this fix replaces is invalid, and might have been left\nover from an earlier prototype of the PCL work."
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 9.8,
                        "baseSeverity": "CRITICAL"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:N - The bug is in svcrdma (SUNRPC server RDMA transport used by nfsd), which processes RPC-over-RDMA messages from remote peers over InfiniBand, RoCE, or iWARP; a remote NFS/RDMA client triggers it by supplying an undersized Reply/Write chunk.\nAC:L - The attacker fully controls the Reply chunk segment list and sizes in the transport header and can reliably force segment exhaustion relative to any generated RPC reply, with no conditions outside their control.\nPR:N - Connecting to the RDMA NFS listener and sending a crafted Call requires no credentials; even authentication-failure and other early error replies still flow through svc_send → svc_rdma_sendto → svc_rdma_send_reply_chunk, so the OOB is reachable pre-authentication.\nUI:N - Exploitation requires only attacker-sent RPC-over-RDMA messages; no victim user action is needed.\nS:U - Impact remains within the host kernel's security authority; this is not a VM/IOMMU/sandbox escape.\nC:H - The invalid !seg check allows walking off the heap-allocated ch_segments[] array, yielding an out-of-bounds read of adjacent kernel heap memory used as RDMA segment metadata.\nI:H - OOB segment fields (R_key/offset/length) are consumed to build and post RDMA Write work requests, so this heap memory-safety violation can be leveraged toward integrity compromise and control of RDMA write targeting.\nA:H - The overflow was caught by KASAN and can drive kernel oopses/crashes via invalid segment state and RDMA WR initialization/posting failures, enabling high-impact denial of service."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "net/sunrpc/xprtrdma/svc_rdma_rw.c"
                    ],
                    "versions": [
                        {
                            "version": "7a1cbfa18059a40d4752dab057384c3ca2de326c",
                            "lessThan": "ea26bf5eca1459b5a7824997d7823409ce38214e",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "7a1cbfa18059a40d4752dab057384c3ca2de326c",
                            "lessThan": "812c13521d4a72469c78ce06d8cdc8dc5b5557b5",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "7a1cbfa18059a40d4752dab057384c3ca2de326c",
                            "lessThan": "659f7568e09593945c221bf20217a82ebdfe1328",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "7a1cbfa18059a40d4752dab057384c3ca2de326c",
                            "lessThan": "f012e95b377c73c0283f009823c633104dedb337",
                            "status": "affected",
                            "versionType": "git"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "net/sunrpc/xprtrdma/svc_rdma_rw.c"
                    ],
                    "versions": [
                        {
                            "version": "5.11",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "5.11",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.15.47",
                            "lessThanOrEqual": "5.15.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.17.15",
                            "lessThanOrEqual": "5.17.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.18.4",
                            "lessThanOrEqual": "5.18.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "5.19",
                            "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": "5.11",
                                    "versionEndExcluding": "5.15.47"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.11",
                                    "versionEndExcluding": "5.17.15"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.11",
                                    "versionEndExcluding": "5.18.4"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "5.11",
                                    "versionEndExcluding": "5.19"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/ea26bf5eca1459b5a7824997d7823409ce38214e"
                },
                {
                    "url": "https://git.kernel.org/stable/c/812c13521d4a72469c78ce06d8cdc8dc5b5557b5"
                },
                {
                    "url": "https://git.kernel.org/stable/c/659f7568e09593945c221bf20217a82ebdfe1328"
                },
                {
                    "url": "https://git.kernel.org/stable/c/f012e95b377c73c0283f009823c633104dedb337"
                }
            ],
            "title": "SUNRPC: Trap RDMA segment overflows",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        }
    }
}