专栏
在“安全优先”、“安全左移”、“供应链安全”的大趋势下,Rust作为一种更安全的编程语言越来越流行。
在IT巨头那里,Rust尤其受到重视。例如,微软曾专门委派一名实习生,用Rust重写一个至关重要的网络处理程序,该程序的内存安全漏洞过去让微软安全响应中心(MSRC)头疼不已。
Rust已经连续五年被开发人员评为“最受喜爱”的编程语言,因为它可以避免某些类型的内存安全错误,能从根本上改善软件漏洞的现状。
让Rust声名远播的优点还包括:提供C和C++的速度和控制能力,同时还提供了其他语言(例如Go和Python)的安全性和安全性保证。MSRC将近70%的漏洞归类为内存安全问题,因此消除此类漏洞至关重要。
MSRC软件工程师AlexanderClarke近日发文表达了对Rust的偏爱,他在博客中指出,尽管用C++编译可能会更容易,但是生成的程序更有可能出现错误和漏洞。
Alexander说:“Rust编译器的错误消息功能特别有用。”“通过错误消息,Rust能确切告诉你代码为什么不正确,并给出解决建议,从而落实了安全编程的概念。”
在Mozilla采用Rust为Firefox浏览器重写代码十多年之后,Rust可能已准备就绪。
虽然当前Rust的采用率仍然很低,根据“StackOverflow2020开发人员调查”,仅5.1%的开发人员使用Rust语言,但许多大型公司已承诺在特定的开发项目中使用Rust。
从2016年开始,Mozilla基金会就开始在推出使用Firefox浏览器中的Rust语言开发的代码。2019年,微软表示其打算更广泛地采用Rust在windows中编写系统软件。在2021年2月,Mozilla拆分了该项目,由新的RustFoundation管理,项目的创始赞助商包括微软、谷歌、亚马逊和华为。
为什么Rust越来越受欢迎?
RustFoundation的临时执行董事AshleyWilliams表示,这不仅与速度和安全性有关,至少对开发人员而言也是如此:“实际上,人们对Rust的赞誉,不仅包括语言和编译器,还包括高人气的开发社区和一流的软件包管理器。”
对于企业而言,是否采用Rust取决于Rust的短板——Rust的缺点是什么?很多开发人员发现Rust的编译器喜欢无缘无故地报警并拒绝工作;某些编码模式会导致缓冲区溢出,释放后使用(use-after-free)漏洞,内存两次释放问题以及引用空指针。
虽然尚存在一些问题,瑕不掩瑜,Rust的安全性的回报足够诱人。以微软为例,Rust可以帮助微软消除大部分CVE漏洞。微软首席云开发倡导者RyanLevick在一篇博客文章中说,使用编程语言构建核心系统组件可以帮助减少主要的漏洞来源。
他说:“我们相信Rust在编写安全系统软件方面会改变游戏规则。”“Rust提供编写底层系统所需的性能和控制,同时使软件开发人员能够编写健壮、安全的程序。”
当然,我们也需要留神编程语言安全性的过分夸大。
1996年1月,SunMicrosystems(升阳公司)宣布推出Java1.0,鼓吹可移植代码(例如“一次编写,随处运行”),Sun还吹捧了许多安全属性,例如自动内存管理(即“垃圾回收”)以及类型安全性和防止小程序(Applets)修改系统资源的隔离功能等。
时至今日,根据StackOverflow调查,Java的使用率约为40%,仅次于JavaScript、HTML/CSS、SQL和Python,位居第五。但是,根据《2020年开源安全状况》,在2019年开源组件中发现的6,000多个漏洞中,Java程序占15%,仅次于C(占30%)和PHP(占27%)。
Java的案例表明,效率优先的开发人员通常不会使用安全功能,而是继续开发不安全的代码。
Rust的安全方法比Java更自以为是,很可能无法避免开发人员对安全性的破坏。尽管Rust提供了内存安全性,但它也提供了一种绕过方法——“UNSAFE”关键字。使用关键字是开发人员覆盖编译器并阻止编译器检查代码块的一种方法——因为开发人员拍胸脯担保该代码是安全的。
许多Rust爱好者认为滥用关键字会破坏Rust模型。Williams对此表示理解,她说:“有些人确实会用不安全的方式使用UNSAFE防护块。”“如果将内容放入不安全的块中,编译器将不会对其进行检查,如果这些内容有误,则可能会导致内存错误。”
但是她指出,即使使用了正确的编译器功能,漏洞也很可能会渗透到开发人员的程序中,但是安全研究人员和黑客往往会发现开发人员遗留下来的问题和漏洞。例如:重点关注Rust安全的站点RustSec列出了Rust软件包(或“crates”)和语言中的250多个漏洞。
【本文是51CTO专栏作者“安全牛”的原创文章,转载请通过安全牛(微信公众号id:gooann-sectv)获取授权】
戳这里,看该作者更多好文
推荐系统
番茄花园Ghost Win7 x64 SP1稳定装机版2022年7月(64位) 高速下载
语言:中文版系统大小:3.91GB系统类型:Win7欢迎使用 番茄花园 Ghost Win7 x64 SP1 2022.07 极速装机版 专业装机版具有更安全、更稳定、更人性化等特点。集成最常用的装机软件,集成最全面的硬件驱动,精心挑选的系统维护工具,加上独有人性化的设计。是电脑城、个人、公司快速装机之首选!拥有此系统
番茄花园 Windows 10 极速企业版 版本1903 2022年7月(32位) ISO镜像快速下载
语言:中文版系统大小:3.98GB系统类型:Win10番茄花园 Windows 10 32位极速企业版 v2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程中自动激活
新萝卜家园电脑城专用系统 Windows10 x86 企业版 版本1507 2022年7月(32位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10新萝卜家园电脑城专用系统 Windows10 x86企业版 2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程
笔记本&台式机专用系统 Windows10 企业版 版本1903 2022年7月(32位) ISO镜像快速下载
语言:中文版系统大小:3.98GB系统类型:Win10笔记本台式机专用系统 Windows 10 32位企业版 v2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过
笔记本&台式机专用系统 Windows10 企业版 版本1903 2022年7月(64位) 提供下载
语言:中文版系统大小:3.98GB系统类型:Win10笔记本台式机专用系统 Windows10 64专业版 v2022年7月 一、系统主要特点: 使用微软Win10正式发布的专业版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程中自动
雨林木风 Windows10 x64 企业装机版 版本1903 2022年7月(64位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10新雨林木风 Windows10 x64 企业装机版 2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程中自动激活
深度技术 Windows 10 x64 企业版 电脑城装机版 版本1903 2022年7月(64位) 高速下载
语言:中文版系统大小:3.98GB系统类型:Win10深度技术 Windows 10 x64 企业TLSB 电脑城装机版2022年7月 一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过程
电脑公司 装机专用系统Windows10 x64 企业版2022年7月(64位) ISO镜像高速下载
语言:中文版系统大小:3.98GB系统类型:Win10电脑公司 装机专用系统 Windows10 x64 企业TLSB版2022年7月一、系统主要特点: 使用微软Win10正式发布的企业TLSB版制作; 安装过程全自动无人值守,无需输入序列号,全自动设置; 安装完成后使用Administrator账户直接登录系统,无需手动设置账号。 安装过
相关文章
- 保护云中敏感数据的3种优秀实践
- 全年观测:增长的利润意味着更多的勒索软件攻击
- 安盛保险公司遭遇Avaddon勒索软件攻击
- ISC 2020周鸿祎:网络安全是数字时代的基石
- 编程语言安全漏洞:C++、PHP、Java、Python、.Net 和 JavaScript
- 要配置SSL证书,不知道买哪种好?5分钟教你成为“买证”大神
- FIN11黑客组织加入勒索软件赚钱计划,FIN11活动分析
- 如何防止U盘中病毒? U盘系统病毒防范与清除方法总结
- 恶意软件即服务是企业面临的一个新问题
- CXO研究报告表示58%的数据备份失败
- 奥巴马、比尔·盖茨Twitter账户被黑,11人“捐款”12万美金
- 针对Linux发起攻击的14个APT组织(下)
- APKPure 中发现嵌入了 Android 恶意软件
- 干货收藏!系统主机信息安全设计及防护策略
热门系统
- 1华硕笔记本&台式机专用系统 GhostWin7 32位正式旗舰版2018年8月(32位)ISO镜像下载
- 2深度技术 Windows 10 x86 企业版 电脑城装机版2018年10月(32位) ISO镜像免费下载
- 3电脑公司 装机专用系统Windows10 x86喜迎国庆 企业版2020年10月(32位) ISO镜像快速下载
- 4雨林木风 Ghost Win7 SP1 装机版 2020年4月(32位) 提供下载
- 5深度技术 Windows 10 x86 企业版 六一节 电脑城装机版 版本1903 2022年6月(32位) ISO镜像免费下载
- 6深度技术 Windows 10 x64 企业版 电脑城装机版2021年1月(64位) 高速下载
- 7新萝卜家园电脑城专用系统 Windows10 x64 企业版2019年10月(64位) ISO镜像免费下载
- 8新萝卜家园 GhostWin7 SP1 最新电脑城极速装机版2018年8月(32位)ISO镜像下载
- 9电脑公司Ghost Win8.1 x32 精选纯净版2022年5月(免激活) ISO镜像高速下载
- 10新萝卜家园Ghost Win8.1 X32 最新纯净版2018年05(自动激活) ISO镜像免费下载
热门文章
- 1迅雷云播“手机看片神器”使用教程(随时随地秒速离线云播放)
- 2Win10怎么设置网络按流量计费 Win10网络设置流量收费教程
- 3微信公众号怎么年审? 微信公众号年审流程及所需材料介绍
- 4二手笔记本电脑价格是多少 二手笔记本电脑价格盘点
- 5高通骁龙8cx怎么样 高通骁龙8cx处理器详细介绍
- 6win7蓝屏代码7f指什 怎么解决 很严重
- 7aoc一体机电脑win10改win7系统及bios设置
- 8安卓手机安装运行win7系统教程 安卓手机装win7系统教程
- 9华硕b460主板装win7系统及bios设置教程 10代CPU安装Win7教程 BIOS设置 U盘启动 完美支持USB驱动
- 10Steam提示“需要在线进行更新,请确认您的网络连接正常”怎么办?
常用系统
- 1雨林木风系统 Ghost XP SP3 装机版 YN2022年4月 ISO镜像高速下载
- 2华硕笔记本&台式机专用系统GhostWin7 旗舰版2018年4月(32位) 提供下载
- 3番茄花园Ghost Win8.1 x64 办公纯净版2021年11月(激活版) ISO镜像高速下载
- 4雨林木风 Windows10 x64 企业装机版2020年7月(64位) ISO镜像高速下载
- 5笔记本&台式机专用系统 Windows10 企业版 2018年4月(64位) ISO镜像快速下载
- 6新萝卜家园电脑城专用系统 Windows10 x64 企业版 版本1903 2021年11月(64位) ISO镜像免费下载
- 7雨林木风Ghost Win8.1 (X64) 极速纯净版2020年11月免激活) ISO镜像高速下载
- 8笔记本&台式机专用系统 Windows10 企业版 2019年12月(64位) 提供下载
- 9新萝卜家园 Ghost Win7 x64 SP1 极速版2022年5月(64位) 高速下载
- 10新萝卜家园Ghost Win8.1 X64位 纯净版2019年4月(自动激活) ISO镜像免费下载