{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2024-41028", "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "state": "PUBLISHED", "assignerShortName": "Linux", "dateReserved": "2024-07-12T12:17:45.617Z", "datePublished": "2024-07-29T14:31:44.704Z", "dateUpdated": "2026-08-05T11:34:49.614Z" }, "containers": { "cna": { "providerMetadata": { "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux", "dateUpdated": "2026-08-05T11:34:49.614Z" }, "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nplatform/x86: toshiba_acpi: Fix array out-of-bounds access\n\nIn order to use toshiba_dmi_quirks[] together with the standard DMI\nmatching functions, it must be terminated by a empty entry.\n\nSince this entry is missing, an array out-of-bounds access occurs\nevery time the quirk list is processed.\n\nFix this by adding the terminating empty entry." } ], "metrics": [ { "cvssV3_1": { "version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H", "baseScore": 7.1, "baseSeverity": "HIGH" }, "scenarios": [ { "lang": "en", "value": "AV:L - The out-of-bounds access occurs in the driver's `__init` path (`toshiba_acpi_init()` → `toshiba_dmi_init()`), reached only via local module load or in-kernel boot-time initialization. There is no network- or adjacent-network-reachable path to this code.\nAC:L - The commit states the out-of-bounds access \"occurs every time the quirk list is processed\" — it is fully deterministic and requires no race, timing, or special state, and `toshiba_dmi_init()` runs unconditionally before any hardware check, so it triggers on any x86 system.\nPR:L - On builds with `CONFIG_ACPI_TOSHIBA=y` the faulty code executes automatically at boot, and on modular builds it runs on driver load, exposing every local user on the system without requiring real root privileges in the initial namespace. Consistent with CVE-2025-38661, the identical missing-`dmi_system_id`-terminator bug class.\nUI:N - The out-of-bounds walk happens automatically during module/kernel initialization; no victim action such as opening a file or mounting a filesystem is needed.\nS:U - The corruption and its effects are confined to the kernel's own memory and the toshiba_acpi driver's quirk flags, with no crossing of a virtualization, IOMMU, or sandbox boundary.\nC:H - The unterminated table causes reads far past the array into `.init.rodata`, and the resulting garbage `slot` values (0–127 from the 7-bit bitfield) index past the 23-entry `dmi_ident[]` into adjacent globals such as `dmi_devices`, whose contents are then dereferenced by `strstr()`/`strcmp()` — an unbounded read of arbitrary kernel memory, not a strictly bounded few-byte overread.\nI:N - `dmi_first_match()` and `dmi_matches()` only read; the only downstream effect is setting the `turn_on_panel_on_resume` and `hci_hotkey_quickstart` boolean quirk flags, so no attacker-controlled memory write or control-flow hijack primitive is produced.\nA:H - The wild-pointer dereference in `strstr()`/`strcmp()` on an out-of-bounds `dmi_ident[]` entry, plus `strcmp()` against a possibly non-NUL-terminated inline garbage buffer, can fault and oops the kernel during boot or module initialization, and the unterminated loop may run for an unbounded number of iterations." } ] } ], "affected": [ { "product": "Linux", "vendor": "Linux", "defaultStatus": "unaffected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/platform/x86/toshiba_acpi.c" ], "versions": [ { "version": "3cb1f40dfdc3b9f5449076c96b4e2523139f5cd0", "lessThan": "e030aa6c972641cb069086a8c7a0f747653e472a", "status": "affected", "versionType": "git" }, { "version": "3cb1f40dfdc3b9f5449076c96b4e2523139f5cd0", "lessThan": "639868f1cb87b683cf830353bbee0c4078202313", "status": "affected", "versionType": "git" }, { "version": "3cb1f40dfdc3b9f5449076c96b4e2523139f5cd0", "lessThan": "0d71da43d6b7916d36cf1953d793da80433c50bf", "status": "affected", "versionType": "git" }, { "version": "3cb1f40dfdc3b9f5449076c96b4e2523139f5cd0", "lessThan": "b6e02c6b0377d4339986e07aeb696c632cd392aa", "status": "affected", "versionType": "git" } ] }, { "product": "Linux", "vendor": "Linux", "defaultStatus": "affected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/platform/x86/toshiba_acpi.c" ], "versions": [ { "version": "6.1", "status": "affected" }, { "version": "0", "lessThan": "6.1", "status": "unaffected", "versionType": "semver" }, { "version": "6.1.100", "lessThanOrEqual": "6.1.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.6.41", "lessThanOrEqual": "6.6.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.9.10", "lessThanOrEqual": "6.9.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.10", "lessThanOrEqual": "*", "status": "unaffected", "versionType": "original_commit_for_fix" } ] } ], "cpeApplicability": [ { "nodes": [ { "operator": "OR", "negate": false, "cpeMatch": [ { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.1", "versionEndExcluding": "6.1.100" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.1", "versionEndExcluding": "6.6.41" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.1", "versionEndExcluding": "6.9.10" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.1", "versionEndExcluding": "6.10" } ] } ] } ], "references": [ { "url": "https://git.kernel.org/stable/c/e030aa6c972641cb069086a8c7a0f747653e472a" }, { "url": "https://git.kernel.org/stable/c/639868f1cb87b683cf830353bbee0c4078202313" }, { "url": "https://git.kernel.org/stable/c/0d71da43d6b7916d36cf1953d793da80433c50bf" }, { "url": "https://git.kernel.org/stable/c/b6e02c6b0377d4339986e07aeb696c632cd392aa" } ], "title": "platform/x86: toshiba_acpi: Fix array out-of-bounds access", "x_generator": { "engine": "bippy-1.2.0" } }, "adp": [ { "title": "CVE Program Container", "references": [ { "url": "https://git.kernel.org/stable/c/e030aa6c972641cb069086a8c7a0f747653e472a", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/639868f1cb87b683cf830353bbee0c4078202313", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/0d71da43d6b7916d36cf1953d793da80433c50bf", "tags": [ "x_transferred" ] }, { "url": "https://git.kernel.org/stable/c/b6e02c6b0377d4339986e07aeb696c632cd392aa", "tags": [ "x_transferred" ] }, { "url": "https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html" } ], "providerMetadata": { "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE", "dateUpdated": "2025-11-03T21:59:27.844Z" } }, { "metrics": [ { "other": { "type": "ssvc", "content": { "id": "CVE-2024-41028", "role": "CISA Coordinator", "options": [ { "Exploitation": "none" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "version": "2.0.3", "timestamp": "2024-09-10T16:24:02.601705Z" } } } ], "title": "CISA ADP Vulnrichment", "providerMetadata": { "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP", "dateUpdated": "2024-09-11T17:34:04.253Z" } } ] } }