服务粉丝

我们一直在努力
当前位置:首页 > 财经 >

“巨硬”要让Windows更硬,用18万行Rust代码重写核心Windows库

日期: 来源:OSC开源社区收集编辑:
出品 | OSC开源社区(ID:oschina2013)
微软正在用 Rust 编程语言重写核心 Windows 库。Windows 操作系统安全总监 David “dwizzle” Weston 上个月在以色列特拉维夫的 BlueHat IL 2023 上宣布 Rust 进入操作系统内核。"在接下来的几周或几个月内,大家将会在内核中使用 Rust 启动 Windows,该项工作的基本目标是将其中一些内部的 C++ 数据类型替换成 Rust。"
Rust 是一种高性能、内存安全语言,而软件项目的大部分漏洞都属于内存安全 bug。自 2004 年以来,微软安全响应中心(MSRC)对所有报告过的微软安全漏洞进行了分类。根据他们提供的数据,所有微软年度补丁中约有 70% 是针对内存安全漏洞的修复程序

目前微软主要重写了 Windows 中的两个项目——DWriteCore 以及 Win32 GDI,包含了一些非常古老的代码。
Windows 的 Rust 革新始于 2020 年的 DWriteCore,它是 Windows 的 DWrite 引擎的 Windows App SDK 实现,用于文本分析、布局和渲染,其中现包含了约 152,000 行 Rust 代码和 96,000 行 C++ 代码。

Windows 图形设备接口 (Win32 GDI) 作为另一个用 Rust 重写的项目,目前已包含 36,000 行 Rust 代码。Weston 强调道,与 C++ 相比,Rust 不仅易于编写还易于理解。最新版本的 Windows 11 启动中使用的就是这个 Rust 版本,虽然它已经通过了所有 GDI 测试,但 Rust 接口目前仍通过功能标志被禁用。
Weston 还透露,Windows 内核中的 SysCall 也是采用 Rust 实现的。但他也表示,用 Rust 重写 Windows 可能不会很快发生。“所以虽然我们喜欢 Rust,但我们需要一种策略,同时保护更多的原生代码。”
事实上,早在几年前微软就表现出了对 Rust 的兴趣,他们认为该语言是一种在代码到达用户手中之前捕获和消除内存安全漏洞的方法。现如今,随着谷歌等竞争对手都在大力拥抱 Rust,微软对 Rust 的探索也变得更加热情。去年 9 月,微软 Azure 首席技术官 Mark Russinovich 还曾在社交平台上发布动态呼吁,开发人员应该更多地使用 Rust 而不是 C/C++ 来启动新项目
另一方面,虽然用 Rust 重写 Windows 不会很快发生,但微软对 Rust 的支持无疑让开源社区受益。开源软件开发者、现任 Sentry 安全工程师 Armin Ronacher 认为,微软对 Rust 的投入对这门语言来说非常重要。
“具体来说,我希望微软重用现有的编译器,我希望这会带来更好的 PDB [程序数据库] 支持。在现如今的 Windows 上,开发人员工具支持要落后于你在基于 DWARF 的 [使用属性记录格式进行调试] 平台上获得的支持。”

Armin 也是 Python Web 框架 Flask 的作者,最近开源了用 Rust 重写的 Python 包管理工具 Rye。更多细节阅读:Flask 之父凭一己之力击败各种 GPT,称 Python 包管理比LLM更火热

Pydantic 的创始人兼使用 Python 和 Rust 的开发人员 Samuel Colvin 也表示,“我对微软的这种前瞻性思维印象深刻,但并不感到非常惊讶。我相信他们是在工程师的施压下才决定采用 Rust。如果你今天正在构建一个性能关键或低级别的应用程序,那么 Rust 在这一点上是一个明智的选择。”
Colvin 还认为,找到优秀的 Rust 工程师比找到优秀的 C/C++ 工程师更容易,因为很多工程师都有兴趣尝试学习该语言。“对于我们这些依赖 Rust 的人来说,微软正在使用它并希望支持它,这真的很令人兴奋。”

相关链接:
  • https://youtu.be/8T6ClX-y2AE?t=3100
  • https://www.theregister.com/2023/04/27/microsoft_windows_rust/
  • https://youtu.be/8T6ClX-y2AE?t=3149

往期推荐



Flask之父凭一己之力击败各种GPT,称Python包管理比LLM更火热

程序员称8k工资高只要2k,这波MongoDB输麻了

有人用这开源项目,在朋友圈赚了100万



相关阅读

  • Opera推出Opera One,将取代Opera浏览器

  • 出品 | OSC开源社区(ID:oschina2013)Opera 日前推出了一款名为 Opera One 的新浏览器,该浏览器正处于开发者预览阶段,用户可以访问官网下载试用(https://www.opera.com/one)。这个
  • ChatGPT生成的代码比你写的更不安全

  • 出品 | OSC开源社区(ID:oschina2013)ChatGPT 是 OpenAI 发布的大语言模型聊天机器人,可以根据用户的输入生成文本,其中包括代码。不过加拿大魁北克大学的研究人员发现,ChatGPT 生
  • 实战|一次对BC网站的渗透测试

  • 作者:xzajyjs, 转载于FreeBuf.COM法律声明此渗透测试后已将所有信息移交警方,请勿用于非法用途。信息搜集首先当然是通过fofa进行bc网站的后台搜集(搜索语法大家自行探索),获得的q
  • 安全日报(2023.03.29)

  • 赶紧点击上方话题进行订阅吧!报告编号:B6-2023-032999报告来源:360CERT报告作者:360CERT更新日期:2023-03-291 Security Incident|安全事件美国一律师事务所因数据泄露被罚20万美
  • CVE-2023-22809:Sudo权限提升漏洞通告

  • 赶紧点击上方话题进行订阅吧!报告编号:CERT-R-2023-70报告来源:360CERT报告作者:360CERT更新日期:2023-03-301 漏洞简述2023年03月30日,360CERT监测发现sudo发布了sudo的风险通告,
  • 安全日报(2023.03.30)

  • 赶紧点击上方话题进行订阅吧!报告编号:B6-2023-033099报告来源:360CERT报告作者:360CERT更新日期:2023-03-301 Security Incident|安全事件美国食品药品监督管理局推出维护医疗设
  • 安全日报(2023.04.26)

  • 赶紧点击上方话题进行订阅吧!报告编号:B6-2023-042699报告来源:360CERT报告作者:360CERT更新日期:2023-04-261 Security Incident|安全事件美国政府将于5月正式宣布制定物联网设
  • 安全日报(2023.04.27)

  • 赶紧点击上方话题进行订阅吧!报告编号:B6-2023-042799报告来源:360CERT报告作者:360CERT更新日期:2023-04-271 Security Incident|安全事件Clop和LockBit勒索软件团伙利用PaperCu

热门文章

  • “复活”半年后 京东拍拍二手杀入公益事业

  • 京东拍拍二手“复活”半年后,杀入公益事业,试图让企业捐的赠品、家庭闲置品变成实实在在的“爱心”。 把“闲置品”变爱心 6月12日,“益心一益·守护梦想每一步”2018年四
  • 美国对华2000亿关税清单,到底影响有多大?

  • 1 今天A股大跌,上证最大跌幅超过2%。直接导火索是美国证实计划对华2000亿美元产品加征25%关税。 听起来,2000亿美元数目巨大,我们来算笔账。 2000亿美元,按现在人民币汇率

最新文章

  • 通过服务进行Azure 权限升级

  • {点击蓝色 关注我们}导语这篇文章介绍了微软云计算平台的架构、服务、权限等,同时分析了因服务权限配置不当导致的权限提升问题。原文链接:https://infosecwriteups.com/azure
  • 3D渲染——光栅化渲染原理解析

  • 前言随着技术的发展,基于 GPU 的渲染技术得到了广泛应用,日常生活中常见的 3D 动画和游戏都是通过计算机渲染技术来实现。当前主要的 3D 渲染模型包括光栅化渲染和光线追踪两
  • Opera推出Opera One,将取代Opera浏览器

  • 出品 | OSC开源社区(ID:oschina2013)Opera 日前推出了一款名为 Opera One 的新浏览器,该浏览器正处于开发者预览阶段,用户可以访问官网下载试用(https://www.opera.com/one)。这个
  • 跨数据中心下的Kafka高可用架构分析

  • 来源 | OSCHINA 社区作者 | 腾讯云中间件原文链接:https://my.oschina.net/u/4587289/blog/8695098导语本文介绍了 Kafka 跨数据中心的两种部署方式,简要分析两种方式下的不同