CVE-2026-52908 (GCVE-0-2026-52908)

Vulnerability from cvelistv5 – Published: 2026-06-19 14:00 – Updated: 2026-08-05 12:31
VLAI
Title
RDMA: During rereg_mr ensure that REREG_ACCESS is compatible
Summary
In the Linux kernel, the following vulnerability has been resolved: RDMA: During rereg_mr ensure that REREG_ACCESS is compatible If IB_MR_REREG_ACCESS changes from RO to RW then the umem has to be re-evaluated to ensure it is properly pinned as RW. Since the umem is hidden inside each driver's mr struct add a ib_umem_check_rereg() function that each driver has to call before processing IB_MR_REREG_ACCESS. mlx4 has to retain its duplicate ib_access_writable check because it implements IB_MR_REREG_ACCESS | IB_MR_REREG_TRANS by changing both items in place sequentially while the MR is live, so it will continue to not support this combination.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: b40656aa7d559adc1fe689396dc58b92a9a27286 , < 09dc18894148381d3bfc550083b1236043870dce (git)
Affected: b40656aa7d559adc1fe689396dc58b92a9a27286 , < eba5df21eda0fe7418efbea2f799f8ea1b8ca94c (git)
Affected: b40656aa7d559adc1fe689396dc58b92a9a27286 , < 2904e985a2917b5dac65df82733065e78a65fc9d (git)
Affected: b40656aa7d559adc1fe689396dc58b92a9a27286 , < 50334a05a950840b39a1ce3d2a173b4183db9b3e (git)
Affected: b40656aa7d559adc1fe689396dc58b92a9a27286 , < badad6fad60def1b9805559dd81dbab3d97b82aa (git)
Create a notification for this product.
Linux Linux Affected: 6.2
Unaffected: 0 , < 6.2 (semver)
Unaffected: 6.6.143 , ≤ 6.6.* (semver)
Unaffected: 6.12.94 , ≤ 6.12.* (semver)
Unaffected: 6.18.36 , ≤ 6.18.* (semver)
Unaffected: 7.0.13 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/infiniband/core/umem.c",
            "drivers/infiniband/hw/hns/hns_roce_mr.c",
            "drivers/infiniband/hw/irdma/verbs.c",
            "drivers/infiniband/hw/mlx4/mr.c",
            "drivers/infiniband/hw/mlx5/mr.c",
            "drivers/infiniband/sw/rxe/rxe_verbs.c",
            "include/rdma/ib_umem.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "09dc18894148381d3bfc550083b1236043870dce",
              "status": "affected",
              "version": "b40656aa7d559adc1fe689396dc58b92a9a27286",
              "versionType": "git"
            },
            {
              "lessThan": "eba5df21eda0fe7418efbea2f799f8ea1b8ca94c",
              "status": "affected",
              "version": "b40656aa7d559adc1fe689396dc58b92a9a27286",
              "versionType": "git"
            },
            {
              "lessThan": "2904e985a2917b5dac65df82733065e78a65fc9d",
              "status": "affected",
              "version": "b40656aa7d559adc1fe689396dc58b92a9a27286",
              "versionType": "git"
            },
            {
              "lessThan": "50334a05a950840b39a1ce3d2a173b4183db9b3e",
              "status": "affected",
              "version": "b40656aa7d559adc1fe689396dc58b92a9a27286",
              "versionType": "git"
            },
            {
              "lessThan": "badad6fad60def1b9805559dd81dbab3d97b82aa",
              "status": "affected",
              "version": "b40656aa7d559adc1fe689396dc58b92a9a27286",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/infiniband/core/umem.c",
            "drivers/infiniband/hw/hns/hns_roce_mr.c",
            "drivers/infiniband/hw/irdma/verbs.c",
            "drivers/infiniband/hw/mlx4/mr.c",
            "drivers/infiniband/hw/mlx5/mr.c",
            "drivers/infiniband/sw/rxe/rxe_verbs.c",
            "include/rdma/ib_umem.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.2"
            },
            {
              "lessThan": "6.2",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.143",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.94",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.36",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.13",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.143",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.94",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.36",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.13",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "6.2",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA: During rereg_mr ensure that REREG_ACCESS is compatible\n\nIf IB_MR_REREG_ACCESS changes from RO to RW then the umem has to be\nre-evaluated to ensure it is properly pinned as RW. Since the umem is\nhidden inside each driver\u0027s mr struct add a ib_umem_check_rereg() function\nthat each driver has to call before processing IB_MR_REREG_ACCESS.\n\nmlx4 has to retain its duplicate ib_access_writable check because it\nimplements IB_MR_REREG_ACCESS | IB_MR_REREG_TRANS by changing both items\nin place sequentially while the MR is live, so it will continue to not\nsupport this combination."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable path is reached through local RDMA uverbs write/ioctl operations on /dev/infiniband/uverbs*, not by unauthenticated network packets. Remote RDMA traffic may perform the final write only after a local process has created and reregistered the MR.\nAC:L - The trigger is a deterministic sequence: register an MR read-only, reregister it with writable access without changing translation, then use the writable MR. There is no race or attacker-uncontrolled timing requirement.\nPR:L - A basic local user can open the uverbs device when an RDMA device is exposed and create the required context, PD, and MR; the path has no CAP_SYS_ADMIN or CAP_NET_ADMIN gate. Resource limits may constrain size but do not make the attack require administrator privileges.\nUI:N - No victim action is required after the attacker has local execution and access to the RDMA uverbs device. The attacker drives the registration, reregistration, and write operations directly.\nS:U - The impact remains within the kernel/host security authority and is a local privilege escalation or host integrity violation. It does not inherently cross a VM, hypervisor, or IOMMU security boundary.\nC:H - The stale read-only pin can be converted into a writable RDMA mapping, enabling modification of read-only/COW or page-cache backed memory in a Dirty-COW-like way. A plausible privileged-code-execution path through corrupted executable page cache yields full confidentiality impact.\nI:H - The bug creates an unauthorized write primitive to pages that were not pinned with FOLL_WRITE and should not be writable. This can corrupt read-only user mappings or shared page-cache contents, making high integrity impact defensible.\nA:H - The same unauthorized write primitive can corrupt executable/library page cache or process memory and crash privileged services or destabilize the system. With plausible root code execution, high availability impact is also defensible."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:31:31.552Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/09dc18894148381d3bfc550083b1236043870dce"
        },
        {
          "url": "https://git.kernel.org/stable/c/eba5df21eda0fe7418efbea2f799f8ea1b8ca94c"
        },
        {
          "url": "https://git.kernel.org/stable/c/2904e985a2917b5dac65df82733065e78a65fc9d"
        },
        {
          "url": "https://git.kernel.org/stable/c/50334a05a950840b39a1ce3d2a173b4183db9b3e"
        },
        {
          "url": "https://git.kernel.org/stable/c/badad6fad60def1b9805559dd81dbab3d97b82aa"
        }
      ],
      "title": "RDMA: During rereg_mr ensure that REREG_ACCESS is compatible",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-52908",
    "datePublished": "2026-06-19T14:00:35.971Z",
    "dateReserved": "2026-06-09T07:44:35.366Z",
    "dateUpdated": "2026-08-05T12:31:31.552Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-52908",
      "date": "2026-08-13",
      "epss": "0.00129",
      "percentile": "0.02915"
    },
    "microsoft_vex": {
      "current_release_date": "2026-07-09T14:49:31.000Z",
      "cve": "CVE-2026-52908",
      "id": "msrc_CVE-2026-52908",
      "initial_release_date": "2026-06-02T00:00:00.000Z",
      "product_status:fixed": "1",
      "product_status:known_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "RDMA: During rereg_mr ensure that REREG_ACCESS is compatible",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-52908.json",
      "version": "3"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-52908\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-06-19T15:16:35.277\",\"lastModified\":\"2026-07-08T15:24:27.260\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nRDMA: During rereg_mr ensure that REREG_ACCESS is compatible\\n\\nIf IB_MR_REREG_ACCESS changes from RO to RW then the umem has to be\\nre-evaluated to ensure it is properly pinned as RW. Since the umem is\\nhidden inside each driver\u0027s mr struct add a ib_umem_check_rereg() function\\nthat each driver has to call before processing IB_MR_REREG_ACCESS.\\n\\nmlx4 has to retain its duplicate ib_access_writable check because it\\nimplements IB_MR_REREG_ACCESS | IB_MR_REREG_TRANS by changing both items\\nin place sequentially while the MR is live, so it will continue to not\\nsupport this combination.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/infiniband/core/umem.c\",\"drivers/infiniband/hw/hns/hns_roce_mr.c\",\"drivers/infiniband/hw/irdma/verbs.c\",\"drivers/infiniband/hw/mlx4/mr.c\",\"drivers/infiniband/hw/mlx5/mr.c\",\"drivers/infiniband/sw/rxe/rxe_verbs.c\",\"include/rdma/ib_umem.h\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"b40656aa7d559adc1fe689396dc58b92a9a27286\",\"lessThan\":\"09dc18894148381d3bfc550083b1236043870dce\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b40656aa7d559adc1fe689396dc58b92a9a27286\",\"lessThan\":\"eba5df21eda0fe7418efbea2f799f8ea1b8ca94c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b40656aa7d559adc1fe689396dc58b92a9a27286\",\"lessThan\":\"2904e985a2917b5dac65df82733065e78a65fc9d\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b40656aa7d559adc1fe689396dc58b92a9a27286\",\"lessThan\":\"50334a05a950840b39a1ce3d2a173b4183db9b3e\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b40656aa7d559adc1fe689396dc58b92a9a27286\",\"lessThan\":\"badad6fad60def1b9805559dd81dbab3d97b82aa\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/infiniband/core/umem.c\",\"drivers/infiniband/hw/hns/hns_roce_mr.c\",\"drivers/infiniband/hw/irdma/verbs.c\",\"drivers/infiniband/hw/mlx4/mr.c\",\"drivers/infiniband/hw/mlx5/mr.c\",\"drivers/infiniband/sw/rxe/rxe_verbs.c\",\"include/rdma/ib_umem.h\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.2\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.2\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.143\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.94\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.36\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.0.13\",\"lessThanOrEqual\":\"7.0.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"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\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.2\",\"versionEndExcluding\":\"6.6.143\",\"matchCriteriaId\":\"9062F1CD-CAD6-4EA2-A73F-C06D4A887B8C\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7\",\"versionEndExcluding\":\"6.12.94\",\"matchCriteriaId\":\"85421C0C-ABDE-4357-971C-67F9087DE1B9\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.13\",\"versionEndExcluding\":\"6.18.36\",\"matchCriteriaId\":\"389025D2-958D-41BD-BD96-70ED1033A9F3\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.19\",\"versionEndExcluding\":\"7.0.13\",\"matchCriteriaId\":\"6A64BF9F-3BCA-42FD-98CB-8F03474D2B1E\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"B1EF7059-E670-45F4-B422-54C40FA86390\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"0D38F0BF-A728-4133-A358-D44A2F7EE6D6\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"EC732D08-5F7B-46D9-B154-E60C7F4F0A97\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:*\",\"matchCriteriaId\":\"E5910A9D-F60A-409A-B486-FE66BFEBA9B9\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:*\",\"matchCriteriaId\":\"81DFF19E-9CF8-49C6-8C36-1E4038622933\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc6:*:*:*:*:*:*\",\"matchCriteriaId\":\"B0E8FC71-3952-444C-83E9-718DBBBEC615\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc7:*:*:*:*:*:*\",\"matchCriteriaId\":\"1039E95A-8CC3-4C88-8FF9-5C08EEB861C9\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/09dc18894148381d3bfc550083b1236043870dce\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/2904e985a2917b5dac65df82733065e78a65fc9d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/50334a05a950840b39a1ce3d2a173b4183db9b3e\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/badad6fad60def1b9805559dd81dbab3d97b82aa\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/eba5df21eda0fe7418efbea2f799f8ea1b8ca94c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-07-09T20:27:19+00:00",
      "cve": "CVE-2026-52908",
      "id": "CVE-2026-52908",
      "initial_release_date": "2026-06-19T00:00:00+00:00",
      "product_status:known_affected": "246",
      "product_status:known_not_affected": "28",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: RDMA: During rereg_mr ensure that REREG_ACCESS is compatible",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-52908.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-07-24T02:20:06Z",
      "cve": "CVE-2026-52908",
      "id": "CVE-2026-52908",
      "initial_release_date": "2026-06-23T02:20:11Z",
      "product_status:first_fixed": "55",
      "product_status:known_affected": "441",
      "product_status:known_not_affected": "181",
      "product_status:recommended": "209",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-52908",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-52908.json",
      "version": "9"
    }
  }
}