CVE-2026-97451 (GCVE-0-2026-97451)

Vulnerability from cvelistv5 – Published: 2026-09-24 16:04 – Updated: 2026-09-25 05:10
VLAI
Title
ACPICA: Fix integer overflow in acpi_ex_opcode_3A_1T_1R() (mid_op)
Summary
In the Linux kernel, the following vulnerability has been resolved: ACPICA: Fix integer overflow in acpi_ex_opcode_3A_1T_1R() (mid_op) Add overflow check for Index + Length to prevent integer overflow when calculating the truncation length. This prevents negative size parameter being passed to memcpy().
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < d0d89f2e16a874e0f8fb17045da293e8bedf8b21 (git)
Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < b96401812cbfbb4803faabeefa1f20b8562268b3 (git)
Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < 0e2021f49e64b3c8a9aa880d0c62a218bfe147ce (git)
Affected: 0 , < 6.12.111 (semver)
Affected: 0 , < 6.18.53 (semver)
guessed Create a notification for this product.
Linux Linux Unaffected: 6.12.111 , ≤ 6.12.* (semver)
Unaffected: 6.18.53 , ≤ 6.18.* (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/acpi/acpica/exoparg3.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "d0d89f2e16a874e0f8fb17045da293e8bedf8b21",
              "status": "affected",
              "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
              "versionType": "git"
            },
            {
              "lessThan": "b96401812cbfbb4803faabeefa1f20b8562268b3",
              "status": "affected",
              "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
              "versionType": "git"
            },
            {
              "lessThan": "0e2021f49e64b3c8a9aa880d0c62a218bfe147ce",
              "status": "affected",
              "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
              "versionType": "git"
            },
            {
              "lessThan": "6.12.111",
              "status": "affected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThan": "6.18.53",
              "status": "affected",
              "version": "0",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/acpi/acpica/exoparg3.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.111",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.53",
              "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.12.111",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.53",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nACPICA: Fix integer overflow in acpi_ex_opcode_3A_1T_1R() (mid_op)\n\nAdd overflow check for Index + Length to prevent integer overflow\nwhen calculating the truncation length. This prevents negative\nsize parameter being passed to memcpy()."
        }
      ],
      "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 wrapping Index and Length are AML integer operands of Mid() in acpi_ex_opcode_3A_1T_1R(), taken from the local DSDT/SSDT. The path is acpi_bus_init() \u2192 acpi_load_tables() \u2192 acpi_tb_load_namespace() \u2192 acpi_ns_load_table() \u2192 acpi_ns_execute_table() \u2192 acpi_ds_exec_end_op(); no network protocol carries those integers.\nAC:L - A Mid() whose Index is in [1, Source.length) and Length is Ones (UINT64_MAX) makes (index+length) wrap so truncation is skipped; the STRING path then kzalloc(length+1)==kzalloc(0) and memcpy(..., length) on every acpi_ns_execute_table() of that table. The table author sets those operands; no race.\nPR:N - acpi_bus_init() calls acpi_load_tables(), which runs module-level Mid() in acpi_ns_execute_table() with no capable() or uid check. A compromised DSDT/SSDT is enough; no Linux account, user namespace, or /sys/kernel/config/acpi/table write is required.\nUI:N - acpi_ns_execute_table() evaluates definition-block AML, including a module-level Mid(), automatically during acpi_load_tables() at boot. No mount, file-open, or other victim action is required at trigger time.\nS:U - The overflowing memcpy in acpi_ex_opcode_3A_1T_1R() corrupts the host kernel heap around the Mid() result object from ACPI_ALLOCATE_ZEROED; it does not cross a KVM/Xen, IOMMU, or sandbox boundary.\nC:H - After the wrap, memcpy() in acpi_ex_opcode_3A_1T_1R() reads the untruncated length (UINT64_MAX) bytes from operand[0]-\u003estring.pointer+index, whose object is only operand[0]-\u003estring.length (u32) bytes, an unbounded kernel heap over-read rather than a few-byte leak.\nI:H - On ACPI_TYPE_STRING, ACPI_ALLOCATE_ZEROED(length+1) wraps to a 0-size allocation when length is UINT64_MAX, then memcpy writes that same untruncated length into it\u2014an out-of-bounds write/heap overflow exploitable for control-flow hijack.\nA:H - memcpy of the untruncated length into the wrapped 0-size STRING buffer in acpi_ex_opcode_3A_1T_1R() oopses or panics the kernel during acpi_ns_execute_table() or a later Mid() method evaluation."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-25T05:10:43.926Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/d0d89f2e16a874e0f8fb17045da293e8bedf8b21"
        },
        {
          "url": "https://git.kernel.org/stable/c/b96401812cbfbb4803faabeefa1f20b8562268b3"
        },
        {
          "url": "https://git.kernel.org/stable/c/0e2021f49e64b3c8a9aa880d0c62a218bfe147ce"
        }
      ],
      "title": "ACPICA: Fix integer overflow in acpi_ex_opcode_3A_1T_1R() (mid_op)",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-97451",
    "datePublished": "2026-09-24T16:04:07.520Z",
    "dateReserved": "2026-09-24T14:53:16.871Z",
    "dateUpdated": "2026-09-25T05:10:43.926Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/acpi/acpica/exoparg3.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "d0d89f2e16a874e0f8fb17045da293e8bedf8b21",
                    "status": "affected",
                    "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "b96401812cbfbb4803faabeefa1f20b8562268b3",
                    "status": "affected",
                    "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "0e2021f49e64b3c8a9aa880d0c62a218bfe147ce",
                    "status": "affected",
                    "version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6.12.111",
                    "status": "affected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThan": "6.18.53",
                    "status": "affected",
                    "version": "0",
                    "versionType": "semver"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/acpi/acpica/exoparg3.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.111",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.53",
                    "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\nACPICA: Fix integer overflow in acpi_ex_opcode_3A_1T_1R() (mid_op)\n\nAdd overflow check for Index + Length to prevent integer overflow\nwhen calculating the truncation length. This prevents negative\nsize parameter being passed to memcpy()."
          }
        ],
        "id": "CVE-2026-97451",
        "lastModified": "2026-09-24T17:17:23.463",
        "metrics": {},
        "published": "2026-09-24T17:17:23.463",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/0e2021f49e64b3c8a9aa880d0c62a218bfe147ce"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/b96401812cbfbb4803faabeefa1f20b8562268b3"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/d0d89f2e16a874e0f8fb17045da293e8bedf8b21"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "suse_vex": {
      "aggregate_severity": "not set",
      "current_release_date": "2026-09-24T23:45:46Z",
      "cve": "CVE-2026-97451",
      "id": "CVE-2026-97451",
      "initial_release_date": "2026-09-24T23:45:46Z",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-97451",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-97451.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…