GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-80937 (GCVE-0-2026-80937)

Vulnerability from cvelistv5 – Published: 2026-09-11 19:42 – Updated: 2026-09-13 06:28
VLAI
Title
wifi: mt76: mt7915: bound the device EEPROM address before the EFUSE copy
Summary
In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7915: bound the device EEPROM address before the EFUSE copy mt7915_mcu_get_eeprom() copies a fixed EFUSE block into the driver's dev->mt76.eeprom.data buffer at the offset reported by the MCU response (res->addr, a device-controlled __le32) without checking it against the buffer size. A malicious or malfunctioning device can report an arbitrary address and drive a 16-byte out-of-bounds write past eeprom.data. Reject a response whose address would place the copy outside eeprom.data before deriving the destination pointer. Devices that echo the requested in-bounds offset are unaffected.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: e57b7901469fc0b021930b83a8094baaf3d81b09 , < 5fdaf7016d7684ef756a229fd5d96b4a140eeb40 (git)
Affected: e57b7901469fc0b021930b83a8094baaf3d81b09 , < 5f48b0d752a76590e2c613aae5345c2474627d1b (git)
Affected: e57b7901469fc0b021930b83a8094baaf3d81b09 , < 44b5adfe49499f53002737f5fe81d608c08122fc (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.8
Unaffected: 0 , < 5.8 (semver)
Unaffected: 6.18.50 , ≤ 6.18.* (semver)
Unaffected: 7.2.4 , ≤ 7.2.* (semver)
Unaffected: 7.3-rc1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/wireless/mediatek/mt76/mt7915/mcu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "5fdaf7016d7684ef756a229fd5d96b4a140eeb40",
              "status": "affected",
              "version": "e57b7901469fc0b021930b83a8094baaf3d81b09",
              "versionType": "git"
            },
            {
              "lessThan": "5f48b0d752a76590e2c613aae5345c2474627d1b",
              "status": "affected",
              "version": "e57b7901469fc0b021930b83a8094baaf3d81b09",
              "versionType": "git"
            },
            {
              "lessThan": "44b5adfe49499f53002737f5fe81d608c08122fc",
              "status": "affected",
              "version": "e57b7901469fc0b021930b83a8094baaf3d81b09",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/net/wireless/mediatek/mt76/mt7915/mcu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.8"
            },
            {
              "lessThan": "5.8",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.50",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.50",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.4",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3-rc1",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mt76: mt7915: bound the device EEPROM address before the EFUSE copy\n\nmt7915_mcu_get_eeprom() copies a fixed EFUSE block into the driver\u0027s\ndev-\u003emt76.eeprom.data buffer at the offset reported by the MCU response\n(res-\u003eaddr, a device-controlled __le32) without checking it against the\nbuffer size. A malicious or malfunctioning device can report an arbitrary\naddress and drive a 16-byte out-of-bounds write past eeprom.data.\n\nReject a response whose address would place the copy outside eeprom.data\nbefore deriving the destination pointer. Devices that echo the requested\nin-bounds offset are unaffected."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 8.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:A - The OOB write is driven by a MediaTek Wi-Fi 6 MCU EFUSE query response (mt7915/mt7916/mt7981/mt7986), not a routed IP service; the highest reasonable exposure is an adjacent attacker who can drive malicious firmware or device behavior on the local radio.\nAC:L - A malicious MCU response can set an arbitrary res-\u003eaddr and 16 device-controlled payload bytes; the host then memcpy\u0027s MT7915_EEPROM_BLOCK_SIZE bytes to eeprom.data+addr with no race or other condition beyond attacker control.\nPR:N - MCU EEPROM responses are consumed in mt7915_eeprom_load() during driver bring-up with no OS credential, capability, or Wi-Fi authentication check; an adjacent attacker needs no local account.\nUI:N - The copy runs automatically in mt7915_eeprom_load() during pci_probe/platform probe after firmware load; no victim action such as mounting a filesystem or opening a file is required.\nS:U - The write corrupts host kernel heap around the mt76 EEPROM buffer and is standard kernel memory corruption, not a VM escape, IOMMU bypass, or other crossed security authority.\nC:H - Attacker-controlled destination offset and payload are kernel memory corruption that can overwrite adjacent objects and pointers and be leveraged for information disclosure, so confidentiality impact is high.\nI:H - Sixteen bytes of device-controlled data are written at a device-chosen offset past the 3584/4096-byte eeprom.data allocation, an out-of-bounds write primitive that can yield arbitrary kernel writes or control-flow hijacking.\nA:H - An unbounded kernel heap write during EEPROM init can oops, panic, or hang the host, a high availability impact on Wi-Fi 6 APs, routers, and workstations."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-13T06:28:17.643Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/5fdaf7016d7684ef756a229fd5d96b4a140eeb40"
        },
        {
          "url": "https://git.kernel.org/stable/c/5f48b0d752a76590e2c613aae5345c2474627d1b"
        },
        {
          "url": "https://git.kernel.org/stable/c/44b5adfe49499f53002737f5fe81d608c08122fc"
        }
      ],
      "title": "wifi: mt76: mt7915: bound the device EEPROM address before the EFUSE copy",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-80937",
    "datePublished": "2026-09-11T19:42:10.822Z",
    "dateReserved": "2026-08-26T14:34:25.803Z",
    "dateUpdated": "2026-09-13T06:28:17.643Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-80937",
      "date": "2026-09-17",
      "epss": "0.00318",
      "percentile": "0.24796"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/net/wireless/mediatek/mt76/mt7915/mcu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "5fdaf7016d7684ef756a229fd5d96b4a140eeb40",
                    "status": "affected",
                    "version": "e57b7901469fc0b021930b83a8094baaf3d81b09",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5f48b0d752a76590e2c613aae5345c2474627d1b",
                    "status": "affected",
                    "version": "e57b7901469fc0b021930b83a8094baaf3d81b09",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "44b5adfe49499f53002737f5fe81d608c08122fc",
                    "status": "affected",
                    "version": "e57b7901469fc0b021930b83a8094baaf3d81b09",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/net/wireless/mediatek/mt76/mt7915/mcu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "5.8"
                  },
                  {
                    "lessThan": "5.8",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.50",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.2.*",
                    "status": "unaffected",
                    "version": "7.2.4",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.3-rc1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mt76: mt7915: bound the device EEPROM address before the EFUSE copy\n\nmt7915_mcu_get_eeprom() copies a fixed EFUSE block into the driver\u0027s\ndev-\u003emt76.eeprom.data buffer at the offset reported by the MCU response\n(res-\u003eaddr, a device-controlled __le32) without checking it against the\nbuffer size. A malicious or malfunctioning device can report an arbitrary\naddress and drive a 16-byte out-of-bounds write past eeprom.data.\n\nReject a response whose address would place the copy outside eeprom.data\nbefore deriving the destination pointer. Devices that echo the requested\nin-bounds offset are unaffected."
          }
        ],
        "id": "CVE-2026-80937",
        "lastModified": "2026-09-13T07:17:01.423",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "ADJACENT_NETWORK",
                "availabilityImpact": "HIGH",
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "NONE",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 2.8,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-09-11T20:18:57.627",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/44b5adfe49499f53002737f5fe81d608c08122fc"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/5f48b0d752a76590e2c613aae5345c2474627d1b"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/5fdaf7016d7684ef756a229fd5d96b4a140eeb40"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-09-14T15:54:24+00:00",
      "cve": "CVE-2026-80937",
      "id": "CVE-2026-80937",
      "initial_release_date": "2026-09-11T00:00:00+00:00",
      "product_status:known_not_affected": "276",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: wifi: mt76: mt7915: bound the device EEPROM address before the EFUSE copy",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-80937.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-15T01:06:04Z",
      "cve": "CVE-2026-80937",
      "id": "CVE-2026-80937",
      "initial_release_date": "2026-09-12T16:37:22Z",
      "product_status:known_affected": "224",
      "product_status:known_not_affected": "129",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-80937",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-80937.json",
      "version": "5"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

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…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…