CVE-2026-64303 (GCVE-0-2026-64303)

Vulnerability from cvelistv5 – Published: 2026-07-25 08:49 – Updated: 2026-08-05 12:40
VLAI
Title
spi: fsl-lpspi: terminate the RX channel on TX prepare failure path
Summary
In the Linux kernel, the following vulnerability has been resolved: spi: fsl-lpspi: terminate the RX channel on TX prepare failure path When dmaengine_prep_slave_sg() fails for the TX channel, the error path terminates the TX DMA channel but leaves the RX channel running. Since the RX channel was already submitted and issued prior to preparing the TX descriptor, returning -EINVAL causes the SPI core to unmap the DMA buffers while the RX DMA engine continues writing to them, leading to potential memory corruption or use-after-free. Terminate the RX channel before returning on the TX prepare failure path.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < ad370d1c7a9a832f77b2341513cd31188c9443af (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < cce2063404b2341e7b2bbf85eddfcd70a31a0033 (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < af39a2698f69b584d14a00cffe0f51a2caa15337 (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < e65505d91fa036a238968e4c10744244d1b968c4 (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < d5c1060218a3749c8a18b36f8169d910fce20639 (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < 808033d80d5c9f8adf7e8de9317389270ce13430 (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < 9d000bdd250d649a11cd7f733175686877344582 (git)
Affected: 09c04466ce7ea494993c0635ba5edb6d2222a806 , < 01980b5da56e573d62798d0ff6c86bcaa2b22cbe (git)
Create a notification for this product.
Linux Linux Affected: 5.2
Unaffected: 0 , < 5.2 (semver)
Unaffected: 5.10.261 , ≤ 5.10.* (semver)
Unaffected: 5.15.212 , ≤ 5.15.* (semver)
Unaffected: 6.1.178 , ≤ 6.1.* (semver)
Unaffected: 6.6.145 , ≤ 6.6.* (semver)
Unaffected: 6.12.96 , ≤ 6.12.* (semver)
Unaffected: 6.18.39 , ≤ 6.18.* (semver)
Unaffected: 7.1.4 , ≤ 7.1.* (semver)
Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/spi/spi-fsl-lpspi.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "ad370d1c7a9a832f77b2341513cd31188c9443af",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "cce2063404b2341e7b2bbf85eddfcd70a31a0033",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "af39a2698f69b584d14a00cffe0f51a2caa15337",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "e65505d91fa036a238968e4c10744244d1b968c4",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "d5c1060218a3749c8a18b36f8169d910fce20639",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "808033d80d5c9f8adf7e8de9317389270ce13430",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "9d000bdd250d649a11cd7f733175686877344582",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            },
            {
              "lessThan": "01980b5da56e573d62798d0ff6c86bcaa2b22cbe",
              "status": "affected",
              "version": "09c04466ce7ea494993c0635ba5edb6d2222a806",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/spi/spi-fsl-lpspi.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.2"
            },
            {
              "lessThan": "5.2",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.261",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.212",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.178",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.145",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.96",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.39",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2-rc1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.261",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.212",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.178",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.145",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.96",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.39",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.4",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2-rc1",
                  "versionStartIncluding": "5.2",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nspi: fsl-lpspi: terminate the RX channel on TX prepare failure path\n\nWhen dmaengine_prep_slave_sg() fails for the TX channel, the error path\nterminates the TX DMA channel but leaves the RX channel running. Since\nthe RX channel was already submitted and issued prior to preparing\nthe TX descriptor, returning -EINVAL causes the SPI core to unmap the\nDMA buffers while the RX DMA engine continues writing to them, leading\nto potential memory corruption or use-after-free.\n\nTerminate the RX channel before returning on the TX prepare failure path."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 9.8,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - In a reasonable network-facing deployment, an SPI Ethernet controller such as ENC28J60 receives an unauthenticated remote frame, raises its IRQ, and calls spi_sync(), which traverses the SPI core into the vulnerable fsl-lpspi DMA path.\nAC:L - An attacker can repeatedly drive DMA preparation and influence GFP_NOWAIT allocation pressure with packet flooding; once TX preparation fails after RX issuance, subsequent traffic deterministically exercises the stale RX descriptor without a race to win.\nPR:N - The SPI Ethernet receive IRQ path runs before protocol authentication and has no capability, device-node, or namespace privilege check, so a remote sender needs no privileges.\nUI:N - No victim action is needed after the network interface and SPI NIC are configured; attacker traffic alone invokes the affected transfer path.\nS:U - The stale DMA corrupts memory within the same host kernel security authority and does not inherently cross a VM, IOMMU, or other security scope boundary.\nC:H - The active RX DMA descriptor can write device- and packet-influenced data into unmapped, freed, and reallocated kernel memory, yielding memory corruption that can be leveraged for kernel-memory disclosure.\nI:H - The stale DEV_TO_MEM DMA operation provides attacker-influenced writes into freed or reallocated kernel memory, permitting object corruption and potentially control-flow hijacking or arbitrary kernel code execution.\nA:H - Continued DMA into invalid or repurposed memory can cause an IOMMU fault, kernel oops, panic, or hang, and unauthenticated traffic can trigger the condition repeatedly."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:40:47.211Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/ad370d1c7a9a832f77b2341513cd31188c9443af"
        },
        {
          "url": "https://git.kernel.org/stable/c/cce2063404b2341e7b2bbf85eddfcd70a31a0033"
        },
        {
          "url": "https://git.kernel.org/stable/c/af39a2698f69b584d14a00cffe0f51a2caa15337"
        },
        {
          "url": "https://git.kernel.org/stable/c/e65505d91fa036a238968e4c10744244d1b968c4"
        },
        {
          "url": "https://git.kernel.org/stable/c/d5c1060218a3749c8a18b36f8169d910fce20639"
        },
        {
          "url": "https://git.kernel.org/stable/c/808033d80d5c9f8adf7e8de9317389270ce13430"
        },
        {
          "url": "https://git.kernel.org/stable/c/9d000bdd250d649a11cd7f733175686877344582"
        },
        {
          "url": "https://git.kernel.org/stable/c/01980b5da56e573d62798d0ff6c86bcaa2b22cbe"
        }
      ],
      "title": "spi: fsl-lpspi: terminate the RX channel on TX prepare failure path",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-64303",
    "datePublished": "2026-07-25T08:49:38.223Z",
    "dateReserved": "2026-07-19T15:36:31.779Z",
    "dateUpdated": "2026-08-05T12:40:47.211Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-64303",
      "date": "2026-08-15",
      "epss": "0.00675",
      "percentile": "0.49197"
    },
    "microsoft_vex": {
      "current_release_date": "2026-07-27T14:44:06.000Z",
      "cve": "CVE-2026-64303",
      "id": "msrc_CVE-2026-64303",
      "initial_release_date": "2026-07-26T01:01:40.000Z",
      "product_status:known_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "spi: fsl-lpspi: terminate the RX channel on TX prepare failure path",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-64303.json",
      "version": "2"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-64303\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-07-25T10:17:11.277\",\"lastModified\":\"2026-08-11T15:00:57.447\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nspi: fsl-lpspi: terminate the RX channel on TX prepare failure path\\n\\nWhen dmaengine_prep_slave_sg() fails for the TX channel, the error path\\nterminates the TX DMA channel but leaves the RX channel running. Since\\nthe RX channel was already submitted and issued prior to preparing\\nthe TX descriptor, returning -EINVAL causes the SPI core to unmap the\\nDMA buffers while the RX DMA engine continues writing to them, leading\\nto potential memory corruption or use-after-free.\\n\\nTerminate the RX channel before returning on the TX prepare failure path.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/spi/spi-fsl-lpspi.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"ad370d1c7a9a832f77b2341513cd31188c9443af\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"cce2063404b2341e7b2bbf85eddfcd70a31a0033\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"af39a2698f69b584d14a00cffe0f51a2caa15337\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"e65505d91fa036a238968e4c10744244d1b968c4\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"d5c1060218a3749c8a18b36f8169d910fce20639\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"808033d80d5c9f8adf7e8de9317389270ce13430\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"9d000bdd250d649a11cd7f733175686877344582\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"09c04466ce7ea494993c0635ba5edb6d2222a806\",\"lessThan\":\"01980b5da56e573d62798d0ff6c86bcaa2b22cbe\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/spi/spi-fsl-lpspi.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.2\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.2\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.10.261\",\"lessThanOrEqual\":\"5.10.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.212\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.178\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.145\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.96\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.39\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.4\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2-rc1\",\"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:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":9.8,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":5.9}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/01980b5da56e573d62798d0ff6c86bcaa2b22cbe\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/808033d80d5c9f8adf7e8de9317389270ce13430\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9d000bdd250d649a11cd7f733175686877344582\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ad370d1c7a9a832f77b2341513cd31188c9443af\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/af39a2698f69b584d14a00cffe0f51a2caa15337\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/cce2063404b2341e7b2bbf85eddfcd70a31a0033\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d5c1060218a3749c8a18b36f8169d910fce20639\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/e65505d91fa036a238968e4c10744244d1b968c4\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Important",
      "current_release_date": "2026-07-29T09:37:32+00:00",
      "cve": "CVE-2026-64303",
      "id": "CVE-2026-64303",
      "initial_release_date": "2026-07-25T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: spi: fsl-lpspi: terminate the RX channel on TX prepare failure path",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-64303.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-03T17:14:26Z",
      "cve": "CVE-2026-64303",
      "id": "CVE-2026-64303",
      "initial_release_date": "2026-07-25T16:46:10Z",
      "product_status:known_affected": "166",
      "product_status:known_not_affected": "132",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-64303",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-64303.json",
      "version": "4"
    }
  }
}



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…