Skip to content
CVE PROGRAM SOURCE RECORD5.9 Medium

CVE-2026-8328

FTP PASV SSRF, ftpcp() does not use actual peer address, trusts server-supplied PASV host address

Description

The ftpcp() function in Lib/ftplib.py was not updated when CVE-2021-4189 was fixed. While makepasv() was patched to replace server-supplied PASV host addresses with the actual peer address (getpeername()[0]), ftpcp() still calls parse227() directly and passes the raw attacker-controllable IP address and port to target.sendport(). This patch is related to CVE-2021-4189.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Python Software Foundation CPython

Default version status: unaffected

  • 0 to < 3.10.21affected
  • 3.11.0 to < 3.11.16affected
  • 3.12.0 to < 3.12.14affected
  • 3.13.0 to < 3.13.14affected
  • 3.14.0 to < 3.14.6affected
  • 3.15.0a1 to < 3.15.0b2affected

References