< 返回版块

Yuan YQ 发表于 2025-04-24 10:42

Rust 真的会让软件更加安全吗?

文章通过研究西门子 Nucleus 实时操作系统中发现的 DNS 响应处理漏洞(影响超 30 亿设备),对比 C 和 Rust 编写代码的安全性。团队让工程师用 Rust 实现 RFC1035 风格 DNS 消息解码,经压力测试发现,Rust 代码无任意代码执行漏洞,且在测试完备性、开发效率上表现更好,有力证明使用 Rust 能让软件更安全。

实验过程

给 2 名实习生和 2 名员工布置用 Rust 实现 RFC1035 风格 DNS 消息编码的任务,要求 3 - 4 小时完成,然后对他们的代码进行 6 个正常路径测试和 12 个压力测试。结果如下:

实现 正常路径测试 压力测试
Nucleus NET 全部通过 多个失败,含严重问题
工程师 1 1 个失败 多数通过,无严重问题
工程师 2 全部通过 多数通过,无严重问题
工程师 3 全部通过 多数通过,无严重问题
工程师 4 全部通过 多数通过,无严重问题

从测试过程总结如下:

  • 安全性:Rust 实现无任意代码执行漏洞,未使用 unsafe 关键字。
  • 错误可恢复:所有 Rust 解决方案都能避免软件异常终止。
  • 测试完备:工程师在规定时间内编写单元测试和模糊测试,发现关键错误。
  • 开发高效:Rust 开发速度快,C 实现安全版本耗时至少 3 倍。

原文:https://tweedegolf.nl/en/blog/152/does-using-rust-really-make-your-software-safer

Ubuntu 计划在 25.10 版本将核心工具包迁移至 rust-coreutils

Ubuntu 计划在 25.10 版本将核心工具包迁移至 rust-coreutils 作为新默认选项。由于核心工具包的重要性,采用重命名现有包、引入新包并设置复杂依赖关系的方式迁移。这一迁移存在镜像体积增大(Docker 镜像从 75MB 增至 93MB)、AppArmor 配置问题等影响。

原文:https://discourse.ubuntu.com/t/migration-to-rust-coreutils-in-25-10/59708

cargo-seek v0.1 发布:TUI 的 crate 管理工具

cargo-seek 是一个 TUI 的 cargo 包管理器,可以搜索、添加和安装 cargo crate。

特性:

  • 搜索
    • 排序依据:相关性、名称、下载量、近期下载量、最近更新时间、新添加时间
    • 搜索范围:在线、项目、已安装或全部
    • 直观标记项目依赖项和已安装的二进制文件
    • 分页
  • 向项目中添加、移除 crate
  • 安装、卸载 cargo 二进制文件
  • 打开文档
  • 打开存储库
  • 在 crates.io 上打开 crate
  • 在 lib.rs 上打开 crate

Github 仓库:https://github.com/tareqimbasher/cargo-seek

--

From 日报小组 Yuan YQ

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页