#VU61681 Server-Side Request Forgery (SSRF) in Python

Published: 2022-03-29

Vulnerability identifier: #VU61681

Vulnerability risk: Medium

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

CVE-ID: CVE-2021-4189


Exploitation vector: Network

Exploit availability: No

Vulnerable software:
Universal components / Libraries / Scripting languages

Vendor: Python.org


The disclosed vulnerability allows a remote attacker to perform SSRF attacks.

The vulnerability exists due to insufficient validation of user-supplied input in the FTP (File Transfer Protocol) client library when using it in PASV (passive) mode. A remote attacker can set up a malicious FTP server, trick the FTP client in Python into connecting back to a given IP address and port, which can lead to FTP client scanning ports which otherwise would not have been possible.

Install updates from vendor's website.

Vulnerable software versions

Python: 3.9.0 - 3.9.2, 3.8 - 3.8.8, 3.7 - 3.7.10, 3.6 - 3.6.13

External links

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