CVE-2026-64081 (GCVE-0-2026-64081)
Vulnerability from cvelistv5
Published
2026-07-19 15:39
Modified
2026-08-05 12:39
Summary
In the Linux kernel, the following vulnerability has been resolved: firmware: arm_ffa: Validate framework notification message layout Framework notifications carry an indirect message in the shared RX buffer. Validate the reported offset and size before using them, reject zero-length payloads, and ensure that any non-header payload starts at the UUID field rather than in the middle of the message header. Use the validated offset and size values for both kmemdup() and the UUID parsing path so malformed firmware data cannot drive an out-of-bounds read or an oversized allocation.
Impacted products
Vendor Product Version
Linux Linux Version: 285a5ea0f542db94c3ed11e01a71abb47d15cbf5
Version: 285a5ea0f542db94c3ed11e01a71abb47d15cbf5
Version: 285a5ea0f542db94c3ed11e01a71abb47d15cbf5
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/firmware/arm_ffa/driver.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "3c51d99449dc5a01c08a7fce6071d6721f5aac83",
              "status": "affected",
              "version": "285a5ea0f542db94c3ed11e01a71abb47d15cbf5",
              "versionType": "git"
            },
            {
              "lessThan": "76eb90e2b03de147e12ab68ea8afd8ea0342df0a",
              "status": "affected",
              "version": "285a5ea0f542db94c3ed11e01a71abb47d15cbf5",
              "versionType": "git"
            },
            {
              "lessThan": "4a1cc9e96b311d2609a6f963a5e35bd4ae730d97",
              "status": "affected",
              "version": "285a5ea0f542db94c3ed11e01a71abb47d15cbf5",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/firmware/arm_ffa/driver.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.15"
            },
            {
              "lessThan": "6.15",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.34",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.11",
              "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.18.34",
                  "versionStartIncluding": "6.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.11",
                  "versionStartIncluding": "6.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "6.15",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfirmware: arm_ffa: Validate framework notification message layout\n\nFramework notifications carry an indirect message in the shared RX\nbuffer. Validate the reported offset and size before using them, reject\nzero-length payloads, and ensure that any non-header payload starts at\nthe UUID field rather than in the middle of the message header.\n\nUse the validated offset and size values for both kmemdup() and the UUID\nparsing path so malformed firmware data cannot drive an out-of-bounds\nread or an oversized allocation."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 8.4,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is reached when the ARM FF-A partition manager delivers a framework RX-buffer-full notification to the Linux host via per-CPU IRQ and SMCCC, not via network packets or physical device access.\nAC:L - A malicious or compromised FF-A sender partition can craft the indirect message header offset and size fields directly in its TX buffer and reliably trigger the vulnerable kmemdup path on delivery.\nPR:N - No Linux credentials, capabilities, or user-namespace privileges are checked or required on the vulnerable IRQ-driven path; exploitation only requires the ability to send a crafted FF-A indirect message from a peer partition or firmware.\nUI:N - Processing is automatic once the framework delivers the notification and fills the shared RX buffer; no victim user action is needed.\nS:U - The impact is kernel memory disclosure and denial of service within the host kernel security authority, not a VM escape or cross-IOMMU boundary bypass.\nC:H - Unvalidated offset and size allow kmemdup to copy attacker-chosen amounts of kernel memory beyond the bounded RX buffer, constituting an out-of-bounds read of kernel memory.\nI:H - The attacker-controlled out-of-bounds copy primitive reads adjacent kernel objects and is a standard building block for kernel exploit chains that achieve arbitrary write and code execution.\nA:H - Crafted values can cause kernel faults on invalid addresses during the out-of-bounds copy, or massive kmemdup allocations that exhaust kernel memory and crash or deny service."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:39:00.788Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/3c51d99449dc5a01c08a7fce6071d6721f5aac83"
        },
        {
          "url": "https://git.kernel.org/stable/c/76eb90e2b03de147e12ab68ea8afd8ea0342df0a"
        },
        {
          "url": "https://git.kernel.org/stable/c/4a1cc9e96b311d2609a6f963a5e35bd4ae730d97"
        }
      ],
      "title": "firmware: arm_ffa: Validate framework notification message layout",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-64081",
    "datePublished": "2026-07-19T15:39:53.433Z",
    "dateReserved": "2026-07-19T07:54:57.031Z",
    "dateUpdated": "2026-08-05T12:39:00.788Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…