CVE-2026-68425 (GCVE-0-2026-68425)

Vulnerability from cvelistv5 – Published: 2026-08-10 12:04 – Updated: 2026-08-19 16:35
VLAI
Title
IB/mad: Drop unmatched RMPP responses before reassembly
Summary
In the Linux kernel, the following vulnerability has been resolved: IB/mad: Drop unmatched RMPP responses before reassembly Kernel-handled RMPP receive processing starts reassembly for active DATA responses before the response is matched to an outstanding send. The normal match happens later, after ib_process_rmpp_recv_wc() has either assembled a complete message or consumed the segment. That ordering lets an unsolicited response that routes to a kernel RMPP agent by the high TID bits allocate or extend RMPP receive state before the full TID and source address are checked against a real request. A reordered burst can therefore reach the receive-side insertion path even though the response would not match any send. For kernel-handled RMPP DATA responses, require the existing ib_find_send_mad() match before entering RMPP reassembly. The matcher already checks the full TID, management class and source address/GID against the agent wait, backlog and in-flight send lists. If there is no match, drop the response without creating RMPP state. This leaves the RMPP window behavior unchanged and only rejects responses that have no corresponding request.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: fa619a77046bef30478697aba0553991033afb8e , < 45416c87ebcece1e90f3bc5bc172d106b77c6b69 (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < 9634fb1f4d404f36a20ffbcb8797369db69b06bb (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < bfb9e8243fd2099d1080d09222964d988f991d9b (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < dfa535c94406c03d3f0c869ef3ba5528e395737c (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < 6e1bd7f590b0ccfee07f7fe1d48b92059bd37d72 (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < 98d2d468b4faa1fdc68c0c6c238389906ee3490c (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < ad9c9ad3204f63a46f0f7de29687a8e512f05e29 (git)
Affected: fa619a77046bef30478697aba0553991033afb8e , < d2e52d610b9b09694261632340b801a421e0b0c5 (git)
guessed Create a notification for this product.
Linux Linux Affected: 2.6.13
Unaffected: 0 , < 2.6.13 (semver)
Unaffected: 5.10.265 , ≤ 5.10.* (semver)
Unaffected: 5.15.216 , ≤ 5.15.* (semver)
Unaffected: 6.1.183 , ≤ 6.1.* (semver)
Unaffected: 6.6.148 , ≤ 6.6.* (semver)
Unaffected: 6.12.101 , ≤ 6.12.* (semver)
Unaffected: 6.18.42 , ≤ 6.18.* (semver)
Unaffected: 7.1.6 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/infiniband/core/mad.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "45416c87ebcece1e90f3bc5bc172d106b77c6b69",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "9634fb1f4d404f36a20ffbcb8797369db69b06bb",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "bfb9e8243fd2099d1080d09222964d988f991d9b",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "dfa535c94406c03d3f0c869ef3ba5528e395737c",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "6e1bd7f590b0ccfee07f7fe1d48b92059bd37d72",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "98d2d468b4faa1fdc68c0c6c238389906ee3490c",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "ad9c9ad3204f63a46f0f7de29687a8e512f05e29",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            },
            {
              "lessThan": "d2e52d610b9b09694261632340b801a421e0b0c5",
              "status": "affected",
              "version": "fa619a77046bef30478697aba0553991033afb8e",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/infiniband/core/mad.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "2.6.13"
            },
            {
              "lessThan": "2.6.13",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.265",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.216",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.183",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.148",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.101",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.42",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.265",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.216",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.183",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.148",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.101",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.42",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.6",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "2.6.13",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nIB/mad: Drop unmatched RMPP responses before reassembly\n\nKernel-handled RMPP receive processing starts reassembly for active\nDATA responses before the response is matched to an outstanding send.\nThe normal match happens later, after ib_process_rmpp_recv_wc() has\neither assembled a complete message or consumed the segment.\n\nThat ordering lets an unsolicited response that routes to a kernel\nRMPP agent by the high TID bits allocate or extend RMPP receive state\nbefore the full TID and source address are checked against a real\nrequest. A reordered burst can therefore reach the receive-side\ninsertion path even though the response would not match any send.\n\nFor kernel-handled RMPP DATA responses, require the existing\nib_find_send_mad() match before entering RMPP reassembly. The matcher\nalready checks the full TID, management class and source address/GID\nagainst the agent wait, backlog and in-flight send lists. If there is\nno match, drop the response without creating RMPP state.\n\nThis leaves the RMPP window behavior unchanged and only rejects\nresponses that have no corresponding request."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:A - The attacker must be a node on the same InfiniBand fabric, sending unsolicited GSI (QP1) management datagrams to the victim port; MAD/SA traffic is subnet-local, matching the CVSS \"shared physical or logical network\" definition rather than routable network reach.\nAC:L - No race or unusual precondition is needed: the attacker just sends active RMPP DATA response MADs whose high TID bits name a kernel RMPP agent, and hi_tid is a small cyclic xarray index in [0,2^24) that is trivially enumerated or brute-forced.\nPR:N - The MAD receive path accepts unsolicited datagrams from any fabric peer with no authentication; the only gate is ib_mad_enforce_security() P_Key membership, which the default partition typically grants to every node on the subnet.\nUI:N - Reassembly state is created entirely from attacker-sent packets in the completion handler; no action by a local user or administrator is needed, and the always-registered ib_sa kernel agent is the target.\nS:U - The injected RMPP state, allocations and AH objects all live inside the kernel\u0027s own IB MAD layer on the same host, so the impact stays within a single security authority.\nC:N - The flaw creates unmatched reassembly state; it provides no out-of-bounds read, no kernel memory disclosure, and the ACKs the kernel emits echo only attacker-supplied header fields.\nI:L - An unauthenticated fabric peer can insert arbitrary unsolicited entries into the kernel agent\u0027s RMPP reassembly lists and make the kernel emit ACKs, and a colliding entry (SA TIDs come from a predictable tid++ counter) diverts and drops a legitimate SA response\u0027s segments \u2014 limited, bounded modification of kernel protocol state.\nA:H - Each unmatched segment allocates a mad_rmpp_recv, an AH and a retained ~1-2 KB MAD buffer held for 40 seconds with no matching request, so a burst causes unbounded memory/resource exhaustion, while the O(N) rmpp_list walks under an IRQ-disabled spinlock stall MAD processing and break SA/path resolution for the node."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-19T16:35:19.996Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/45416c87ebcece1e90f3bc5bc172d106b77c6b69"
        },
        {
          "url": "https://git.kernel.org/stable/c/9634fb1f4d404f36a20ffbcb8797369db69b06bb"
        },
        {
          "url": "https://git.kernel.org/stable/c/bfb9e8243fd2099d1080d09222964d988f991d9b"
        },
        {
          "url": "https://git.kernel.org/stable/c/dfa535c94406c03d3f0c869ef3ba5528e395737c"
        },
        {
          "url": "https://git.kernel.org/stable/c/6e1bd7f590b0ccfee07f7fe1d48b92059bd37d72"
        },
        {
          "url": "https://git.kernel.org/stable/c/98d2d468b4faa1fdc68c0c6c238389906ee3490c"
        },
        {
          "url": "https://git.kernel.org/stable/c/ad9c9ad3204f63a46f0f7de29687a8e512f05e29"
        },
        {
          "url": "https://git.kernel.org/stable/c/d2e52d610b9b09694261632340b801a421e0b0c5"
        }
      ],
      "title": "IB/mad: Drop unmatched RMPP responses before reassembly",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-68425",
    "datePublished": "2026-08-10T12:04:45.947Z",
    "dateReserved": "2026-07-30T09:28:09.392Z",
    "dateUpdated": "2026-08-19T16:35:19.996Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-68425",
      "date": "2026-08-20",
      "epss": "0.00263",
      "percentile": "0.18352"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-68425\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-10T13:20:36.413\",\"lastModified\":\"2026-08-19T17:20:49.477\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nIB/mad: Drop unmatched RMPP responses before reassembly\\n\\nKernel-handled RMPP receive processing starts reassembly for active\\nDATA responses before the response is matched to an outstanding send.\\nThe normal match happens later, after ib_process_rmpp_recv_wc() has\\neither assembled a complete message or consumed the segment.\\n\\nThat ordering lets an unsolicited response that routes to a kernel\\nRMPP agent by the high TID bits allocate or extend RMPP receive state\\nbefore the full TID and source address are checked against a real\\nrequest. A reordered burst can therefore reach the receive-side\\ninsertion path even though the response would not match any send.\\n\\nFor kernel-handled RMPP DATA responses, require the existing\\nib_find_send_mad() match before entering RMPP reassembly. The matcher\\nalready checks the full TID, management class and source address/GID\\nagainst the agent wait, backlog and in-flight send lists. If there is\\nno match, drop the response without creating RMPP state.\\n\\nThis leaves the RMPP window behavior unchanged and only rejects\\nresponses that have no corresponding request.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/infiniband/core/mad.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"45416c87ebcece1e90f3bc5bc172d106b77c6b69\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"9634fb1f4d404f36a20ffbcb8797369db69b06bb\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"bfb9e8243fd2099d1080d09222964d988f991d9b\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"dfa535c94406c03d3f0c869ef3ba5528e395737c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"6e1bd7f590b0ccfee07f7fe1d48b92059bd37d72\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"98d2d468b4faa1fdc68c0c6c238389906ee3490c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"ad9c9ad3204f63a46f0f7de29687a8e512f05e29\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fa619a77046bef30478697aba0553991033afb8e\",\"lessThan\":\"d2e52d610b9b09694261632340b801a421e0b0c5\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/infiniband/core/mad.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"2.6.13\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"2.6.13\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.10.265\",\"lessThanOrEqual\":\"5.10.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.216\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.183\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.148\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.101\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.42\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.6\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2\",\"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:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H\",\"baseScore\":7.1,\"baseSeverity\":\"HIGH\",\"attackVector\":\"ADJACENT_NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"LOW\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.8,\"impactScore\":4.2}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/45416c87ebcece1e90f3bc5bc172d106b77c6b69\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/6e1bd7f590b0ccfee07f7fe1d48b92059bd37d72\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9634fb1f4d404f36a20ffbcb8797369db69b06bb\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/98d2d468b4faa1fdc68c0c6c238389906ee3490c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ad9c9ad3204f63a46f0f7de29687a8e512f05e29\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/bfb9e8243fd2099d1080d09222964d988f991d9b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d2e52d610b9b09694261632340b801a421e0b0c5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/dfa535c94406c03d3f0c869ef3ba5528e395737c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-14T17:30:57+00:00",
      "cve": "CVE-2026-68425",
      "id": "CVE-2026-68425",
      "initial_release_date": "2026-08-10T00:00:00+00:00",
      "product_status:known_affected": "275",
      "product_status:known_not_affected": "1",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: IB/mad: Drop unmatched RMPP responses before reassembly",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-68425.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-11T23:45:39Z",
      "cve": "CVE-2026-68425",
      "id": "CVE-2026-68425",
      "initial_release_date": "2026-08-11T23:45:39Z",
      "product_status:known_affected": "284",
      "product_status:known_not_affected": "12",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-68425",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-68425.json",
      "version": "2"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…