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.
01
describes (1)
Related CVEs.
| ID | severity | exploitable |
|---|---|---|
| CVE-2026-8328US | — | — |
02
references
External citations — patches, advisories, analysis.
- https://github.com/python/cpython/commit/2bbcf3fb7a420a05605576c0f9468d4675381b5fFIX
- https://github.com/python/cpython/commit/5dadc64673ce875ebfb24163907777dae0f6ca06FIX
- https://github.com/python/cpython/commit/7d95a1dc7382b55cba7fdd6a110336077584a4f0FIX
- https://github.com/python/cpython/commit/bb3446dda6c49b32e67c11dbbbf221b40be00763FIX
- https://github.com/python/cpython/commit/c88704431ea3248ca769384c13856330976fac1dFIX
- https://github.com/python/cpython/commit/eac4fe3b2c77693790a5ef7dfab127c1fee81bf9FIX
- https://github.com/python/cpython/commit/ef12d0dc824baccf737bba1458e5eed3d1e0fcebFIX
- https://github.com/python/cpython/issues/87451REPORT
scry
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan