GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2025-21901 (GCVE-0-2025-21901)

Vulnerability from cvelistv5 – Published: 2025-04-01 15:26 – Updated: 2026-08-05 11:55
VLAI
Title
RDMA/bnxt_re: Add sanity checks on rdev validity
Summary
In the Linux kernel, the following vulnerability has been resolved: RDMA/bnxt_re: Add sanity checks on rdev validity There is a possibility that ulp_irq_stop and ulp_irq_start callbacks will be called when the device is in detached state. This can cause a crash due to NULL pointer dereference as the rdev is already freed.
SSVC
Exploitation: none Automatable: no Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2025-10-01 19:24 UTC
CWE
  • CWE-476 - NULL Pointer Dereference
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: cc5b9b48d44756a87170f3901c6c2fd99e6b89b2 , < aed1bc673907e3df372b317c10ff2f3582f8bf1a (git)
Affected: cc5b9b48d44756a87170f3901c6c2fd99e6b89b2 , < 8cb0eef46d70a99c88c26a1addb7fd955242e0e6 (git)
Affected: cc5b9b48d44756a87170f3901c6c2fd99e6b89b2 , < f0df225d12fcb049429fb5bf5122afe143c2dd15 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.12
Unaffected: 0 , < 6.12 (semver)
Unaffected: 6.12.18 , ≤ 6.12.* (semver)
Unaffected: 6.13.6 , ≤ 6.13.* (semver)
Unaffected: 6.14 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "cvssV3_1": {
              "attackComplexity": "LOW",
              "attackVector": "LOCAL",
              "availabilityImpact": "HIGH",
              "baseScore": 5.5,
              "baseSeverity": "MEDIUM",
              "confidentialityImpact": "NONE",
              "integrityImpact": "NONE",
              "privilegesRequired": "LOW",
              "scope": "UNCHANGED",
              "userInteraction": "NONE",
              "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
              "version": "3.1"
            }
          },
          {
            "other": {
              "content": {
                "id": "CVE-2025-21901",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2025-10-01T19:24:32.667966Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "problemTypes": [
          {
            "descriptions": [
              {
                "cweId": "CWE-476",
                "description": "CWE-476 NULL Pointer Dereference",
                "lang": "en",
                "type": "CWE"
              }
            ]
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2025-10-01T19:26:35.142Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/infiniband/hw/bnxt_re/main.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "aed1bc673907e3df372b317c10ff2f3582f8bf1a",
              "status": "affected",
              "version": "cc5b9b48d44756a87170f3901c6c2fd99e6b89b2",
              "versionType": "git"
            },
            {
              "lessThan": "8cb0eef46d70a99c88c26a1addb7fd955242e0e6",
              "status": "affected",
              "version": "cc5b9b48d44756a87170f3901c6c2fd99e6b89b2",
              "versionType": "git"
            },
            {
              "lessThan": "f0df225d12fcb049429fb5bf5122afe143c2dd15",
              "status": "affected",
              "version": "cc5b9b48d44756a87170f3901c6c2fd99e6b89b2",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/infiniband/hw/bnxt_re/main.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.12"
            },
            {
              "lessThan": "6.12",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.18",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.13.*",
              "status": "unaffected",
              "version": "6.13.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.14",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.18",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.13.6",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.14",
                  "versionStartIncluding": "6.12",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/bnxt_re: Add sanity checks on rdev validity\n\nThere is a possibility that ulp_irq_stop and ulp_irq_start\ncallbacks will be called when the device is in detached state.\nThis can cause a crash due to NULL pointer dereference as\nthe rdev is already freed."
        }
      ],
      "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 callbacks are driven by local device-management and error-recovery paths (ethtool ring/channel reconfiguration, devlink/FW reset, SR-IOV reconfiguration, PM suspend/resume, PCIe AER), not by data received from a remote peer. A remote RoCE/Ethernet peer cannot reach `bnxt_re_stop_irq()`/`bnxt_re_start_irq()`.\nAC:L - In the AER and FW-recovery sequences the L2 driver unconditionally calls `bnxt_ulp_irq_stop()`/`bnxt_ulp_irq_restart()` after `bnxt_ulp_stop()` has already freed `rdev`, so the stale-pointer dereference is deterministic rather than racy. Where a window must be hit, the attacker drives both sides \u2014 initiating the reset/suspend and issuing the ring-reservation request that calls `bnxt_ulp_irq_stop()`.\nPR:L - Entering the detached window needs only an unprivileged-reachable action such as a logind-permitted system suspend/resume cycle, or a CAP_NET_ADMIN-scoped ethtool ring/channel reconfiguration available to non-root network workloads; once detached, the use-after-free fires from the driver\u0027s own recovery path with no further privilege. It does not require full root in the initial namespace.\nUI:N - No victim action is needed \u2014 the free and the subsequent dereference both occur inside the driver\u0027s suspend/irq-restart sequence once the reset or suspend is under way.\nS:U - The corruption is confined to kernel memory within the same security authority; there is no crossing of a VM, IOMMU, or sandbox boundary.\nC:H - This is a use-after-free on the freed `bnxt_re_dev`: `bnxt_re_start_irq()` reads `rdev-\u003enqr` and `rdev-\u003enqr-\u003enum_msix` out of the freed slab, so an attacker who reclaims the object controls a pointer that is then followed, yielding an arbitrary-read primitive and disclosure of kernel memory.\nI:H - `bnxt_re_stop_irq()` performs `set_bit()` writes directly into the freed object and `wake_up_all()` walks a wait-queue list from freed memory invoking `wq_entry-\u003efunc()`, while `bnxt_re_start_irq()` writes `rdev-\u003enqr-\u003emsix_entries[indx].vector` through a pointer read from the freed slab \u2014 together a write-what-where and control-flow hijack primitive.\nA:H - Even without heap grooming the dereference of the freed `rdev` (typically a NULL `rdev-\u003enqr` or poisoned contents) causes a kernel oops/panic, and it occurs precisely during firmware/PCIe error recovery, turning a recoverable device fault into a full system crash."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:55:16.513Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/aed1bc673907e3df372b317c10ff2f3582f8bf1a"
        },
        {
          "url": "https://git.kernel.org/stable/c/8cb0eef46d70a99c88c26a1addb7fd955242e0e6"
        },
        {
          "url": "https://git.kernel.org/stable/c/f0df225d12fcb049429fb5bf5122afe143c2dd15"
        }
      ],
      "title": "RDMA/bnxt_re: Add sanity checks on rdev validity",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-21901",
    "datePublished": "2025-04-01T15:26:51.807Z",
    "dateReserved": "2024-12-29T08:45:45.785Z",
    "dateUpdated": "2026-08-05T11:55:16.513Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2025-21901",
      "date": "2026-09-16",
      "epss": "0.0021",
      "percentile": "0.1143"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2025-21901\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-04-01T16:15:20.547\",\"lastModified\":\"2026-07-30T06:21:56.330\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nRDMA/bnxt_re: Add sanity checks on rdev validity\\n\\nThere is a possibility that ulp_irq_stop and ulp_irq_start\\ncallbacks will be called when the device is in detached state.\\nThis can cause a crash due to NULL pointer dereference as\\nthe rdev is already freed.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: RDMA/bnxt_re: Se han a\u00f1adido comprobaciones de seguridad sobre la validez de rdev. Existe la posibilidad de que se invoquen las devoluciones de llamada ulp_irq_stop y ulp_irq_start cuando el dispositivo est\u00e9 en estado desconectado. Esto puede provocar un bloqueo debido a la desreferencia de punteros nulos, ya que rdev ya est\u00e1 liberado.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/infiniband/hw/bnxt_re/main.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"cc5b9b48d44756a87170f3901c6c2fd99e6b89b2\",\"lessThan\":\"aed1bc673907e3df372b317c10ff2f3582f8bf1a\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"cc5b9b48d44756a87170f3901c6c2fd99e6b89b2\",\"lessThan\":\"8cb0eef46d70a99c88c26a1addb7fd955242e0e6\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"cc5b9b48d44756a87170f3901c6c2fd99e6b89b2\",\"lessThan\":\"f0df225d12fcb049429fb5bf5122afe143c2dd15\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/infiniband/hw/bnxt_re/main.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.12\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.12\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.18\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.13.6\",\"lessThanOrEqual\":\"6.13.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.14\",\"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},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6},{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}],\"ssvcV203\":[{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"ssvcData\":{\"timestamp\":\"2025-10-01T19:24:32.667966Z\",\"id\":\"CVE-2025-21901\",\"options\":[{\"exploitation\":\"none\"},{\"automatable\":\"no\"},{\"technicalImpact\":\"partial\"}],\"role\":\"CISA Coordinator\",\"version\":\"2.0.3\"}}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-476\"}]},{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-476\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.12\",\"versionEndExcluding\":\"6.12.18\",\"matchCriteriaId\":\"A4DB3151-5402-496B-A73B-C9E8EDD79DCA\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.13\",\"versionEndExcluding\":\"6.13.6\",\"matchCriteriaId\":\"64F12D9B-71C2-4CD7-A288-0D5EF1709620\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.14:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"186716B6-2B66-4BD0-852E-D48E71C0C85F\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.14:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"0D3E781C-403A-498F-9DA9-ECEE50F41E75\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.14:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"66619FB8-0AAF-4166-B2CF-67B24143261D\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:6.14:rc4:*:*:*:*:*:*\",\"matchCriteriaId\":\"D3D6550E-6679-4560-902D-AF52DCFE905B\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/8cb0eef46d70a99c88c26a1addb7fd955242e0e6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/aed1bc673907e3df372b317c10ff2f3582f8bf1a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/f0df225d12fcb049429fb5bf5122afe143c2dd15\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Low",
      "current_release_date": "2026-07-30T10:13:01+00:00",
      "cve": "CVE-2025-21901",
      "id": "CVE-2025-21901",
      "initial_release_date": "2025-04-01T00:00:00+00:00",
      "product_status:known_affected": "212",
      "product_status:known_not_affected": "62",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: RDMA/bnxt_re: Add sanity checks on rdev validity",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-21901.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-30T02:04:14Z",
      "cve": "CVE-2025-21901",
      "id": "CVE-2025-21901",
      "initial_release_date": "2025-04-02T13:29:28Z",
      "product_status:known_affected": "394",
      "product_status:known_not_affected": "459",
      "product_status:recommended": "171",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2025-21901",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2025-21901.json",
      "version": "23"
    },
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"cvssV3_1\": {\"scope\": \"UNCHANGED\", \"version\": \"3.1\", \"baseScore\": 5.5, \"attackVector\": \"LOCAL\", \"baseSeverity\": \"MEDIUM\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\", \"integrityImpact\": \"NONE\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"HIGH\", \"privilegesRequired\": \"LOW\", \"confidentialityImpact\": \"NONE\"}}, {\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2025-21901\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2025-10-01T19:24:32.667966Z\"}}}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-476\", \"description\": \"CWE-476 NULL Pointer Dereference\"}]}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2025-10-01T14:37:24.679Z\"}}], \"cna\": {\"title\": \"RDMA/bnxt_re: Add sanity checks on rdev validity\", \"metrics\": [{\"cvssV3_1\": {\"version\": \"3.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\"}, \"scenarios\": [{\"lang\": \"en\", \"value\": \"AV:L - The vulnerable callbacks are driven by local device-management and error-recovery paths (ethtool ring/channel reconfiguration, devlink/FW reset, SR-IOV reconfiguration, PM suspend/resume, PCIe AER), not by data received from a remote peer. A remote RoCE/Ethernet peer cannot reach `bnxt_re_stop_irq()`/`bnxt_re_start_irq()`.\\nAC:L - In the AER and FW-recovery sequences the L2 driver unconditionally calls `bnxt_ulp_irq_stop()`/`bnxt_ulp_irq_restart()` after `bnxt_ulp_stop()` has already freed `rdev`, so the stale-pointer dereference is deterministic rather than racy. Where a window must be hit, the attacker drives both sides \\u2014 initiating the reset/suspend and issuing the ring-reservation request that calls `bnxt_ulp_irq_stop()`.\\nPR:L - Entering the detached window needs only an unprivileged-reachable action such as a logind-permitted system suspend/resume cycle, or a CAP_NET_ADMIN-scoped ethtool ring/channel reconfiguration available to non-root network workloads; once detached, the use-after-free fires from the driver\u0027s own recovery path with no further privilege. It does not require full root in the initial namespace.\\nUI:N - No victim action is needed \\u2014 the free and the subsequent dereference both occur inside the driver\u0027s suspend/irq-restart sequence once the reset or suspend is under way.\\nS:U - The corruption is confined to kernel memory within the same security authority; there is no crossing of a VM, IOMMU, or sandbox boundary.\\nC:H - This is a use-after-free on the freed `bnxt_re_dev`: `bnxt_re_start_irq()` reads `rdev-\u003enqr` and `rdev-\u003enqr-\u003enum_msix` out of the freed slab, so an attacker who reclaims the object controls a pointer that is then followed, yielding an arbitrary-read primitive and disclosure of kernel memory.\\nI:H - `bnxt_re_stop_irq()` performs `set_bit()` writes directly into the freed object and `wake_up_all()` walks a wait-queue list from freed memory invoking `wq_entry-\u003efunc()`, while `bnxt_re_start_irq()` writes `rdev-\u003enqr-\u003emsix_entries[indx].vector` through a pointer read from the freed slab \\u2014 together a write-what-where and control-flow hijack primitive.\\nA:H - Even without heap grooming the dereference of the freed `rdev` (typically a NULL `rdev-\u003enqr` or poisoned contents) causes a kernel oops/panic, and it occurs precisely during firmware/PCIe error recovery, turning a recoverable device fault into a full system crash.\"}]}], \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"cc5b9b48d44756a87170f3901c6c2fd99e6b89b2\", \"lessThan\": \"aed1bc673907e3df372b317c10ff2f3582f8bf1a\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"cc5b9b48d44756a87170f3901c6c2fd99e6b89b2\", \"lessThan\": \"8cb0eef46d70a99c88c26a1addb7fd955242e0e6\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"cc5b9b48d44756a87170f3901c6c2fd99e6b89b2\", \"lessThan\": \"f0df225d12fcb049429fb5bf5122afe143c2dd15\", \"versionType\": \"git\"}], \"programFiles\": [\"drivers/infiniband/hw/bnxt_re/main.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"6.12\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"6.12\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"6.12.18\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.12.*\"}, {\"status\": \"unaffected\", \"version\": \"6.13.6\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.13.*\"}, {\"status\": \"unaffected\", \"version\": \"6.14\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"drivers/infiniband/hw/bnxt_re/main.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/aed1bc673907e3df372b317c10ff2f3582f8bf1a\"}, {\"url\": \"https://git.kernel.org/stable/c/8cb0eef46d70a99c88c26a1addb7fd955242e0e6\"}, {\"url\": \"https://git.kernel.org/stable/c/f0df225d12fcb049429fb5bf5122afe143c2dd15\"}], \"x_generator\": {\"engine\": \"bippy-1.2.0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nRDMA/bnxt_re: Add sanity checks on rdev validity\\n\\nThere is a possibility that ulp_irq_stop and ulp_irq_start\\ncallbacks will be called when the device is in detached state.\\nThis can cause a crash due to NULL pointer dereference as\\nthe rdev is already freed.\"}], \"cpeApplicability\": [{\"nodes\": [{\"negate\": false, \"cpeMatch\": [{\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.12.18\", \"versionStartIncluding\": \"6.12\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.13.6\", \"versionStartIncluding\": \"6.12\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.14\", \"versionStartIncluding\": \"6.12\"}], \"operator\": \"OR\"}]}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2026-08-05T11:55:16.513Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2025-21901\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-08-05T11:55:16.513Z\", \"dateReserved\": \"2024-12-29T08:45:45.785Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2025-04-01T15:26:51.807Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.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…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…