CVE-2025-0938

NameCVE-2025-0938
DescriptionThe 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
pypy3 (PTS)bullseye7.3.5+dfsg-2+deb11u2vulnerable
bullseye (security)7.3.5+dfsg-2+deb11u4vulnerable
bookworm7.3.11+dfsg-2+deb12u3vulnerable
sid, trixie7.3.17+dfsg-3vulnerable
python3.11 (PTS)bookworm3.11.2-6+deb12u5vulnerable
bookworm (security)3.11.2-6+deb12u3vulnerable
python3.12 (PTS)sid, trixie3.12.8-5vulnerable
python3.13 (PTS)sid, trixie3.13.1-3vulnerable
python3.9 (PTS)bullseye3.9.2-1vulnerable
bullseye (security)3.9.2-1+deb11u2vulnerable

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
pypy3source(unstable)(unfixed)
python3.11source(unstable)(unfixed)
python3.12source(unstable)(unfixed)
python3.13source(unstable)(unfixed)
python3.9source(unstable)(unfixed)

Notes

https://mail.python.org/archives/list/security-announce@python.org/thread/K4EUG6EKV6JYFIC24BASYOZS4M5XOQIB/
https://github.com/python/cpython/issues/105704
https://github.com/python/cpython/pull/129418
https://github.com/python/cpython/pull/129526 (3.13)
https://github.com/python/cpython/pull/129527 (3.12)
https://github.com/python/cpython/pull/129528 (3.11)
https://github.com/python/cpython/pull/129530 (3.9)

Search for package or bug name: Reporting problems