Bug 1959951 (CVE-2021-29510)

Summary: CVE-2021-29510 python-pydantic: Use of "infinity" as an input to datetime and date fields causes infinite loop
Product: [Other] Security Response Reporter: Pedro Sampaio <psampaio>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: kaycoth, susi.lehtola
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-04 14:58:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1959952, 1964011    
Bug Blocks: 1959953    

Description Pedro Sampaio 2021-05-12 17:31:32 UTC
Impact
Passing either 'infinity', 'inf' or float('inf') (or their negatives) to datetime or date fields causes validation to run forever with 100% CPU usage (on one CPU).

Patches
Pydantic is be patched with fixes available in the following versions:

v1.8.2
v1.7.4
v1.6.2
All these versions are available on pypi, and will be available on conda-forge soon.

See the changelog for details.

References:

https://pydantic-docs.helpmanual.io/changelog/

Comment 1 Pedro Sampaio 2021-05-12 17:31:57 UTC
Created python-pydantic tracking bugs for this issue:

Affects: fedora-all [bug 1959952]