Improper Handling of Windows Device Names Affecting py3-werkzeug package, versions <3.1.6-r0


Severity

Recommended
0.0
medium
0
10

Snyk's Security Team recommends NVD's CVSS assessment. Learn more

Threat Intelligence

EPSS
0.63% (50th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-ALPINE324-PY3WERKZEUG-17297909
  • published11 Jun 2026
  • disclosed21 Feb 2026

Introduced: 21 Feb 2026

CVE-2026-27199  (opens in a new tab)
CWE-67  (opens in a new tab)

How to fix?

Upgrade Alpine:3.24 py3-werkzeug to version 3.1.6-r0 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream py3-werkzeug package and not the py3-werkzeug package as distributed by Alpine. See How to fix? for Alpine:3.24 relevant fixed versions and status.

Werkzeug is a comprehensive WSGI web application library. Versions 3.1.5 and below, the safe_join function allows Windows device names as filenames if preceded by other path segments. This was previously reported as GHSA-hgf8-39gv-g3f2, but the added filtering failed to account for the fact that safe_join accepts paths with multiple segments, such as example/NUL. The function send_from_directory uses safe_join to safely serve files at user-specified paths under a directory. If the application is running on Windows, and the requested path ends with a special device name, the file will be opened successfully, but reading will hang indefinitely. This issue has been fixed in version 3.1.6.

CVSS Base Scores

version 3.1