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.
CVE-2025-0938
This medium-severity CVE scores 6.3 under NVD CVSS v3. EPSS exploit probability: 1.5%, top 28% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- Lower severity and no public exploit yet
A fix is available — apply it.
- CVSS v3
- 6.3
- EG Score
- 6.3(medium)
- EG Risk
- 29(Track)EG Risk 29/100SSVC: Track
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity63% × 45%Exploitation2% × 40%Automatability0% × 15%Action: Routine — remediate on your standard cadence. - EPSS PROB
- 2%
- EPSS %ILE
- 74%
- KEV
- Not listed
Published
January 31, 2025
Last Modified
July 31, 2026
Advisory Details (9)
Auto-updated Jul 30, 2026commit ff4e5c25666f (python/cpython)
Fix landed in python/cpython commit ff4e5c25666f — awaiting tagged release
https://github.com/python/cpython/commit/ff4e5c25666f63544071a6b075ae8b25c98b7a32commit b8b4b713c5f8 (python/cpython)
Fix landed in python/cpython commit b8b4b713c5f8 — awaiting tagged release
https://github.com/python/cpython/commit/b8b4b713c5f8ec0958c7ef8d29d6711889bc94abcommit 526617ed68cd (python/cpython)
Fix landed in python/cpython commit 526617ed68cd — awaiting tagged release
https://github.com/python/cpython/commit/526617ed68cde460236c973e5d0a8bad4de896bacommit a7084f6075c9 (python/cpython)
Fix landed in python/cpython commit a7084f6075c9 — awaiting tagged release
https://github.com/python/cpython/commit/a7084f6075c9595ba60119ce8c62f1496f50c568commit 90e526ae67b1 (python/cpython)
Fix landed in python/cpython commit 90e526ae67b1 — awaiting tagged release
https://github.com/python/cpython/commit/90e526ae67b172ed7c6c56e7edad36263b0f9403commit d89a5f6a6e65 (python/cpython)
Fix landed in python/cpython commit d89a5f6a6e65 — awaiting tagged release
https://github.com/python/cpython/commit/d89a5f6a6e65511a5f6e0618c4c30a7aa5aba56aMailman 3 [CVE-2025-0938] URL parser allowed square brackets in domain names - Security-announce - python.org
https://mail.python.org/archives/list/[email protected]/thread/K4EUG6EKV6JYFIC24BASYOZS4M5XOQIB/gh-105704: Disallow square brackets (`[` and `]`) in domain names for parsed URLs
Fix merged in python/cpython PR #129418 on 2025-01-31 — awaiting tagged release
https://github.com/python/cpython/pull/129418[CVE-2025-0938] urlparse does not flag hostname *containing* [ or ] as incorrect · Issue #105704 · python/cpython · GitHub
https://github.com/python/cpython/issues/105704Vendor Advisories for CVE-2025-0938(3)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
- RHSA-2026:5588Red Hat Product SecurityMedium
Red Hat Security Advisory: python3 security update
- RHSA-2025:23530Red Hat Product SecurityHigh
Red Hat Security Advisory: python39:3.9 security update
- RHSA-2025:8385Red Hat Product SecurityMedium
Red Hat Security Advisory: A Subscription Management tool for finding and reporting Red Hat product usage
Patch Availability(11)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| ubuntu | python2.7-minimal (2.7.12-1ubuntu0~16.04.18+esm16) @ xenial | 2026-06-08 | ubuntu |
| ubuntu | python3.12-venv (3.12.3-1ubuntu0.5) @ noble | 2026-06-08 | ubuntu |
| ubuntu | python3.5-venv (3.5.2-2ubuntu0~16.04.13+esm16) @ xenial | 2026-06-08 | ubuntu |
| ubuntu | python3.5-venv (3.5.2-2ubuntu0~16.04.13+esm18) @ xenial | 2026-06-08 | ubuntu |
| ubuntu | python2.7-minimal (2.7.6-8ubuntu0.6+esm28) @ trusty | 2026-06-08 | ubuntu |
| redhat | python3-0:3.6.8-74.el8_10 | 2026-03-24 | redhat |
| redhat | python39-devel:3.9-8100020251126112422.d47b87a4 | 2025-12-18 | redhat |
| redhat | discovery/discovery-ui-rhel9:1.14.2-1748467619 | 2025-06-02 | redhat |
| redhat | python3.12-0:3.12.9-1.el9 | 2025-05-13 | redhat |
| redhat | python3.11-0:3.11.11-2.el9 | 2025-05-13 | redhat |
| redhat | python3.9-0:3.9.21-2.el9 | 2025-05-13 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(15 across 11 ecosystems)
Debian:11(2)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | 7.3.5+dfsg-2, 7.3.5+dfsg-2+deb11u1, 7.3.5+dfsg-2+deb11u2, 7.3.5+dfsg-2+deb11u3, 7.3.5+dfsg-2+deb11u4 | 7.3.5+dfsg-2+deb11u5 | — |
| python3.9 | 3.9.2-1, 3.9.2-1+deb11u1, 3.9.2-1+deb11u2 | 3.9.2-1+deb11u3 | — |
Debian:12(2)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | 7.3.11+dfsg-2 ... 7.3.23+dfsg-1 (29 versions) | — | — |
| python3.11 | 3.11.2-6 ... 3.11.2-6+deb12u5 (6 versions) | 3.11.2-6+deb12u6 | — |
Debian:13(2)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | — | 7.3.18+dfsg-2 | — |
| python3.13 | — | 3.13.2-1 | — |
Debian:14(2)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| pypy3 | — | 7.3.18+dfsg-2 | — |
| python3.13 | — | 3.13.2-1 | — |
Alpine:v3.18(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.11.12-r0 | — |
Alpine:v3.19(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.11.12-r0 | — |
Alpine:v3.20(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.12.9-r0 | — |
Alpine:v3.21(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.12.9-r0 | — |
Alpine:v3.22(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.12.9-r0 | — |
Alpine:v3.23(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.12.9-r0 | — |
Alpine:v3.24(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| python3 | — | 3.12.9-r0 | — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Additional Vendor Advisories
(9)
Vendors that published advisories for this CVE beyond the curated set above. Broader coverage but minimal per-row detail — click through for the original advisory.
- Microsoft MSRCCVE-2025-09382025-02-25
URL parser allowed square brackets in domain names
- Red HatRHSA-2025:6977MODERATE2025-01-31
RHSA-2025:6977 — Moderate
- Red HatRHSA-2025:7107MODERATE2025-01-31
RHSA-2025:7107 — Moderate
- Red HatRHSA-2025:7109MODERATE2025-01-31
RHSA-2025:7109 — Moderate
- UbuntuUSN-7280-1MEDIUM
Python vulnerability
- UbuntuUSN-7280-2MEDIUM
Python vulnerability
- UbuntuUSN-7280-3MEDIUM
Python 2.7 regression
- UbuntuUSN-7348-1MEDIUM
Python vulnerabilities
- UbuntuUSN-7348-2MEDIUM
Python regression
Data Freshness Timeline
(refreshed 6× in last 7d / 28× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
Showing the most recent 100 of 179 total refreshes for this CVE.
- 2026-09-07 16:00 UTCEPSS rescore
- 2026-09-06 13:46 UTCEPSS rescore
- 2026-09-04 13:59 UTCEPSS rescore
- 2026-09-04 05:05 UTCEPSS rescore
- 2026-09-02 14:10 UTCEPSS rescore
- 2026-09-01 19:35 UTCOSV refresh
- 2026-09-01 13:52 UTCEPSS rescore
- 2026-08-30 19:16 UTCEPSS rescore
- 2026-08-30 19:16 UTCEPSS rescore
- 2026-08-30 01:21 UTCEPSS rescore
- 2026-08-28 21:39 UTCEPSS rescore
- 2026-08-27 14:24 UTCEPSS rescore
- 2026-08-26 14:44 UTCEPSS rescore
- 2026-08-25 13:47 UTCEPSS rescore
- 2026-08-24 14:15 UTCEPSS rescore
- 2026-08-23 00:18 UTCEPSS rescore
- 2026-08-21 23:47 UTCEPSS rescore
- 2026-08-20 22:54 UTCEPSS rescore
- 2026-08-19 17:02 UTCEPSS rescore
- 2026-08-18 13:47 UTCEPSS rescore
- 2026-08-17 13:46 UTCEPSS rescore
- 2026-08-16 14:55 UTCEPSS rescore
- 2026-08-16 02:13 UTCEPSS rescore
- 2026-08-15 21:07 UTCOSV refresh
- 2026-08-15 01:29 UTCEPSS rescore
Show 75 moreShow fewer
- 2026-08-13 21:59 UTCEPSS rescore
- 2026-08-12 13:49 UTCEPSS rescore
- 2026-08-10 23:58 UTCEPSS rescore
- 2026-08-09 13:45 UTCEPSS rescore
- 2026-08-08 16:35 UTCEPSS rescore
- 2026-08-07 16:26 UTCEPSS rescore
- 2026-08-06 13:45 UTCEPSS rescore
- 2026-08-05 19:16 UTCEPSS rescore
- 2026-08-05 19:16 UTCEPSS rescore
- 2026-08-04 15:08 UTCEPSS rescore
- 2026-08-04 10:37 UTCEPSS rescore
- 2026-08-03 10:35 UTCEPSS rescore
- 2026-08-02 02:25 UTCEPSS rescore
- 2026-08-01 04:14 UTCEPSS rescore
- 2026-07-31 14:25 UTCVendor advisory
- 2026-07-31 14:25 UTCGHSA enrichment
- 2026-07-31 14:09 UTCVendor advisory
- 2026-07-31 14:09 UTCGHSA enrichment
- 2026-07-30 23:20 UTCVendor advisory
- 2026-07-30 23:20 UTCGHSA enrichment
- 2026-07-30 22:22 UTCEG score recompute
- 2026-07-30 22:22 UTCVendor advisory
- 2026-07-30 22:22 UTCGHSA enrichment
- 2026-07-30 16:26 UTCEPSS rescore
- 2026-07-30 01:29 UTCEPSS rescore
- 2026-07-28 15:35 UTCEPSS rescore
- 2026-07-27 14:12 UTCEPSS rescore
- 2026-07-26 14:53 UTCEPSS rescore
- 2026-07-25 14:17 UTCEPSS rescore
- 2026-07-25 14:17 UTCEPSS rescore
- 2026-07-23 14:17 UTCEPSS rescore
- 2026-07-23 02:47 UTCEG score recompute
- 2026-07-22 14:07 UTCEPSS rescore
- 2026-07-22 14:07 UTCEPSS rescore
- 2026-07-21 15:24 UTCEPSS rescore
- 2026-07-20 17:07 UTCEPSS rescore
- 2026-07-19 14:30 UTCEPSS rescore
- 2026-07-19 02:28 UTCEPSS rescore
- 2026-07-19 02:28 UTCEPSS rescore
- 2026-07-18 10:03 UTCEPSS rescore
- 2026-07-18 10:03 UTCEPSS rescore
- 2026-07-16 17:02 UTCEPSS rescore
- 2026-07-16 17:02 UTCEPSS rescore
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 01:59 UTCEPSS rescore
- 2026-07-15 01:59 UTCEPSS rescore
- 2026-07-14 08:40 UTCOSV refresh
- 2026-07-13 22:29 UTCEPSS rescore
- 2026-07-13 22:29 UTCEPSS rescore
- 2026-07-13 06:12 UTCEPSS rescore
- 2026-07-12 05:45 UTCEPSS rescore
- 2026-07-12 05:45 UTCEPSS rescore
- 2026-07-11 08:26 UTCEPSS rescore
- 2026-07-09 19:09 UTCEPSS rescore
- 2026-07-09 19:09 UTCEPSS rescore
- 2026-07-08 15:14 UTCEPSS rescore
- 2026-07-07 13:45 UTCEPSS rescore
- 2026-07-06 16:26 UTCEPSS rescore
- 2026-07-06 16:26 UTCEPSS rescore
- 2026-07-06 02:22 UTCEPSS rescore
- 2026-07-05 02:30 UTCEPSS rescore
- 2026-07-04 06:30 UTCEPSS rescore
- 2026-07-04 06:30 UTCEPSS rescore
- 2026-07-02 17:00 UTCEPSS rescore
- 2026-07-01 15:06 UTCEPSS rescore
- 2026-06-30 23:21 UTCEPSS rescore
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 04:55 UTCEPSS rescore
- 2026-06-28 04:55 UTCEPSS rescore
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-26 09:23 UTCOSV refresh
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-25 13:49 UTCEPSS rescore
Related CVEs(same vendor + same CWE)
Same vendor
10 shownredhat
- CVE-2001-0825EG 10.0HIGH
- CVE-2001-0554EG 10.0EPSS p98HIGH
- CVE-2001-0414EG 10.0EPSS p100HIGH
- CVE-2001-0191EG 10.0EPSS p92HIGH
- CVE-2001-0301EG 10.0EPSS p91HIGH
- CVE-2001-0197EG 10.0EPSS p96HIGH
- CVE-2001-0233EG 10.0EPSS p96HIGH
- CVE-2001-0010EG 10.0EPSS p98HIGH
- CVE-2001-0011EG 10.0EPSS p94HIGH
- CVE-2001-0013EG 10.0EPSS p96HIGH
Same CWE
10 shownCWE-20
- CVE-2005-0050EG 10.0EPSS p99HIGH
- CVE-2004-1019EG 10.0EPSS p94HIGH
- CVE-2004-0840EG 10.0EPSS p98HIGH
- CVE-2003-1425EG 10.0EPSS p96HIGH
- CVE-2003-1487EG 10.0EPSS p94HIGH
- CVE-2002-1874EG 10.0HIGH
- CVE-2002-2236EG 10.0EPSS p91HIGH
- CVE-2002-2365EG 10.0HIGH
- CVE-2002-1358EG 10.0EPSS p93HIGH
- CVE-2002-1359EG 10.0EPSS p100HIGH
Frequently asked(5)
What is CVE-2025-0938?
When was CVE-2025-0938 disclosed?
Is CVE-2025-0938 actively exploited?
What is the CVSS score of CVE-2025-0938?
How do I remediate CVE-2025-0938?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2025-0938
Is Your Infrastructure Affected by CVE-2025-0938?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.