CVE-2026-64420
mfd: cros_ec: Delay dev_set_drvdata() until probe success
Description
In the Linux kernel, the following vulnerability has been resolved: mfd: cros_ec: Delay dev_set_drvdata() until probe success If ec_device_probe() fails, cros_ec_class_release releases memory for the cros_ec_dev structure. However, because the drvdata was already set, sub-drivers like cros_ec_typec can still retrieve the stale pointer via the platform device. This leads to a use-after-free when cros_ec_typec attempts to access &typec->ec->ec->dev on a device that has already been released. Move dev_set_drvdata() to ensure that the pointer is only made available once all initialization steps have succeeded. sysfs: cannot create duplicate filename '/class/chromeos/cros_ec' Call trace: sysfs_do_create_link_sd+0x94/0xdc sysfs_create_link+0x30/0x44 device_add_class_symlinks+0x90/0x13c device_add+0xf0/0x50c ec_device_probe+0x150/0x4f0 platform_probe+0xa0/0xe0 ... BUG: KASAN: invalid-access in __memcpy+0x44/0x230 Write at addr f5ffff809e2d33ac by task kworker/u32:5/125 Pointer tag: [f5], memory tag: [fe] Tainted : [W]=WARN, [O]=OOT_MODULE Hardware name: Google Navi unprovisioned 0x7FFFFFFF/sku0 board/sku3 Workqueue: events_unbound deferred_probe_work_func Call trace: __memcpy+0x44/0x230 cros_ec_check_features+0x60/0xcc [cros_ec_proto] cros_typec_probe+0xe8/0x6e0 [cros_ec_typec] platform_probe+0xa0/0xe0
INFO
Published Date :
July 25, 2026, 10:17 a.m.
Last Modified :
July 25, 2026, 10:17 a.m.
Remotely Exploit :
No
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Products
The following products are affected by CVE-2026-64420
vulnerability.
Even if cvefeed.io is aware of the exact versions of the
products
that
are
affected, the information is not represented in the table below.
No affected product recoded yet
Solution
- Update the Linux kernel.
- Apply the patch for MFD: cros_ec: Delay dev_set_drvdata().
- Ensure probe success before setting driver data.
- Move dev_set_drvdata() to after initialization.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-64420.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-64420 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-64420
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-64420 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-64420 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jul. 25, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': '24522713034d521ea4b5f5f36342e2b2f7e73bd6', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': 'f7e81dc181d9fe8ab977158042cd193e8cc12091', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': '257203d83204b192d1265a916b42ca0d499bb117', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': '729ae27dc2503a7c1f92da1859efb45da03e4fa0', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': 'ed2941e5db016a0c600b25f1972620e6e223d9fa', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': 'b5f41d5bf08e7b1b14fa0bd640975e6d78dc006d', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': 'fc030c5b116f668d4ca86dca63742ddbc98d1665', 'versionType': 'git'}, {'status': 'affected', 'version': '1c1d152cc5ac3a67d199728a9ba0b4f54a498f8b', 'lessThan': '8b2c1d41bc36c100b38ce5ee6def246c527eaf8a', 'versionType': 'git'}], 'programFiles': ['drivers/mfd/cros_ec_dev.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '4.12'}, {'status': 'unaffected', 'version': '0', 'lessThan': '4.12', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.261', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.212', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.178', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.145', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.96', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.39', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.1.4', 'versionType': 'semver', 'lessThanOrEqual': '7.1.*'}, {'status': 'unaffected', 'version': '7.2-rc1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/mfd/cros_ec_dev.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: mfd: cros_ec: Delay dev_set_drvdata() until probe success If ec_device_probe() fails, cros_ec_class_release releases memory for the cros_ec_dev structure. However, because the drvdata was already set, sub-drivers like cros_ec_typec can still retrieve the stale pointer via the platform device. This leads to a use-after-free when cros_ec_typec attempts to access &typec->ec->ec->dev on a device that has already been released. Move dev_set_drvdata() to ensure that the pointer is only made available once all initialization steps have succeeded. sysfs: cannot create duplicate filename '/class/chromeos/cros_ec' Call trace: sysfs_do_create_link_sd+0x94/0xdc sysfs_create_link+0x30/0x44 device_add_class_symlinks+0x90/0x13c device_add+0xf0/0x50c ec_device_probe+0x150/0x4f0 platform_probe+0xa0/0xe0 ... BUG: KASAN: invalid-access in __memcpy+0x44/0x230 Write at addr f5ffff809e2d33ac by task kworker/u32:5/125 Pointer tag: [f5], memory tag: [fe] Tainted : [W]=WARN, [O]=OOT_MODULE Hardware name: Google Navi unprovisioned 0x7FFFFFFF/sku0 board/sku3 Workqueue: events_unbound deferred_probe_work_func Call trace: __memcpy+0x44/0x230 cros_ec_check_features+0x60/0xcc [cros_ec_proto] cros_typec_probe+0xe8/0x6e0 [cros_ec_typec] platform_probe+0xa0/0xe0 Added Reference https://git.kernel.org/stable/c/24522713034d521ea4b5f5f36342e2b2f7e73bd6 Added Reference https://git.kernel.org/stable/c/257203d83204b192d1265a916b42ca0d499bb117 Added Reference https://git.kernel.org/stable/c/729ae27dc2503a7c1f92da1859efb45da03e4fa0 Added Reference https://git.kernel.org/stable/c/8b2c1d41bc36c100b38ce5ee6def246c527eaf8a Added Reference https://git.kernel.org/stable/c/b5f41d5bf08e7b1b14fa0bd640975e6d78dc006d Added Reference https://git.kernel.org/stable/c/ed2941e5db016a0c600b25f1972620e6e223d9fa Added Reference https://git.kernel.org/stable/c/f7e81dc181d9fe8ab977158042cd193e8cc12091 Added Reference https://git.kernel.org/stable/c/fc030c5b116f668d4ca86dca63742ddbc98d1665