CVE-2020-7212

CVSS V2 High 7.8 CVSS V3 High 7.5
Description
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).
Overview
  • CVE ID
  • CVE-2020-7212
  • Assigner
  • cve@mitre.org
  • Vulnerability Status
  • Analyzed
  • Published Version
  • 2020-03-06T20:15:12
  • Last Modified Date
  • 2020-03-09T16:55:14
CPE Configuration (Product)
CPE Vulnerable Operator Version Start Version End
cpe:2.3:a:python:urllib3:*:*:*:*:*:*:*:* 1 OR 1.25.2 1.25.7
CVSS Version 2
  • Version
  • 2.0
  • Vector String
  • AV:N/AC:L/Au:N/C:N/I:N/A:C
  • Access Vector
  • NETWORK
  • Access Compatibility
  • LOW
  • Authentication
  • NONE
  • Confidentiality Impact
  • NONE
  • Integrity Impact
  • NONE
  • Availability Impact
  • COMPLETE
  • Base Score
  • 7.8
  • Severity
  • HIGH
  • Exploitability Score
  • 10
  • Impact Score
  • 6.9
CVSS Version 3
  • Version
  • 3.1
  • Vector String
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
  • Attack Vector
  • NETWORK
  • Attack Compatibility
  • LOW
  • Privileges Required
  • NONE
  • User Interaction
  • NONE
  • Scope
  • UNCHANGED
  • Confidentiality Impact
  • NONE
  • Availability Impact
  • HIGH
  • Base Score
  • 7.5
  • Base Severity
  • HIGH
  • Exploitability Score
  • 3.9
  • Impact Score
  • 3.6
References
Reference URL Reference Tags
https://github.com/urllib3/urllib3/blob/master/CHANGES.rst Release Notes Third Party Advisory
https://pypi.org/project/urllib3/1.25.8/ Release Notes Vendor Advisory
https://github.com/urllib3/urllib3/commit/a74c9cfbaed9f811e7563cfc3dce894928e0221a Patch Third Party Advisory
History
Created Old Value New Value Data Type Notes
2022-05-10 16:48:08 Added to TrackCVE
2022-12-04 12:10:46 2020-03-06T20:15Z 2020-03-06T20:15:12 CVE Published Date updated
2022-12-04 12:10:46 2020-03-09T16:55:14 CVE Modified Date updated
2022-12-04 12:10:46 Analyzed Vulnerability Status updated