Medium severity · published Sep 29, 2026
CVE-2026-102598
Werkzeug safe_join() allows Windows special device names
6.3
CVSS
0.4%
EPSS
No
On KEV
Description
Werkzeug is a comprehensive WSGI web application library. Prior to 3.1.9, the safe_join function used by send_from_directory can allow a NUL: special-device path because safe_join checks the Windows device name without first removing an empty NTFS ADS marker. The trigger is that an application runs on Windows with NTFS and serves a user-specified path ending in a special device name such as NUL:. The attack mechanism is that a requested path ends in a Windows special device name with an empty ADS marker. The impact is that the special device opens successfully and the file read hangs indefinitely. This issue is fixed in version 3.1.9.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.4% · higher than 31% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
WE
werkzeug · pallets
< 3.1.9 · source: vendor
Affected product
WE
werkzeug
pallets
More from werkzeug
7.5
CVE-2024-49767
Werkzeug possible resource exhaustion when parsing file data in forms
7.5
CVE-2024-34069
Werkzeug's improper usage of a pathname and improper CSRF protection results in the remote command execution
7.5
CVE-2023-46136
Werkzeug vulnerable to high resource usage when parsing multipart/form-data containing a large part with CR/LF character at the beginning
7.5
CVE-2023-25577
Werkzeug may allow high resource usage when parsing multipart form data with many fields
5.3
CVE-2026-27199
Werkzeug safe_join() allows Windows special device names