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.
{
"cna_assigner": "PSF",
"cwe_ids": [
"CWE-918"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/8xxx/CVE-2026-8328.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "3.10.21"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.11.0"
},
{
"fixed": "3.11.16"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.12.0"
},
{
"fixed": "3.12.14"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.13.0"
},
{
"fixed": "3.13.14"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.14.0"
},
{
"fixed": "3.14.6"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.15.0a1"
},
{
"fixed": "3.15.0b2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"fixed": "5dadc64673ce875ebfb24163907777dae0f6ca06"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "7d95a1dc7382b55cba7fdd6a110336077584a4f0"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "bb3446dda6c49b32e67c11dbbbf221b40be00763"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "c88704431ea3248ca769384c13856330976fac1d"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "eac4fe3b2c77693790a5ef7dfab127c1fee81bf9"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "2bbcf3fb7a420a05605576c0f9468d4675381b5f"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "ef12d0dc824baccf737bba1458e5eed3d1e0fceb"
}
],
"source": "REFERENCES_COMMIT"
}
]
}