Cloudanix VulnDB

CVE-2026-39824

Low · 3.3

CVSS

3.3

EPSS

0.2%

Published

May 22, 2026

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A software component may mishandle extremely long text and make the wrong local decision instead of rejecting it.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Data Tampering
Component
Library
Class
Improper Input Validation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw is an integer/length validation issue in NewNTUnicodeString. NTUnicodeString length fields are limited to a 16-bit byte count; when input exceeds that maximum, the function can silently truncate the resulting string instead of rejecting it. Software that relies on the returned value for security-sensitive comparisons, path handling, object names, access checks, allow/deny decisions, or integrity validation could make decisions on a shortened value that differs from the original attacker-supplied input. The assessed impact is limited to low-integrity effects, requires local privileges, and there is no direct confidentiality or availability impact indicated by the CVSS vector.

Why it matters to the business

The most likely business risk is incorrect handling of unusually long Windows-style Unicode strings in applications that use this function, potentially allowing local users to bypass validation logic or cause incorrect object, path, or policy decisions. The current public exploitation signal is low: EPSS is 0.00114 and flat over 30 days, it is not in CISA KEV, it is not known to be used in ransomware campaigns, and no exploit maturity is reported. Even so, organizations that build endpoint agents, administrative tools, installers, identity tooling, or Windows integrations using the affected code path should treat it as a code-quality and integrity-risk fix, especially where local untrusted users can influence string inputs.

How an attack unfolds

An attacker first needs local access or the ability to influence input processed by software that calls NewNTUnicodeString. They supply an extremely long Unicode string whose byte length exceeds the maximum representable NTUnicodeString length. Instead of failing closed, the function returns a truncated string. If the consuming application compares, authorizes, opens, logs, or routes operations based on that truncated value, the attacker may be able to create a mismatch between the value validated by the application and the value originally intended or supplied. Practical exploitation depends heavily on the caller: the vulnerability is only meaningful where truncation changes a security-relevant decision, such as matching an allowed name prefix, resolving an object path, or enforcing a local policy.

How to fix it

Upgrade to a vendor-provided fixed version as soon as one is available for the affected package or product. No affected products or exact fixed versions were provided in the input, so engineering teams should inventory dependencies that expose or vendor NewNTUnicodeString and track the upstream advisory for a corrected release. Where immediate patching is not possible, add defensive validation at call sites: reject strings whose encoded byte length exceeds the NTUnicodeString 16-bit maximum before conversion, treat overflow as an error, avoid security decisions based on silently converted values, and add tests for boundary values around 65,535 bytes. Prefer fail-closed behavior for path, object-name, account-name, policy, and authorization-related conversions.

How to confirm the fix worked

Confirm that deployed software uses a corrected implementation that checks for NTUnicodeString length overflow and returns an error instead of a truncated value. Review dependency manifests, module lockfiles, vendored source, and build artifacts for affected implementations of NewNTUnicodeString. Add or run regression tests that pass Unicode strings at, below, and above the 16-bit byte-length limit and verify that oversized inputs are rejected. For applications with security-sensitive string handling, perform targeted tests against local interfaces that accept long path, object, account, or policy names and confirm the application fails safely without accepting, normalizing, or acting on truncated values.

Typical attack path

  1. Gain local authenticated access or identify a local interface, CLI, service, plugin, or IPC mechanism that accepts user-controlled Unicode string input.
  2. Determine whether the target software uses NewNTUnicodeString or affected code that converts long strings into NTUnicodeString values.
  3. Craft an input string whose encoded byte length exceeds the 16-bit NTUnicodeString maximum.
  4. Submit the oversized string to trigger silent truncation instead of an error.
  5. Abuse any resulting mismatch between the original input and the truncated value to influence a local integrity-sensitive decision, such as validation, object selection, path handling, or policy enforcement.
  6. Verify whether the application performed the unintended action, accepted a value it should have rejected, or logged/processed a different value than was supplied.

How to detect it

There are no reliable universal indicators of prior exploitation because this is a logic flaw in string conversion and exploitation would appear as application-specific misuse of oversized Unicode input. Investigations should focus on applications known to call NewNTUnicodeString or related NTUnicodeString conversion routines. Review application logs, Windows Event Logs, EDR telemetry, command-line histories, IPC/service request logs, installer or agent logs, and audit logs for unusually long Unicode strings, repeated boundary-testing behavior, unexpected truncation, validation mismatches, or local operations involving paths/object names/account names/policy names near or above 65,535 bytes. Look for sequences where a local low-privileged user submitted very long names followed by an unexpected successful administrative, policy, file, registry, or object-management action. If source-level or debug logs are available, search for conversion errors, length overflows, or discrepancies between original and converted string values. Because no threat actors, campaigns, ransomware use, or public exploit artifacts are reported, detection should be behavior-based rather than IOC-based.

What your security team should do

  • Inventory internally developed and third-party software that uses NewNTUnicodeString or vendored code providing NTUnicodeString conversion, especially Windows-focused tools and agents.
  • Prioritize remediation for software where local users can supply names, paths, object identifiers, or policy values that influence authorization or integrity-sensitive operations.
  • Coordinate with engineering teams to add input-length validation and regression tests if no upstream fixed version is currently available.
  • Monitor upstream vendor advisories and package repositories for fixed releases, since no exact affected products or fixed versions were provided.
  • Treat this as lower immediate exploitation urgency given low CVSS, flat low EPSS, no KEV listing, and no known public exploit maturity, but include it in regular patch and secure-coding cycles.
  • Review logs and telemetry for unusual failures or accepted inputs involving extremely long Unicode strings around local administrative, installation, policy, or object-management operations.

The record

NewNTUnicodeString does not check for string length overflow. When provided with a string that overflows the maximum size of a NTUnicodeString (a 16-bit number of bytes), it returns a truncated string rather than an error.

Affected packages

Ecosystem Package Introduced Fixed
openSUSE:Tumbleweed rclone 0 1.74.2-1.1

Related vulnerabilities