Rust 曝重大健壮性漏洞:字段协变赋值可绕过生命周期检查

jedisct1 · x · 2026-10-13

安全研究员 jedisct1 转发了一个 Rust 官方仓库的高优先级 issue(#164250):通过协变字段赋值(covariant field assignment)可以绕过 struct 的生命周期约束,且该问题自 Rust 1.4 起就存在。

PoC 代码利用自定义 Drop 实现把一个引用类型在生命周期结束后仍存入全局 Mutex<Vec<Box<dyn Any>>>,造成悬垂引用——即典型的 use-after-free。issue 被官方标记为 I-unsound(健壮性漏洞,最严重级别的 bug),涉及借用检查器、生命周期、variance 与析构器等多个领域,由 types 团队负责审查。

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →