CVE-2026-8328
mediumpriority · track · 0EPSS 0.005 · 39 %ileDEEUUSEPSS · scored 2026-10-23
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.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode⚠ sources disagree · low–medium · 2.1–5.9
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (27)
Products and version ranges known to be affected.
advisories (7)
Vendor and ecosystem advisories describing this.
- WID-SEC-W-2026-1520CPython: Schwachstelle ermöglicht Manipulation von DatenDeutsch2026-05-14csaf · cert_bundDE
Ein entfernter, anonymer Angreifer kann eine Schwachstelle in CPython ausnutzen, um Daten zu manipulieren.
- WID-SEC-W-2026-2455Oracle Solaris Drittanbieterkomponenten: Mehrere SchwachstellenDeutsch2026-07-21csaf · cert_bundDE
Ein entfernter, anonymer oder authentisierter Angreifer kann mehrere Schwachstellen in verschiedenen Komponenten von Drittanbietern in Oracle Solaris ausnutzen, um einen nicht näher spezifizierten Angriff durchzuführen.
- BIT-libpython-2026-8328FTP PASV SSRF, ftpcp() does not use actual peer address, trusts server-supplied PASV host address2026-06-05vendor · osvUS
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.
- BIT-python-2026-8328FTP PASV SSRF, ftpcp() does not use actual peer address, trusts server-supplied PASV host address2026-06-05vendor · osvUS
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.
- BIT-python-min-2026-8328FTP PASV SSRF, ftpcp() does not use actual peer address, trusts server-supplied PASV host address2026-06-05vendor · osvUS
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.
- PSF-0000-CVE-2026-83282026-05-13vendor · osvUS
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.
- PSF-2026-242026-05-13vendor · osvUS
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.
also known as (8)
Other names and identifiers for this entity.
- CNNVD-202605-2985cnnvd
- EUVD-2026-30177enisa_euvd
- GHSA-j989-fggp-qgp5enisa_euvd
- BIT-libpython-2026-8328osv
- BIT-python-2026-8328osv
- BIT-python-min-2026-8328osv
- PSF-0000-CVE-2026-8328osv
- PSF-2026-24osv
sources
Which sources assert this record, and when.
references (23)
External citations — patches, advisories, analysis.
- https://access.redhat.com/security/cve/cve-2026-8328cnnvd
- https://github.com/python/cpython/tagsPatchcnnvd
- https://nvd.nist.gov/vuln/detail/CVE-2026-8328cnnvd
- https://github.com/python/cpython/commit/2bbcf3fb7a420a05605576c0f9468d4675381b5fenisa_euvd
- https://github.com/python/cpython/commit/5dadc64673ce875ebfb24163907777dae0f6ca06enisa_euvd
- https://github.com/python/cpython/commit/7d95a1dc7382b55cba7fdd6a110336077584a4f0enisa_euvd
- https://github.com/python/cpython/commit/bb3446dda6c49b32e67c11dbbbf221b40be00763enisa_euvd
- https://github.com/python/cpython/commit/c88704431ea3248ca769384c13856330976fac1denisa_euvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan