CVE-2021-3177

NameCVE-2021-3177
DescriptionPython 3.x through 3.9.1 has a buffer overflow in PyCArg_repr in _ctypes/callproc.c, which may lead to remote code execution in certain Python applications that accept floating-point numbers as untrusted input, as demonstrated by a 1e300 argument to c_double.from_param. This occurs because sprintf is used unsafely.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, Mageia, GitHub code/issues, web search, more)
ReferencesDLA-2619-1
NVD severityhigh

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
python2.7 (PTS)stretch2.7.13-2+deb9u3vulnerable
stretch (security)2.7.13-2+deb9u5vulnerable
buster2.7.16-2+deb10u1vulnerable
bullseye2.7.18-8fixed
bookworm, sid2.7.18-9fixed
python3.5 (PTS)stretch3.5.3-1+deb9u1vulnerable
stretch (security)3.5.3-1+deb9u4fixed
python3.7 (PTS)buster3.7.3-2+deb10u3fixed
python3.9 (PTS)bullseye3.9.2-1fixed
bookworm, sid3.9.7-4fixed

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

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
python2.7source(unstable)2.7.18-2
python3.5sourcestretch3.5.3-1+deb9u4DLA-2619-1
python3.5source(unstable)(unfixed)
python3.7sourcebuster3.7.3-2+deb10u3
python3.7source(unstable)(unfixed)
python3.8source(unstable)(unfixed)
python3.9source(unstable)3.9.1-3

Notes

[stretch] - python3.7 <no-dsa> (Minor issue)
[buster] - python2.7 <no-dsa> (Minor issue)
[stretch] - python2.7 <no-dsa> (Minor issue)
https://bugs.python.org/issue42938
https://github.com/python/cpython/pull/24239
https://python-security.readthedocs.io/vuln/ctypes-buffer-overflow-pycarg_repr.html
https://github.com/python/cpython/commit/916610ef90a0d0761f08747f7b0905541f0977c7 (master)
https://github.com/python/cpython/commit/c347cbe694743cee120457aa6626712f7799a932 (3.9)
https://github.com/python/cpython/commit/ece5dfd403dac211f8d3c72701fe7ba7b7aa5b5f (3.8)
https://github.com/python/cpython/commit/d9b8f138b7df3b455b54653ca59f491b4840d6fa (3.7)
https://github.com/python/cpython/commit/34df10a9a16b38d54421eeeaf73ec89828563be7 (3.6)

Search for package or bug name: Reporting problems