Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. Werkzeug
  4. ›
  5. CVE-2025-66221

CVE-2025-66221: Werkzeug safe_join() allows Windows special device names

December 2, 2025

Werkzeug’s safe_join function allows path segments with Windows device names. On Windows, there are special device names such as CON, AUX, etc that are implicitly present and readable in every directory. 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.

References

  • github.com/advisories/GHSA-hgf8-39gv-g3f2
  • github.com/pallets/werkzeug
  • github.com/pallets/werkzeug/commit/4b833376a45c323a189cd11d2362bcffdb1c0c13
  • github.com/pallets/werkzeug/releases/tag/3.1.4
  • github.com/pallets/werkzeug/security/advisories/GHSA-hgf8-39gv-g3f2
  • nvd.nist.gov/vuln/detail/CVE-2025-66221

Code Behaviors & Features

Detect and mitigate CVE-2025-66221 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 3.1.4

Fixed versions

  • 3.1.4

Solution

Upgrade to version 3.1.4 or above.

Impact 5.3 MEDIUM

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

Learn more about CVSS

Weakness

  • CWE-67: Improper Handling of Windows Device Names

Source file

pypi/Werkzeug/CVE-2025-66221.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 14 Dec 2025 00:20:14 +0000.