You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python ftplib被动模式是否安全?CVE-2021-4189影响咨询

关于ftplib的CVE-2021-4189漏洞影响及应对建议

漏洞对你代码的影响判断

  • 若你连接的是可信的FTP服务器(比如内部受控服务器、官方认证服务端),这个漏洞对你的代码基本无威胁——毕竟只有恶意服务器才会利用该缺陷诱导客户端连接恶意IP/端口。
  • 但如果你的代码需要连接不可信或未知来源的FTP服务器,风险确实存在:恶意服务器会通过PASV响应返回恶意IP和端口,导致你的客户端发起非预期连接,可能被用于端口扫描或其他恶意行为。

是否需要切换到主动模式(ftp.set_pasv(False))

  • 主动模式能规避这个漏洞,但要注意它的局限性:
    • 主动模式下,客户端会开放端口等待服务器连接,若客户端处于NAT或防火墙后,大概率会出现连接失败(防火墙通常会拦截外部发起的主动连接)。
    • 如果你必须连接不可信服务器,且网络环境支持主动模式,切换是有效的防护手段;但如果连接的是可信服务器,完全没必要切换,保持被动模式即可。

更稳妥的替代方案(若无法切换模式)

  • 升级Python版本:该漏洞已在Python 3.9.10、3.10.2及后续版本中修复,修复后ftplib会验证PASV响应中的主机是否与FTP服务器地址一致,阻止恶意跳转。
  • 手动验证PASV响应:若无法升级Python,可在代码中手动检查PASV返回的IP是否与你连接的FTP_ADDRESS一致,不一致则拒绝连接。

内容的提问来源于stack exchange,提问作者Anne Yo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 00:00:55