CVE-2026-74649 (GCVE-0-2026-74649)
Vulnerability from cvelistv5
Published
2026-08-22 15:32
Modified
2026-08-25 05:41
Summary
In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix missing shared-key auth challenge length check The WEP shared-key authentication handler uses the challenge-text element's attacker-controlled length without checking it against the fixed 128-byte chg_txt buffer. In OnAuthClient() the length from rtw_get_ie() - up to 255 - is used to perform memcpy() into the 128-byte pmlmeinfo->chg_txt, so a malicious AP sending a malformed WLAN_EID_CHALLENGE element can overflow/underfill chg_txt by up to 127 bytes. It is reachable over the air, before association, during shared-key authentication. In the case of an overflow, the driver can write out of bounds. In the case of an underfill, the driver can echo stale buffer memory. The challenge text is defined to be exactly 128 octets, which is already provided as the WLAN_AUTH_CHALLENGE_LEN define; require the element to be exactly that length before use.
Impacted products
Vendor Product Version
Linux Linux Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Version: 554c0a3abf216c991c5ebddcdb2c08689ecd290b
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "39ae1033071001af9bb4573ebdbb43bbbe88f749",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            },
            {
              "lessThan": "4d018e7d7d908bdfcb5ecfa922b1d5cb9ddb3722",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            },
            {
              "lessThan": "4ba402fd47009d20e51dbfc934abb562098ea35b",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            },
            {
              "lessThan": "87c2f073d2aaea041d531b8e579c47570b54b3b7",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            },
            {
              "lessThan": "a28a4b0592e4a37ea471bc0d308513a93133ce7e",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            },
            {
              "lessThan": "6235b5156b48ed5d1ce3410d8f0b2fd67d30d944",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            },
            {
              "lessThan": "2c56ef658ac8c6bca36bc5574715e8f717207c6c",
              "status": "affected",
              "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.12"
            },
            {
              "lessThan": "4.12",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.216",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.183",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.152",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.104",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.45",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.216",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.183",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.152",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.104",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.45",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.9",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix missing shared-key auth challenge length check\n\nThe WEP shared-key authentication handler uses the challenge-text\nelement\u0027s attacker-controlled length without checking it against the\nfixed 128-byte chg_txt buffer.\n\nIn OnAuthClient() the length from rtw_get_ie() - up to 255 - is used\nto perform memcpy() into the 128-byte pmlmeinfo-\u003echg_txt, so a\nmalicious AP sending a malformed WLAN_EID_CHALLENGE element can\noverflow/underfill chg_txt by up to 127 bytes. It is reachable over the\nair, before association, during shared-key authentication. In the case\nof an overflow, the driver can write out of bounds. In the case of an\nunderfill, the driver can echo stale buffer memory.\n\nThe challenge text is defined to be exactly 128 octets, which is\nalready provided as the WLAN_AUTH_CHALLENGE_LEN define; require the\nelement to be exactly that length before use."
        }
      ],
      "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 - A malicious AP on the same WiFi radio segment sends a crafted 802.11 authentication management frame; rtl8723bs receives it from the air via SDIO and dispatches it through mgt_dispatcher() to OnAuthClient() before association completes.\nAC:L - The rogue AP fully controls the malformed auth seq-2 response and its timing; once the client enters WEP shared-key authentication the attacker can reliably supply any challenge IE length up to 255 without races or conditions outside attacker control.\nPR:N - Exploitation requires no privileges on the victim host; a nearby attacker operating a malicious AP triggers the pre-association shared-key authentication handler without authenticating to the client or needing local shell or capability access.\nUI:N - No fresh victim interaction is needed at exploit time; evil-twin APs can invoke auto-connect to saved WEP profiles, and auth-algorithm auto-fallback from failed open auth can reach shared-key auth without a new user action during the attack.\nS:U - The overflow corrupts driver-private mlme_ext_info fields within the kernel WiFi driver context; impact remains within kernel/driver authority and does not cross a VM, container, or IOMMU security boundary.\nC:H - Underfill leaves stale data in the 128-byte chg_txt buffer that issue_auth() later transmits back to the attacker in auth seq 3, disclosing prior kernel memory; overflow also enables memory corruption paths that can yield further information disclosure.\nI:H - memcpy() uses attacker-controlled len (up to 255) into the fixed 128-byte chg_txt array, writing up to 127 bytes past the buffer into adjacent mlme_ext_info fields (aid, capability, HT/WMM structs, network IEs), enabling exploitable kernel memory corruption.\nA:H - Out-of-bounds writes into critical mlme_ext_info state in kernel context can corrupt driver data structures and trigger kernel oops, panic, or hang, causing complete loss of availability on affected embedded/mobile devices using this driver."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-25T05:41:08.071Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/39ae1033071001af9bb4573ebdbb43bbbe88f749"
        },
        {
          "url": "https://git.kernel.org/stable/c/4d018e7d7d908bdfcb5ecfa922b1d5cb9ddb3722"
        },
        {
          "url": "https://git.kernel.org/stable/c/4ba402fd47009d20e51dbfc934abb562098ea35b"
        },
        {
          "url": "https://git.kernel.org/stable/c/87c2f073d2aaea041d531b8e579c47570b54b3b7"
        },
        {
          "url": "https://git.kernel.org/stable/c/a28a4b0592e4a37ea471bc0d308513a93133ce7e"
        },
        {
          "url": "https://git.kernel.org/stable/c/6235b5156b48ed5d1ce3410d8f0b2fd67d30d944"
        },
        {
          "url": "https://git.kernel.org/stable/c/2c56ef658ac8c6bca36bc5574715e8f717207c6c"
        }
      ],
      "title": "staging: rtl8723bs: fix missing shared-key auth challenge length check",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-74649",
    "datePublished": "2026-08-22T15:32:25.601Z",
    "dateReserved": "2026-08-15T05:44:03.923Z",
    "dateUpdated": "2026-08-25T05:41:08.071Z",
    "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…