CVE-2026-98407

Status: ReceivedUnscored—
Severity—Unscored
Exploitation probability0.22 %higher than 12% of CVEs
Active exploitationNonot in the CISA catalog
Public exploitNot knownno public code found

In the Linux kernel, the following vulnerability has been resolved:

wifi: rsi: fix heap OOB write on key removal

When a key is removed (data == NULL), rsi_hal_load_key() runs:

set_key is a struct rsi_set_key *, so the subscript is scaled by sizeof(struct rsi_set_key) (160 bytes): &set_key[FRAME_DESC_SZ] is skb->data + 2560, and the memset writes 144 zero bytes starting 2.4KB past the end of the 160-byte skb data buffer, corrupting unrelated heap objects. The intended byte offset would have been (u8 *)set_key + FRAME_DESC_SZ.

The write fires on every DISABLE_KEY callback, so plain disconnects, roams and interface teardowns trigger it on real networks.

Read full descriptionShow less

The memset is redundant: the whole buffer is zeroed right after allocation, so the frame sent to the device is byte-identical without it. Drop the else branch; normal operation is unaffected.

Discovered by Atuin - Automated Vulnerability Discovery Engine.

Technical details traces, logs and code from the original report
	memset(&set_key[FRAME_DESC_SZ], 0, frame_len - FRAME_DESC_SZ);

CVSS

NVD hasn't assigned a CVSS score to this CVE (common since the April 2026 policy change).

Exploitation probability (EPSS)

Probability of exploitation in the next 30 days
0.22 %
Percentile among all scored CVEs
12
Score date
10/21/2026

EPSS (Exploit Prediction Scoring System, FIRST) estimates how likely a vulnerability is to be exploited in the wild within 30 days. It complements CVSS (impact) and CISA KEV (confirmed exploitation).

Affected technologies (1)

⚠ AI-inferred from the description — NVD hasn't analyzed this CVE yet, these aren't verified CPEs.

References

Show 8 references

Raw JSON (NVD)

Show
{
  "id": "CVE-2026-98407",
  "cveTags": [],
  "metrics": {},
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "b79e2f6585c014c42384f4caa7a37b3e5d26179c",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "c67fb3b875a83f9ba92afea4036c7b541f77512a",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "62d40db89180cfab7a917395f9ffc1dac62b0019",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "00bea3589255603c38766cac4a4d6d36493b2556",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "ac599cf8edf8aa2dae546f04d3f1849e32c2e738",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "f4f2852b664c3ff1436785cd11258a0ce25b74b3",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "8dab6ee020b2cd951b670626ba44a95cd4deac3d",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "dad0d04fa7ba41ce603a01e8e64967650303e9a2",
              "lessThan": "e6c5ed7a98d7bc8b0f7918246f1c90ddb3f79dfa",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/net/wireless/rsi/rsi_91x_mgmt.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "3.15"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "3.15",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "5.10.271",
              "versionType": "semver",
              "lessThanOrEqual": "5.10.*"
            },
            {
              "status": "unaffected",
              "version": "5.15.222",
              "versionType": "semver",
              "lessThanOrEqual": "5.15.*"
            },
            {
              "status": "unaffected",
              "version": "6.1.189",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "status": "unaffected",
              "version": "6.6.158",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "status": "unaffected",
              "version": "6.12.112",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.54",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.8",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/net/wireless/rsi/rsi_91x_mgmt.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-14T14:17:51.853",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/00bea3589255603c38766cac4a4d6d36493b2556",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/62d40db89180cfab7a917395f9ffc1dac62b0019",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/8dab6ee020b2cd951b670626ba44a95cd4deac3d",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ac599cf8edf8aa2dae546f04d3f1849e32c2e738",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b79e2f6585c014c42384f4caa7a37b3e5d26179c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/c67fb3b875a83f9ba92afea4036c7b541f77512a",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/e6c5ed7a98d7bc8b0f7918246f1c90ddb3f79dfa",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/f4f2852b664c3ff1436785cd11258a0ce25b74b3",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: rsi: fix heap OOB write on key removal\n\nWhen a key is removed (data == NULL), rsi_hal_load_key() runs:\n\n\tmemset(&set_key[FRAME_DESC_SZ], 0, frame_len - FRAME_DESC_SZ);\n\nset_key is a struct rsi_set_key *, so the subscript is scaled by\nsizeof(struct rsi_set_key) (160 bytes): &set_key[FRAME_DESC_SZ] is\nskb->data + 2560, and the memset writes 144 zero bytes starting\n2.4KB past the end of the 160-byte skb data buffer, corrupting\nunrelated heap objects. The intended byte offset would have been\n(u8 *)set_key + FRAME_DESC_SZ.\n\nThe write fires on every DISABLE_KEY callback, so plain disconnects,\nroams and interface teardowns trigger it on real networks.\n\nThe memset is redundant: the whole buffer is zeroed right after\nallocation, so the frame sent to the device is byte-identical\nwithout it. Drop the else branch; normal operation is unaffected.\n\nDiscovered by Atuin - Automated Vulnerability Discovery Engine."
    }
  ],
  "lastModified": "2026-10-19T10:18:45.827",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}