#VU29956 Insecure DLL loading in Python


Published: 2020-07-15

Vulnerability identifier: #VU29956

Vulnerability risk: High

CVSSv3.1: 7.7 [CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2020-15523

CWE-ID: CWE-427

Exploitation vector: Network

Exploit availability: No

Vulnerable software:
Python
Universal components / Libraries / Scripting languages

Vendor: Python.org

Description

The vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to the "python3X.dll" may use an invalid search path for python3.dll loading (after Py_SetPath has been used). A remote attacker can place a specially crafted Trojan horse python3.dll file, trick the victim into opening a file, associated with the vulnerable application, and execute arbitrary code on victim's system.

Mitigation
Install updates from vendor's website.

Vulnerable software versions

Python: 3.6.0 - 3.6.10, 3.7.0 - 3.7.8, 3.8.0 - 3.8.4 rc1, 3.9.0 - 3.9.0b4


External links
http://bugs.python.org/issue29778
http://github.com/python/cpython/pull/21297


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.


Latest bulletins with this vulnerability