Python 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.
Configuration 1 (hide)
Configuration 2 (hide)
Configuration 3 (hide)
Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')