CVE catalog

CVE-2020-7212

python-urllib3: CVE-2020-7212

[CVE catalog]

Severity
Low · CVSS 0CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:N
Published
Source
[NVD] · [CVE record]
EPSS
3.37% · Oct 25, 2026

The _encode_invalid_chars function in util/url.py in the urllib3 library 1.25.2 through 1.25.7 for Python allows a denial of service (CPU consumption) because of an inefficient algorithm. The percent_encodings array contains all matches of percent encodings. It is not deduplicated. For a URL of length N, the size of percent_encodings may be up to O(N). The next step (normalize existing percent-encoded bytes) also takes up to O(N) for each step, so the total time is O(N^2). If percent_encodings were deduplicated, the time to compute _encode_invalid_chars would be O(kN), where k is at most 484 ((10+6*2)^2).

Vulnerable and fixed packages

Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.

DistributionPackageReleaseVersionStatus
Debianpython-urllib3sid2.8.0-2fixed
Debianpython-urllib3forky2.8.0-2fixed
Debianpython-urllib3trixie2.3.0-3+deb13u2fixed
Debianpython-urllib3trixie-security2.3.0-3+deb13u2fixed
Debianpython-urllib3bookworm1.26.12-1+deb12u4fixed
Debianpython-urllib3bookworm-security1.26.12-1+deb12u4fixed

Fixed-version evidence

DistributionPackageTypeReleaseFixed versionUrgencyOriginBugs
Debianpython-urllib3sourcesid1.25.8-1not yet assignedNot reportedNot reported
Debianpython-urllib3sourceforky1.25.8-1not yet assignedNot reportedNot reported
Debianpython-urllib3sourcetrixie1.25.8-1not yet assignedNot reportedNot reported
Debianpython-urllib3sourcebookworm1.25.8-1not yet assignedNot reportedNot reported

OpenFactory catalog packages

Matching against OpenFactory catalog package versions is in progress.

[Debian 12 (Bookworm)]

  • Source package: [python-urllib3]

    Details (4)
    • 1.26.12-1+deb12u4 · all · bookworm

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · bookworm; dsa · python-urllib3 · debian · 12

    • 1.26.12-1+deb12u4 · all · bookworm

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · bookworm; dsa · python-urllib3 · debian · 12

    • 1.26.12-1+deb12u4 · all · bookworm-security

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · bookworm; dsa · python-urllib3 · debian · 12

    • 1.26.12-1+deb12u4 · all · bookworm-security

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · bookworm; dsa · python-urllib3 · debian · 12

[Debian 13 (Trixie)]

  • Source package: [python-urllib3]

    Details (4)
    • 2.3.0-3+deb13u2 · all · trixie

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · 13

    • 2.3.0-3+deb13u2 · all · trixie

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · 13

    • 2.3.0-3+deb13u2 · all · trixie-security

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · 13

    • 2.3.0-3+deb13u2 · all · trixie-security

      Fixed · Fixed: 1.25.8-1

      dsa · python-urllib3 · debian · 13

Observed:

References