
Member-only story
Ashish Sharda
·2025年12月24日 · 3 分钟阅读
111
分享
批评者称CVE-2025-68260是一次失败。但这恰恰是Rust迄今为止得到的最好验证。
点击查看全尺寸图片
混乱vs.可控:在传统系统中,崩溃可能发生在任何地方。而在Rust中,危险恰好被隔离在我们标记的位置。
如果你这周关注了Hacker News或r/rust社区,你一定看到了这些头条新闻:天塌下来了,"用Rust重写"的梦想破灭了。
CVE-2025-68260 已正式发布——这是Linux内核中第一个被归因于Rust代码的重大漏洞。
该漏洞在 rust_binder 模块(Android Binder驱动的重写版本)中被发现。这是一个导致内存损坏的竞争条件。是的,它确实引发了内核恐慌。
但如果你忽略C++死忠粉们那些"我早说过"的评论,你会意识到一个令人难以置信的事实:
这个bug恰恰证明了我们为什么要转向Rust。
让我们看看实际出了什么问题。这个漏洞并非那种可能潜伏在5万行代码中任何地方的模糊缓冲区溢出。它是一个在 drivers/android/binder/node.rs 文件中的特定逻辑错误。
问题出现在 Node::release 函数中。代码试图将一个共享的 death_list 中的元素移动到一个本地的临时列表中。FINISHED
CSD0tFqvECLokhw9aBeRqtIP9XNHEObQo3y4noWP1618TT0U6sP+u0jstCWdLaLkRQ6J2GdxQIe4t9w/FAC3p98IkFfO/vjtKFBOr2g06XNtW4tTsKBix7HeHsent5hE+icxPrUVjZVsUGVBVOJQmEWWiYyWQjIAn6wAhUG6XGU=
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。