Rust 社区最近有点尴尬。这门语言靠「内存安全」圈粉无数,结果供应链安全这块地板,被人直接掀了。
问题出在 crates.io。这个官方包仓库托管着 12 万个 crate,下载量动辄千万次,但审核机制约等于没有——任何人都能上传,没有代码签名,也没有强制审查。安全研究员 Alex Gaynor 和 Geoffroy Couprie 在最新分析里算了笔账:攻击者想污染一个热门项目的依赖树,成本比大多数人想象的要低得多。
更扎心的是历史包袱。Rust 1.31 之前连 lock 文件都不稳定,团队想锁定依赖版本都得折腾。现在虽然有了 Cargo.lock,但「依赖即信任」的默认逻辑没变。Gaynor 的原话很直接:「我们花了十年告诉 C 程序员要检查边界,却忘了告诉他们也要检查 who wrote this code。」
两位研究者提出的方案不算激进:把 crates.io 拆成「已审核」和「 Wild West 」两个区,用声誉系统给包打标签,同时推代码签名和可复现构建。但 crates.io 团队目前只承诺了「会讨论」,时间表没有。
讽刺的是,Rust 基金会去年刚拿了 AWS、微软、谷歌的钱,说要「保障生态安全」。这笔钱花在哪了,社区正在评论区里问。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.