CVE-2026-98824 (GCVE-0-2026-98824)
Vulnerability from cvelistv5
Published
2026-10-18 15:49
Modified
2026-10-19 09:26
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: validate TX status rate metadata minstrel_ht_tx_status() converts the HT/VHT rate reported in a TX status into a group and rate index and uses those to index the minstrel_ht rate tables. The existing validation only checked that an entry was present and had tries recorded; it did not check that the reported MCS, spatial stream count and bandwidth are representable by the tables, so malformed metadata passed to minstrel_ht_get_stats() or minstrel_ht_ri_get_stats() could be used as an out-of-bounds index. Validate the rate metadata in the common TX status path instead of only in minstrel_ht, since the values are used by more than rate control. The legacy ieee80211_tx_rate array and the rate_info based entries are sanitized in ieee80211_tx_status_ext() and ieee80211_tx_rate_update() before any consumer runs: an entry that does not describe a valid rate for its encoding is dropped. minstrel_ht keeps the checks that depend on its own tables, i.e. the supported number of spatial streams, the MCS group size and the supported bandwidths. This does not take away the driver's responsibility to report sane values, it only prevents a single bad report from corrupting mac80211 state. No WARN_ON() is added: with panic_on_warn a driver bug would otherwise turn into a denial of service.
Impacted products
Vendor Product Version
Linux Linux Version: a5f69d94d8e239b48299abdd836840b7447866ab
Version: a5f69d94d8e239b48299abdd836840b7447866ab
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "net/mac80211/rc80211_minstrel_ht.c",
            "net/mac80211/status.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "b1961a61ab6fbe11f16f7f9b64c57a9908c6c3a8",
              "status": "affected",
              "version": "a5f69d94d8e239b48299abdd836840b7447866ab",
              "versionType": "git"
            },
            {
              "lessThan": "6bdcdb31318c10e6369cff8e5b32c37397e98091",
              "status": "affected",
              "version": "a5f69d94d8e239b48299abdd836840b7447866ab",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/mac80211/rc80211_minstrel_ht.c",
            "net/mac80211/status.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "3.3"
            },
            {
              "lessThan": "3.3",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.10",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.10",
                  "versionStartIncluding": "3.3",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3",
                  "versionStartIncluding": "3.3",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mac80211: validate TX status rate metadata\n\nminstrel_ht_tx_status() converts the HT/VHT rate reported in a TX status\ninto a group and rate index and uses those to index the minstrel_ht rate\ntables.  The existing validation only checked that an entry was present\nand had tries recorded; it did not check that the reported MCS, spatial\nstream count and bandwidth are representable by the tables, so malformed\nmetadata passed to minstrel_ht_get_stats() or\nminstrel_ht_ri_get_stats() could be used as an out-of-bounds index.\n\nValidate the rate metadata in the common TX status path instead of only\nin minstrel_ht, since the values are used by more than rate control.\nThe legacy ieee80211_tx_rate array and the rate_info based entries are\nsanitized in ieee80211_tx_status_ext() and ieee80211_tx_rate_update()\nbefore any consumer runs: an entry that does not describe a valid rate\nfor its encoding is dropped.  minstrel_ht keeps the checks that depend\non its own tables, i.e. the supported number of spatial streams, the MCS\ngroup size and the supported bandwidths.\n\nThis does not take away the driver\u0027s responsibility to report sane\nvalues, it only prevents a single bad report from corrupting mac80211\nstate.  No WARN_ON() is added: with panic_on_warn a driver bug would\notherwise turn into a denial of service."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-19T09:26:17.090Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/b1961a61ab6fbe11f16f7f9b64c57a9908c6c3a8"
        },
        {
          "url": "https://git.kernel.org/stable/c/6bdcdb31318c10e6369cff8e5b32c37397e98091"
        }
      ],
      "title": "wifi: mac80211: validate TX status rate metadata",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-98824",
    "datePublished": "2026-10-18T15:49:16.650Z",
    "dateReserved": "2026-09-25T10:25:14.372Z",
    "dateUpdated": "2026-10-19T09:26:17.090Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…