为什么他妈的还有人在用 FTP⁉️
Source: Dev.to
TL;DR
FTP 以明文方式发送你的凭证——这是一种比失望本身还要古老的协议。FTPS 加入了 TLS,但僵尸仍在蹒跚前行。人们却仍在使用它,像一种该在我们埋葬普通 HTTP 的那一刻就该消亡的诅咒家族传统一样不断喂入密码。
FTP 仍在做的事
- 明文用户名和密码
- 未加密的文件传输,在网络上大声喊叫
- 控制/数据通道混乱,完美折磨防火墙
- 零完整性检查
任何使用 Wireshark 的人都可以在不需要黑客技巧的情况下收集你的凭证——只需“打开程序,点击开始,目睹失败”。
真实案例泄露示例
在一次近期的泄露调查中,单一次 FTP 登录(无暴力破解)就让一个加密矿工被部署。客户唯一看到的迹象是 CPU 飙升。攻击链非常简单:
- FTP 登录 →
- 矿工安装 →
- CPU 使用率飙升 →
- 客户注意到
即使是强密码,在明文发送时也只能稍微好一点。
为什么 FTP 死不掉
- 遗留脚本,比许多职业生涯还要久远
- 共享主机默认设置,停留在 2000 年代中期的思维模式
- “我们在防火墙后面。” 内部从不出事,对吧?
- 工具默认值,优先考虑一致性而非安全性
更安全的替代方案
| 协议 | 关键优势 |
|---|---|
| FTPS | 添加 TLS 加密;如果不能使用 SSH 仍是临时补丁 |
| SFTP | 加密、现代、广泛支持(基于 SSH) |
| SCP | 快速、简单,使用 SSH 加密 |
| rsync over SSH | 高效同步,内置完整性检查 |
| Git + CI/CD | 部署理想方案;鼓励正确的版本控制 |
SFTP 与 SCP 共享 22 端口,使用现代密码学,使你的 SOC 团队少喝几杯。
建议
- 绝不要在生产环境或处理敏感数据时使用普通 FTP。
- 如果政策阻止使用 SFTP,暂时启用 FTPS 作为临时补丁,但要计划迁移到基于 SSH 的方案。
- 检查主机默认设置:许多共享主机面板(如 Plesk、cPanel)需要手动选择 FTPS 或 SFTP。记录并强制执行安全默认值。
- 用支持 SFTP、SCP 或 rsync 的工具替换遗留脚本。
今天使用普通 FTP 并不是“复古”“极简”或“简单”。它是对安全事件的邀请,带着表演艺术般的热情。
如果你的业务仍然把 FTP 作为默认传输方式,你的平台并不是过时,而是一场运营考古挖掘,竟然还能向客户收费。