LiveActive security incident?Get immediate response
CVE Record

CVE-2025-39809: HID: intel-thc-hid: intel-quicki2c: Fix ACPI dsd ICRS/ISUB length

In the Linux kernel, the following vulnerability has been resolved: HID: intel-thc-hid: intel-quicki2c: Fix ACPI dsd ICRS/ISUB length The QuickI2C ACPI _DSD methods return ICRS and ISUB data with a trailing byte, making the actual length is one more byte than the structs defined. It caused stack-out-of-bounds and kernel crash: kernel: BUG: KASAN: stack-out-of-bounds in quicki2c_acpi_get_dsd_property.constprop.0+0x111/0x1b0 [intel_quicki2c] kernel: Write of size 12 at addr ffff888106d1f900 by task kworker/u33:2/75 kernel: kernel: CPU: 3 UID: 0 PID: 75 Comm: kworker/u33:2 Not tainted 6.16.0+ #3 PREEMPT(voluntary) kernel: Workqueue: async async_run_entry_fn kernel: Call Trace: kernel: <TASK> kernel: dump_stack_lvl+0x76/0xa0 kernel: print_report+0xd1/0x660 kernel: ? __pfx__raw_spin_lock_irqsave+0x10/0x10 kernel: ? __kasan_slab_free+0x5d/0x80 kernel: ? kasan_addr_to_slab+0xd/0xb0 kernel: kasan_report+0xe1/0x120 kernel: ? quicki2c_acpi_get_dsd_property.constprop.0+0x111/0x1b0 [intel_quicki2c] kernel: ? quicki2c_acpi_get_dsd_property.constprop.0+0x111/0x1b0 [intel_quicki2c] kernel: kasan_check_range+0x11c/0x200 kernel: __asan_memcpy+0x3b/0x80 kernel: quicki2c_acpi_get_dsd_property.constprop.0+0x111/0x1b0 [intel_quicki2c] kernel: ? __pfx_quicki2c_acpi_get_dsd_property.constprop.0+0x10/0x10 [intel_quicki2c] kernel: quicki2c_get_acpi_resources+0x237/0x730 [intel_quicki2c] [...] kernel: </TASK> kernel: kernel: The buggy address belongs to stack of task kworker/u33:2/75 kernel: and is located at offset 48 in frame: kernel: quicki2c_get_acpi_resources+0x0/0x730 [intel_quicki2c] kernel: kernel: This frame has 3 objects: kernel: [32, 36) 'hid_desc_addr' kernel: [48, 59) 'i2c_param' kernel: [80, 224) 'i2c_config' ACPI DSD methods return: \_SB.PC00.THC0.ICRS Buffer 000000003fdc947b 001 Len 0C = 0A 00 80 1A 06 00 00 00 00 00 00 00 \_SB.PC00.THC0.ISUB Buffer 00000000f2fcbdc4 001 Len 91 = 00 00 00 00 00 00 00 00 00 00 00 00 Adding reserved padding to quicki2c_subip_acpi_parameter/config.

HighCVSS 8.4Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

A Linux Intel QuickI2C driver mishandles an extra byte returned by certain ACPI firmware data. This can write beyond a stack buffer and crash the kernel. The supplied CVSS score is 8.4, but exploitation requires local access and compatible Intel QuickI2C hardware and firmware behavior.

Executive priority

Treat this as a high-priority endpoint stability and kernel-memory-safety issue, not an internet-wide emergency. Accelerate assessment and routine patching for compatible Intel endpoints, especially where availability is important. There is no supplied evidence of active exploitation, and systems without the affected driver, hardware, and ACPI behavior are unlikely to be exposed.

Technical view

The intel_quicki2c driver sized ICRS and ISUB structures without accounting for a trailing ACPI _DSD byte. Copying 12 bytes into an 11-byte stack object triggers a CWE-787 out-of-bounds write. Kernel developers resolved this by adding reserved padding to the affected ACPI parameter and configuration structures.

Likely exposure

Exposure is limited to Linux systems using the affected Intel QuickI2C HID path with ACPI tables returning the documented trailing byte. The supplied version data identifies Linux 6.14, 6.16.5, and 6.17, but its range semantics are unclear; confirm exact affected and fixed builds with the distribution vendor.

Exploitation context

The bundle reports a reproducible KASAN-detected stack overwrite and kernel crash. CVSS characterizes it as local, low-complexity, requiring neither privileges nor user interaction. KEV is false, and the supplied sources provide no evidence of active exploitation or a public exploit. Confidentiality and integrity impact beyond the CVSS assessment is not demonstrated.

Researcher notes

The demonstrated primitive is a one-byte stack overwrite caused by a 12-byte copy into the 11-byte i2c_param object. The crash occurs in an asynchronous kernel worker while reading ACPI resources. Sources establish the defect and upstream fixes, but do not establish reliable code execution, affected distribution packages, or precise version-range boundaries.

Mitigation direction

  • Install a vendor-supported kernel incorporating the referenced Linux stable fixes.
  • Confirm the distribution's advisory maps its kernel build to either referenced fix commit.
  • Prioritize compatible Intel QuickI2C endpoints showing related crashes or KASAN findings.
  • If patching is delayed, consult vendor guidance for safe, supported driver-specific mitigations.

Validation and detection

  • Inventory kernel versions and determine whether the intel_quicki2c driver is present or loaded.
  • Check hardware and firmware inventories for systems using the affected Intel QuickI2C HID path.
  • Review kernel logs for quicki2c_acpi_get_dsd_property, stack-out-of-bounds, KASAN, or unexplained boot crashes.
  • Verify patched kernels contain commit 4adce86d4b13 or 1db9df89a213, as appropriate.
  • After updating, confirm normal boot and QuickI2C device operation without recurring kernel errors.
Prepared
Confidence
medium
Sources
4

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-787: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2025-39809 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
8.4 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

2CVSS vectors
3Timeline events
1ADP providers
3Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: total

CVSS vector scores

2 official scores

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
8.4CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H2.55.9Linux
7.8CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H1.85.9CISA-ADP

Vulnerability scoring details

Base CVSS 3.1 score

8.4High
CVSS 3.1 vector shape for CVE-2025-39809Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
cvssV3_1other:ssvc
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux5282e45ccbfa91524944a32d40386c54fdd4d145, 5282e45ccbfa91524944a32d40386c54fdd4d145unaffected
LinuxLinux6.14, 0, 6.16.5, 6.17affected
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-787 · source CWE mapping

Out-of-bounds Write

Out-of-bounds Write represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.