Skip to main content
← All vulnerabilities
CVE-2025-0938

URL parser allowed square brackets in domain names

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 3.9.22, 3.10.17, 3.11.12, 3.12.9, 3.13.2, and 1 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

The Python standard library functions `urllib.parse.urlsplit` and `urlparse` accepted domain names that included square brackets which isn't valid according to RFC 3986. Square brackets are only meant to be used as delimiters for specifying IPv6 and IPvFuture hosts in URLs. This could result in differential parsing across the Python URL parser and other specification-compliant URL parsers.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • Python Software Foundation CPython

    fixed in 3.9.22; From 3.10.0 · fixed in 3.10.17; From 3.11.0 · fixed in 3.11.12; From 3.12.0 · fixed in 3.12.9; From 3.13.0 · fixed in 3.13.2; From 3.14.0a1 · fixed in 3.14.0a5

References 9

GitHub · python/cpython

mail.python.org