{"id":"CVE-2026-63985","revision":"55225ea0bcce4f6796ffaea53b67ff8b","records":[{"revision":"55225ea0bcce4f6796ffaea53b67ff8b","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-63985","aliases":[],"title":"ethtool: eeprom: add more safeties to EEPROM Netlink fallback","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nethtool: eeprom: add more safeties to EEPROM Netlink fallback\n\nThe Netlink fallback path for reading module EEPROM\n(fallback_set_params()) validates that offset < eeprom_len,\nbut does not check that offset + length stays within eeprom_len.\nThe ioctl equivalent (ethtool_get_any_eeprom() in ioctl.c) has\nalways enforced both bounds:\n\n  if (eeprom.offset + eeprom.len > total_len)\n      return -EINVAL;\n\nThis could lead to surprises in both drivers and device FW.\nAdd the missing offset + length validation to fallback_set_params(),\nmirroring the ioctl.\n\nSimilarly - ethtool core in general, and ethtool_get_any_eeprom()\nin particular tries to zero-init all buffers passed to the drivers\nto avoid any extra work of zeroing things out. eeprom_fallback()\nuses a plain kmalloc(), change it to zalloc.","state":0,"publishedAt":"2026-07-19T14:56:07.527+00:00","modifiedAt":"2026-10-19T20:18:00.907+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/ethtool/eeprom.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"0e182689831277faf2ef683573a60474c208f690\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"6ed7ebe22e9c3e3e946b6973c1ce43d3c38aeac1\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"65674d2489a12b8efd2ca0effb3de1d12224b596\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"d81376053a00865c70b8d8506a1cb93f2943d413\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"fd0de51c54fa8474a0ddeedd71c65ad09fada390\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"4fe1bc4b3603f621240d5b401742f302190db769\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"96d971e307cc0e434f96329b42bbd98cfbca07d2\",\n                            \"lessThan\": \"67cfdd9210b99f260b3e0afeb9525e0acc7be31e\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"net/ethtool/eeprom.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"5.13\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"5.13\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.210\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.176\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.143\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.93\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.35\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.0.12\",\n                            \"lessThanOrEqual\": \"7.0.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.1\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","score":7.8,"severity":"HIGH"}],"references":["https://git.kernel.org/stable/c/0e182689831277faf2ef683573a60474c208f690","https://git.kernel.org/stable/c/6ed7ebe22e9c3e3e946b6973c1ce43d3c38aeac1","https://git.kernel.org/stable/c/65674d2489a12b8efd2ca0effb3de1d12224b596","https://git.kernel.org/stable/c/d81376053a00865c70b8d8506a1cb93f2943d413","https://git.kernel.org/stable/c/fd0de51c54fa8474a0ddeedd71c65ad09fada390","https://git.kernel.org/stable/c/4fe1bc4b3603f621240d5b401742f302190db769","https://git.kernel.org/stable/c/67cfdd9210b99f260b3e0afeb9525e0acc7be31e"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-63985","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-63985","identifiers":["CVE-2026-63985"]},"retained":false,"historicalAffected":[]}],"coverage":[]}