Skip to main content

Linux Kernel EUVDEUVD-2026-82298

| CVE-2026-93190 HIGH
2026-09-17 Linux GHSA-fw4r-5v3q-p28x
8.4
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Local access to ChromeOS device
  2. Delivery
    Compromise or flash non-compliant EC firmware
  3. Exploit
    EC returns PD cap count >7 in TYPEC_STATUS
  4. Execution
    memcpy overflows fixed stack pdo[] array
  5. Impact
    Kernel stack corruption and crash

Vulnerability Assessment

Exploitation Conditions

Requires the ChromeOS Embedded Controller to report source_cap_count or sink_cap_count greater than PDO_MAX_OBJECTS (7) in its TYPEC_STATUS response, which stock ChromeOS EC firmware caps - so exploitation is limited to systems running non-compliant, buggy, or compromised EC firmware. The vulnerable path is in cros_typec_register_partner_pdos() on Chromebook hardware with the cros_ec_typec driver bound. Because the untrusted values originate from the EC (a trusted firmware component) rather than directly from the plugged-in USB-C partner or a userspace/network interface, an attacker must first control the EC firmware, which effectively requires physical/administrative subversion of the platform; there is no remote or unprivileged path in a default configuration.

Impact

The vendor CVSS of 8.4 (AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H) substantially overstates real-world risk. The flaw is a genuine stack out-of-bounds write: cros_typec_register_partner_pdos() memcpy's up to 255 u32 PDO entries into a fixed caps_desc.pdo[PDO_MAX_OBJECTS] (7-entry) stack array, overflowing by roughly 1 KB, and also reads past the 7-entry EC source arrays. However, the overflowing counts (source_cap_count/sink_cap_count) are u8 fields sourced from the ChromeOS Embedded Controller's TYPEC_STATUS response, and the description explicitly states the EC firmware caps these counts today so a compliant setup never hits the bug. This means exploitation is not attacker-driven under normal conditions - it requires a non-compliant or compromised EC supplying oversized counts, which contradicts the vendor's PR:N/AC:L rating. There is no EPSS score, no CISA KEV listing, and no public POC provided, all consistent with a defense-in-depth hardening fix rather than an exploited vulnerability. The CWE is listed as N/A but the description is unambiguously a stack buffer overflow (CWE-787/121). Net: a real memory-safety bug worth patching, but practical risk is low because the trusted data source (EC firmware) already bounds the values; treat as medium-low priority, not the critical the raw score implies.

Exploit ScenarioDerived

An attacker who can run modified or non-compliant ChromeOS EC firmware (or otherwise cause the EC to report a PD capability count above 7 in its TYPEC_STATUS response) triggers cros_typec_register_partner_pdos() to memcpy past the fixed 7-entry stack array, corrupting the kernel stack and crashing the machine or potentially influencing kernel control flow. On stock ChromeOS the EC caps these counts, so this is not reachable without first subverting the EC. No public exploit code exists.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 18, 2026

An out-of-bounds stack write exists in the Linux kernel's platform/chrome cros_ec_typec driver, where cros_typec_register_partner_pdos() copies USB-C Power Delivery objects from the ChromeOS Embedded Controller's TYPEC_STATUS response into the fixed seven-entry caps_desc.pdo array without validating the accompanying source_cap_count and sink_cap_count fields. If either 8-bit count exceeds PDO_MAX_OBJECTS (7), the memcpy overruns the stack buffer (a count of 255 overruns it by roughly 1 KB) and also reads past the equally narrow EC-side arrays. Affected systems are Chromebook-class hardware running the cros_ec_typec driver, and exploitation is gated on the EC firmware reporting a count above 7 - stock ChromeOS EC firmware caps these counts, so the flaw is only reachable with non-compliant, buggy, or attacker-controlled EC firmware; no public exploit identified at time of analysis, and the vendor score of 8.4 overstates real-world risk (our assessment is CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:L/A:H).

RemediationAI

Vendor-released patch: upgrade to Linux 6.1.188, 6.6.157, 6.12.110, 6.18.52, or 7.2.6 (fix present upstream in 7.3-rc1); the specific stable-branch commits are the git.kernel.org references above, and the authoritative advisory is https://nvd.nist.gov/vuln/detail/CVE-2026-93190. The fix validates source_cap_count and sink_cap_count next to the memcpy and simply skips PDO registration when either exceeds PDO_MAX_OBJECTS, while allowing the remainder of cros_typec_handle_status() to run so Type-C events are still handled and cleared - meaning the patch has no functional downside and should be taken at the next kernel update. Where patching is delayed, the only meaningful compensating control is to ensure the ChromeOS Embedded Controller firmware is a compliant, up-to-date build that caps these counts at seven, since stock firmware already does so and that cap is what makes the bug unreachable in practice; because the tainted length originates from the EC rather than from the USB-C partner, restricting physical access to USB-C ports does not close the vector, and blacklisting or unbinding the cros_ec_typec module would remove the risk but break Type-C port/PD management, charger negotiation, and alt-mode handling on the affected Chromebook - an acceptable trade-off only for units that never need USB-C role or power negotiation.

Affected VersionsENISA

Linux 348a2e8c93d3ca622cf1b293cd2f597c9db74d9d <7617b210a2200b76d8f171819390468c7d189c80
Linux patch: 6.6.157
Linux patch: 6.18.52
Linux 348a2e8c93d3ca622cf1b293cd2f597c9db74d9d <4e37371cb4e3b8ff564d7760029236a7bd614562
Linux 348a2e8c93d3ca622cf1b293cd2f597c9db74d9d <2a7a4e45a3aa4f4ef7013eb64649f6184b76a293
Linux patch: 0
Linux patch: 6.1.188
Linux patch: 7.3-rc1
Linux 348a2e8c93d3ca622cf1b293cd2f597c9db74d9d <a0a8cd9fc9c48b95095bcec4b146f7a99486f58e
Linux patch: 6.12.110
Linux 348a2e8c93d3ca622cf1b293cd2f597c9db74d9d <e4728288473a5024a8bdba7d43f346719606fea0
Linux patch: 7.2.6
Linux 348a2e8c93d3ca622cf1b293cd2f597c9db74d9d <54d6b0ee9b8ba434089b11843effc111dc2e6ead
Linux 6.1

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The cros_ec_typec driver bridges the ChromeOS Embedded Controller (EC) and the Linux Type-C/USB-C Power Delivery subsystem on Chromebook platforms. When a partner device is attached, the driver parses the EC's TYPEC_STATUS response, which carries arrays of Power Data Objects (PDOs) describing the partner's source and sink capabilities, and copies them into caps_desc.pdo[], a fixed-size u32 array sized by PDO_MAX_OBJECTS = 7. The source_cap_count and sink_cap_count fields describing those arrays are u8 values supplied by the EC, and the only validation performed is that the two are not both zero - no upper bound is enforced before the memcpy calls. The root cause is therefore an unchecked-length copy into a fixed-size stack buffer: an out-of-bounds write (stack buffer overflow class, CWE-787/CWE-121 territory), compounded by an out-of-bounds read of the EC-side seven-entry source arrays. The CPE data identifies the affected component as the Linux kernel (cpe:2.3:a:linux:linux), i.e. any build with CONFIG-based inclusion of the cros_ec_typec driver, which is essentially all ChromeOS kernels plus downstream distributions enabling it. Crucially, the untrusted length does not originate from the plugged-in USB-C partner, a syscall, or the network - it comes from the EC, a trusted firmware element - so the trust boundary crossed is between kernel and EC firmware rather than between kernel and an external attacker.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Linux) PRIMARY 8.4 HIGH
AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 4.7 MEDIUM

Overflow data comes from EC firmware that already caps counts, so it requires a compromised/non-compliant EC (PR:H, AC:H); stack corruption is crash-primary (A:H) with limited integrity and no confidentiality impact.

3.1 AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:L/A:H
4.0 AV:L/AC:H/AT:N/PR:H/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE 5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

4
CVSS changed
Sep 18, 2026 - 18:22 NVD
8.4 (HIGH)
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 16:12 cve.org
HIGH 8.4
CVE Published
Sep 17, 2026 - 16:12 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

platform/chrome: cros_ec_typec: Reject out-of-bounds PD cap count

cros_typec_register_partner_pdos() copies the partner PDOs from the EC TYPEC_STATUS response into the fixed caps_desc.pdo[PDO_MAX_OBJECTS] array.

memcpy(caps_desc.pdo, resp->source_cap_pdos, sizeof(u32) * resp->source_cap_count); ... memcpy(caps_desc.pdo, resp->sink_cap_pdos, sizeof(u32) * resp->sink_cap_count);

PDO_MAX_OBJECTS is 7. source_cap_count and sink_cap_count are u8 fields from the EC. The only check is that they are not both zero. If either is larger than 7, the memcpy writes past the end of the array on the stack. A count of 255 overflows it by about 1 KB. The EC source arrays are only seven entries wide. A larger count reads past them too.

The ChromeOS EC firmware caps these counts today, so a compliant setup does not hit this. The kernel should still validate these values rather than trust them.

Validate the counts in cros_typec_register_partner_pdos() next to the memcpy. Skip the PDO registration if either count is above PDO_MAX_OBJECTS. The rest of cros_typec_handle_status() still runs so events are handled and cleared.

Executive ViewAI

Why It Matters

CVE-2026-93190 affects the Linux kernel's cros_ec_typec driver used on Chromebook-class hardware, where malformed USB-C power-delivery data supplied by the embedded controller can overwrite a fixed-size stack buffer and corrupt kernel memory. Exposure is narrow: reaching the flaw requires high-privilege local access plus non-compliant or attacker-controlled EC firmware, and no public exploit code has been identified, so the practical risk to a standard managed ChromeOS fleet is low relative to the vendor's 8.4 score. Leadership should treat this as a routine patch-management item for affected Chromebook assets rather than an emergency, while confirming that EC firmware across the fleet remains vendor-signed and unmodified.

Business Impact: Low
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 91% exploitable
Prevalence
Low
ChromeOS-specific cros_ec_typec kernel driver, only on Chromebooks
Data Quality
3 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Low

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy