← Back to CVE Explorer

CVE-2026-98698

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: handle empty FILS association request payload fils_encrypt_assoc_req() accepts a (Re)Association Request frame whose last element is the FILS Session element. crypt_len is then zero and aes_siv_encrypt() is called with an empty plaintext. kmemdup() returns ZERO_SIZE_PTR for a zero-length allocation, so the unconditional sg_init_one() puts an invalid page into the scatterlist. With CONFIG_DEBUG_SG this triggers a kernel BUG in sg_set_buf(); without the debug check the bogus page is handed to the crypto backend. AES-SIV is defined for empty plaintext and the S2V result is then the complete output, so handle this case before the CTR step, which has nothing to encrypt.

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-10-18 16:17:23.280000
Last modified
2026-10-30 13:21:19.020000
View original CVE JSON
{
  "id": "CVE-2026-98698",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-10-18T16:17:23.280",
  "lastModified": "2026-10-30T13:21:19.020",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwifi: mac80211: handle empty FILS association request payload\n\nfils_encrypt_assoc_req() accepts a (Re)Association Request frame whose\nlast element is the FILS Session element.  crypt_len is then zero and\naes_siv_encrypt() is called with an empty plaintext.\n\nkmemdup() returns ZERO_SIZE_PTR for a zero-length allocation, so the\nunconditional sg_init_one() puts an invalid page into the scatterlist.\nWith CONFIG_DEBUG_SG this triggers a kernel BUG in sg_set_buf();\nwithout the debug check the bogus page is handed to the crypto backend.\n\nAES-SIV is defined for empty plaintext and the S2V result is then the\ncomplete output, so handle this case before the CTR step, which has\nnothing to encrypt."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "net/mac80211/fils_aead.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "de3297c8e521c0b0ddc89ece6fee84e25da9ecf0",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "ce70c87252a14020cb40032efe208efc6e61b1ee",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "d8c5dbbf584a1baaa008988ac64dd4495f7086bd",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "0b1e4a7eeb6a301ee33bd318982927cbdbae9f36",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "2f5b62f6534d336a62fdb9e88b186dd70b4323ef",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "452f1c9b76f7a122bbc4630b9691bda4809677c4",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "20f939b0c151d1d28e6b62a76b2454fa6fe877f2",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "39404feee691a2dc524a629ed6eb5cfe5d8898d1",
              "lessThan": "5bfd4b0b40b79781d900cb2f7da0685070f53c67",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "net/mac80211/fils_aead.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "4.10",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "4.10",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.10.273",
              "lessThanOrEqual": "5.10.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.224",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.191",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.160",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.12.113",
              "lessThanOrEqual": "6.12.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.56",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2.10",
              "lessThanOrEqual": "7.2.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.3",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {},
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/0b1e4a7eeb6a301ee33bd318982927cbdbae9f36",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/20f939b0c151d1d28e6b62a76b2454fa6fe877f2",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/2f5b62f6534d336a62fdb9e88b186dd70b4323ef",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/452f1c9b76f7a122bbc4630b9691bda4809677c4",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/5bfd4b0b40b79781d900cb2f7da0685070f53c67",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ce70c87252a14020cb40032efe208efc6e61b1ee",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/d8c5dbbf584a1baaa008988ac64dd4495f7086bd",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/de3297c8e521c0b0ddc89ece6fee84e25da9ecf0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}