CVE-2026-31727 (GCVE-0-2026-31727)
Vulnerability from cvelistv5 – Published: 2026-05-01 14:14 – Updated: 2026-05-01 14:14
VLAI?
Title
usb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo
Summary
In the Linux kernel, the following vulnerability has been resolved:
usb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo
Commit ec35c1969650 ("usb: gadget: f_ncm: Fix net_device lifecycle with
device_move") reparents the gadget device to /sys/devices/virtual during
unbind, clearing the gadget pointer. If the userspace tool queries on
the surviving interface during this detached window, this leads to a
NULL pointer dereference.
Unable to handle kernel NULL pointer dereference
Call trace:
eth_get_drvinfo+0x50/0x90
ethtool_get_drvinfo+0x5c/0x1f0
__dev_ethtool+0xaec/0x1fe0
dev_ethtool+0x134/0x2e0
dev_ioctl+0x338/0x560
Add a NULL check for dev->gadget in eth_get_drvinfo(). When detached,
skip copying the fw_version and bus_info strings, which is natively
handled by ethtool_get_drvinfo for empty strings.
Severity ?
No CVSS data available.
Assigner
References
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| Linux | Linux |
Affected:
93f116c3393a22acab96ad1bef12b2572eb80ca4 , < 0326429e8ba99892e1d1e115dc8e88e1a3b64e24
(git)
Affected: e584cb58a2ea7ff4d3a4bc43d5ca512ed3ecb77d , < a36e5e800b9c93e3e1ffa42f34d38b36775dbcee (git) Affected: 85acaba2f42b557499bab3608307f17bf13beb69 , < 7de4d46be40738c7e48e64b5cc0a34aa1e047b0a (git) Affected: ec35c1969650e7cb6c8a91020e568ed46e3551b0 , < e002e92e88e12457373ed096b18716d97e7bbb20 (git) |
||
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/usb/gadget/function/u_ether.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "0326429e8ba99892e1d1e115dc8e88e1a3b64e24",
"status": "affected",
"version": "93f116c3393a22acab96ad1bef12b2572eb80ca4",
"versionType": "git"
},
{
"lessThan": "a36e5e800b9c93e3e1ffa42f34d38b36775dbcee",
"status": "affected",
"version": "e584cb58a2ea7ff4d3a4bc43d5ca512ed3ecb77d",
"versionType": "git"
},
{
"lessThan": "7de4d46be40738c7e48e64b5cc0a34aa1e047b0a",
"status": "affected",
"version": "85acaba2f42b557499bab3608307f17bf13beb69",
"versionType": "git"
},
{
"lessThan": "e002e92e88e12457373ed096b18716d97e7bbb20",
"status": "affected",
"version": "ec35c1969650e7cb6c8a91020e568ed46e3551b0",
"versionType": "git"
}
]
},
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/usb/gadget/function/u_ether.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "6.12.81",
"status": "affected",
"version": "6.12.78",
"versionType": "semver"
},
{
"lessThan": "6.18.22",
"status": "affected",
"version": "6.18.19",
"versionType": "semver"
},
{
"lessThan": "6.19.12",
"status": "affected",
"version": "6.19.9",
"versionType": "semver"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.81",
"versionStartIncluding": "6.12.78",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.22",
"versionStartIncluding": "6.18.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.19.12",
"versionStartIncluding": "6.19.9",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo\n\nCommit ec35c1969650 (\"usb: gadget: f_ncm: Fix net_device lifecycle with\ndevice_move\") reparents the gadget device to /sys/devices/virtual during\nunbind, clearing the gadget pointer. If the userspace tool queries on\nthe surviving interface during this detached window, this leads to a\nNULL pointer dereference.\n\nUnable to handle kernel NULL pointer dereference\nCall trace:\n eth_get_drvinfo+0x50/0x90\n ethtool_get_drvinfo+0x5c/0x1f0\n __dev_ethtool+0xaec/0x1fe0\n dev_ethtool+0x134/0x2e0\n dev_ioctl+0x338/0x560\n\nAdd a NULL check for dev-\u003egadget in eth_get_drvinfo(). When detached,\nskip copying the fw_version and bus_info strings, which is natively\nhandled by ethtool_get_drvinfo for empty strings."
}
],
"providerMetadata": {
"dateUpdated": "2026-05-01T14:14:27.552Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/0326429e8ba99892e1d1e115dc8e88e1a3b64e24"
},
{
"url": "https://git.kernel.org/stable/c/a36e5e800b9c93e3e1ffa42f34d38b36775dbcee"
},
{
"url": "https://git.kernel.org/stable/c/7de4d46be40738c7e48e64b5cc0a34aa1e047b0a"
},
{
"url": "https://git.kernel.org/stable/c/e002e92e88e12457373ed096b18716d97e7bbb20"
}
],
"title": "usb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-31727",
"datePublished": "2026-05-01T14:14:27.552Z",
"dateReserved": "2026-03-09T15:48:24.134Z",
"dateUpdated": "2026-05-01T14:14:27.552Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"epss": {
"cve": "CVE-2026-31727",
"date": "2026-05-05",
"epss": "0.00018",
"percentile": "0.04643"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2026-31727\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-05-01T15:16:35.210\",\"lastModified\":\"2026-05-01T15:24:14.893\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nusb: gadget: u_ether: Fix NULL pointer deref in eth_get_drvinfo\\n\\nCommit ec35c1969650 (\\\"usb: gadget: f_ncm: Fix net_device lifecycle with\\ndevice_move\\\") reparents the gadget device to /sys/devices/virtual during\\nunbind, clearing the gadget pointer. If the userspace tool queries on\\nthe surviving interface during this detached window, this leads to a\\nNULL pointer dereference.\\n\\nUnable to handle kernel NULL pointer dereference\\nCall trace:\\n eth_get_drvinfo+0x50/0x90\\n ethtool_get_drvinfo+0x5c/0x1f0\\n __dev_ethtool+0xaec/0x1fe0\\n dev_ethtool+0x134/0x2e0\\n dev_ioctl+0x338/0x560\\n\\nAdd a NULL check for dev-\u003egadget in eth_get_drvinfo(). When detached,\\nskip copying the fw_version and bus_info strings, which is natively\\nhandled by ethtool_get_drvinfo for empty strings.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0326429e8ba99892e1d1e115dc8e88e1a3b64e24\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/7de4d46be40738c7e48e64b5cc0a34aa1e047b0a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a36e5e800b9c93e3e1ffa42f34d38b36775dbcee\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/e002e92e88e12457373ed096b18716d97e7bbb20\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
}
}
Loading…
Loading…
Experimental. This forecast is provided for visualization only and may change without notice. Do not use it for operational decisions.
Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…