CVE-2026-72089 (GCVE-0-2026-72089)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:52 – Updated: 2026-08-17 05:40
VLAI
Title
accel/ivpu: Reject firmware log with size smaller than header
Summary
In the Linux kernel, the following vulnerability has been resolved: accel/ivpu: Reject firmware log with size smaller than header fw_log_from_bo() validates the tracing buffer header_size and that the log fits within the BO, but never checks that log->size is at least log->header_size. fw_log_print_buffer() then computes: u32 data_size = log->size - log->header_size; which underflows to a near-U32_MAX value when firmware reports a log whose size is smaller than its header. That huge data_size defeats the log_start/log_end bounds clamps added by commit dd1311bcf0e6 ("accel/ivpu: Add bounds checks for firmware log indices"), so fw_log_print_lines() reads far past the small real data region of the BO. A size of 0 also makes fw_log_from_bo() advance the offset by 0, causing the callers to loop forever on the same header. Reject logs whose size is smaller than the header (which also rejects size == 0).
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: d4e4257afa6ed5205eda993180401fc2c20e4b60 , < 5592a207e158b738d9c1d27f208dbbea13ae7606 (git)
Affected: d4e4257afa6ed5205eda993180401fc2c20e4b60 , < dc9a1cda2e46d0254730a6f93cfe48532895f33c (git)
Affected: d4e4257afa6ed5205eda993180401fc2c20e4b60 , < 257321a1c036da417f5d9c47b95c7e58f62bf263 (git)
Affected: d4e4257afa6ed5205eda993180401fc2c20e4b60 , < 6920e62be4c969a68ce4ebc59da68c6cbc9512e5 (git)
Affected: d4e4257afa6ed5205eda993180401fc2c20e4b60 , < ddb44baed257560f192b145ed36cf8c0a412de47 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.6
Unaffected: 0 , < 6.6 (semver)
Unaffected: 6.6.148 , ≤ 6.6.* (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 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/accel/ivpu/ivpu_fw_log.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "5592a207e158b738d9c1d27f208dbbea13ae7606",
              "status": "affected",
              "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
              "versionType": "git"
            },
            {
              "lessThan": "dc9a1cda2e46d0254730a6f93cfe48532895f33c",
              "status": "affected",
              "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
              "versionType": "git"
            },
            {
              "lessThan": "257321a1c036da417f5d9c47b95c7e58f62bf263",
              "status": "affected",
              "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
              "versionType": "git"
            },
            {
              "lessThan": "6920e62be4c969a68ce4ebc59da68c6cbc9512e5",
              "status": "affected",
              "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
              "versionType": "git"
            },
            {
              "lessThan": "ddb44baed257560f192b145ed36cf8c0a412de47",
              "status": "affected",
              "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/accel/ivpu/ivpu_fw_log.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.6"
            },
            {
              "lessThan": "6.6",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.148",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "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": "6.6.148",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.97",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\naccel/ivpu: Reject firmware log with size smaller than header\n\nfw_log_from_bo() validates the tracing buffer header_size and that the\nlog fits within the BO, but never checks that log-\u003esize is at least\nlog-\u003eheader_size. fw_log_print_buffer() then computes:\n\n  u32 data_size = log-\u003esize - log-\u003eheader_size;\n\nwhich underflows to a near-U32_MAX value when firmware reports a log whose\nsize is smaller than its header. That huge data_size defeats the\nlog_start/log_end bounds clamps added by commit dd1311bcf0e6 (\"accel/ivpu:\nAdd bounds checks for firmware log indices\"), so fw_log_print_lines() reads\nfar past the small real data region of the BO. A size of 0 also makes\nfw_log_from_bo() advance the offset by 0, causing the callers to loop\nforever on the same header.\n\nReject logs whose size is smaller than the header (which also rejects\nsize == 0)."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is in Intel NPU (ivpu) firmware log parsing reached only via local debugfs reads/writes or automatic driver recovery/coredump paths after submitting work through the DRM render node; there is no network-facing entry point.\nAC:L - An unprivileged local user can repeatedly submit NPU jobs to provoke firmware faults/timeouts that leave malformed tracing headers and then reliably trigger kernel log parsing during recovery, coredump, or fw_log access without depending on uncontrollable timing or layout.\nPR:L - Exploitation requires only standard local access to the Intel NPU DRM render node to submit inference jobs and provoke recovery; it does not require root/CAP_SYS_ADMIN, and the device is not reachable from unprivileged user namespaces.\nUI:N - No victim interaction is required; the attacker triggers malformed firmware log processing themselves via job submission and the resulting automatic recovery/coredump path or by reading debugfs fw_log.\nS:U - Impact is confined to kernel memory and availability on the same host running the ivpu driver; it does not cross VM, container, or IOMMU security boundaries.\nC:H - Integer underflow makes data_size wrap to ~U32_MAX, bypassing index clamps so fw_log_print_lines performs a massive out-of-bounds read past the tracing BO and can disclose adjacent kernel memory via drm_printf/coredump output.\nI:N - The flaw is an out-of-bounds read and possible infinite loop during parsing; it does not provide an arbitrary kernel write, code execution, or other integrity-modifying primitive.\nA:H - A near-U32_MAX read can oops/panic the kernel when accessing unmapped memory, and log size 0 prevents offset advancement causing an infinite loop in fw_log_print_all_in_bo during coredump, reset, or debugfs access, hanging the system."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:40:09.108Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/5592a207e158b738d9c1d27f208dbbea13ae7606"
        },
        {
          "url": "https://git.kernel.org/stable/c/dc9a1cda2e46d0254730a6f93cfe48532895f33c"
        },
        {
          "url": "https://git.kernel.org/stable/c/257321a1c036da417f5d9c47b95c7e58f62bf263"
        },
        {
          "url": "https://git.kernel.org/stable/c/6920e62be4c969a68ce4ebc59da68c6cbc9512e5"
        },
        {
          "url": "https://git.kernel.org/stable/c/ddb44baed257560f192b145ed36cf8c0a412de47"
        }
      ],
      "title": "accel/ivpu: Reject firmware log with size smaller than header",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-72089",
    "datePublished": "2026-08-15T05:52:36.800Z",
    "dateReserved": "2026-08-09T03:40:39.905Z",
    "dateUpdated": "2026-08-17T05:40:09.108Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-72089",
      "date": "2026-09-21",
      "epss": "0.00166",
      "percentile": "0.06245"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/accel/ivpu/ivpu_fw_log.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "5592a207e158b738d9c1d27f208dbbea13ae7606",
                    "status": "affected",
                    "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "dc9a1cda2e46d0254730a6f93cfe48532895f33c",
                    "status": "affected",
                    "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "257321a1c036da417f5d9c47b95c7e58f62bf263",
                    "status": "affected",
                    "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6920e62be4c969a68ce4ebc59da68c6cbc9512e5",
                    "status": "affected",
                    "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "ddb44baed257560f192b145ed36cf8c0a412de47",
                    "status": "affected",
                    "version": "d4e4257afa6ed5205eda993180401fc2c20e4b60",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/accel/ivpu/ivpu_fw_log.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.6"
                  },
                  {
                    "lessThan": "6.6",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.148",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.97",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.40",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.1.*",
                    "status": "unaffected",
                    "version": "7.1.5",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.2",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\naccel/ivpu: Reject firmware log with size smaller than header\n\nfw_log_from_bo() validates the tracing buffer header_size and that the\nlog fits within the BO, but never checks that log-\u003esize is at least\nlog-\u003eheader_size. fw_log_print_buffer() then computes:\n\n  u32 data_size = log-\u003esize - log-\u003eheader_size;\n\nwhich underflows to a near-U32_MAX value when firmware reports a log whose\nsize is smaller than its header. That huge data_size defeats the\nlog_start/log_end bounds clamps added by commit dd1311bcf0e6 (\"accel/ivpu:\nAdd bounds checks for firmware log indices\"), so fw_log_print_lines() reads\nfar past the small real data region of the BO. A size of 0 also makes\nfw_log_from_bo() advance the offset by 0, causing the callers to loop\nforever on the same header.\n\nReject logs whose size is smaller than the header (which also rejects\nsize == 0)."
          }
        ],
        "id": "CVE-2026-72089",
        "lastModified": "2026-08-17T06:18:07.827",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.2,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-08-15T06:21:22.980",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/257321a1c036da417f5d9c47b95c7e58f62bf263"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/5592a207e158b738d9c1d27f208dbbea13ae7606"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/6920e62be4c969a68ce4ebc59da68c6cbc9512e5"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/dc9a1cda2e46d0254730a6f93cfe48532895f33c"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/ddb44baed257560f192b145ed36cf8c0a412de47"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-17T21:41:29+00:00",
      "cve": "CVE-2026-72089",
      "id": "CVE-2026-72089",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_affected": "76",
      "product_status:known_not_affected": "198",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: accel/ivpu: Reject firmware log with size smaller than header",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-72089.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-28T01:00:57Z",
      "cve": "CVE-2026-72089",
      "id": "CVE-2026-72089",
      "initial_release_date": "2026-08-28T01:00:57Z",
      "product_status:known_not_affected": "290",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-72089",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-72089.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…

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…