99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

微軟正在研發(fā)基于Rust新的安全編程語言

獨愛72H ? 來源:InfoQ ? 作者:InfoQ ? 2019-12-06 16:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

(文章來源:InfoQ)

為提高 Windows 10 的安全性,微軟研究人員 Matthew Parkinson 在本周的一次演講中披露:微軟正基于 Rust 開發(fā)新的安全編程語言。這個項目,被微軟稱為“Verona"。Verona 項目主要目的是通過使用 Rust 開發(fā) Windows 底層組件,從而讓 Windows 10 變得更安全。據(jù)微軟透露,它們通過集成 Rust 和 C/C++ 來移除 Windows 中不安全的代碼,這種嘗試達到了目標。

眾所周知,在每個月的第二個禮拜,微軟都會發(fā)布修復 Windows 漏洞的安全補丁。而微軟最近透露,近年來發(fā)現(xiàn)的大部分 bug 都與內(nèi)存安全有關,所以它們想看看是否可以使用 Rust 來解決這些問題。在編程語言中,“內(nèi)存安全”是指保護內(nèi)存空間不受惡意程序利用。微軟的 Verona 項目旨在防止這類攻擊發(fā)生。雖然 Verona 項目最初可能只是一種嘗試,但微軟已經(jīng)取得很大的進展。

Matthew Parkinson 是微軟主攻托管編程語言內(nèi)存管理的研究員。在最近的一次演講中,他分享了微軟在解決內(nèi)存問題方面做了哪些工作。本次演講中,Parkinson 提到了 IE 和 Edge 的 MemGC (Memory Garbage Collector,內(nèi)存垃圾回收器)。

MemGC(Memory Garbage Collector):內(nèi)存垃圾收集器,是 Edge 的內(nèi)存管理機制,由 IE11 的 Memory Protector 改進而來,首次在 EdgeHTML 和 MSHTML 中使用。Edge 使用 MemGC 來管理 DOM 和 DOM 支持的對象,其采用標記清除 (Mark-Sweep) 算法對垃圾進行回收, 能夠阻止部分 UAF 漏洞。MemGC 解決了與標準瀏覽器 DOM 相關的漏洞,給谷歌 Zero 項目的黑客們留下了深刻的印象。

Parkinson 說:“我們?yōu)?DOM 開發(fā)了一個垃圾回收器。在 IE 中,內(nèi)存的‘釋放后使用’(use-after-free)是人們利用 DOM 引擎內(nèi)存管理機制的常見方式。然后,微軟開發(fā)了 MemGC,作為 DOM 的守護垃圾回收器。它幾乎專治這種類型的漏洞,基本上把這類攻擊杜絕掉了?!倍④浺鉀Q的另一類 bug 與未初始化的內(nèi)存有關。

Parkinson 深入探討了一個可能會引起消費者共鳴的問題:“如何才能打造出在未來最安全的產(chǎn)品?我們?nèi)匀灰幚磉z留問題,不能把現(xiàn)有的東西全部都扔掉,但可以在一個更安全的系統(tǒng)中重建一些東西。”Parkinson 說微軟正在使用 Rust 重寫一些組件,他的演講主要集中在語言的設計和隔離能力上?!叭绻覀兿胍綦x能力,把遺留代碼隔離起來,不讓攻擊者的攻擊代碼冒頭,那么應該怎樣設計這門語言?”

于是,Verona 項目誕生。微軟宣稱這門語言面向的是“安全的基礎設施編程”,Verona 項目很“快”會開源。據(jù)悉,這個項目得到了 C#項目經(jīng)理 Mads Torgensen 和微軟劍橋研究院工程師 Juliana Franco 的支持。微軟面臨的挑戰(zhàn)是要覆蓋“應用程序圖譜”,從用于桌面應用程序的 C#,到用于 Exchange、ASP.NET、Azure 和設備驅(qū)動程序的 C 和 C#,再到深度的 Windows 組件,如內(nèi)存管理、啟動加載器和 Windows 內(nèi)核硬件抽象層(HAL)。

要做好內(nèi)存管理很難。如果存在任意的并發(fā)沖突,要保證臨時內(nèi)存安全就非常困難。在 C++ 里,程序員獲取指針,指針是基于對象的,并且基本上是一個對象一個指針。但我認為的數(shù)據(jù)和語法不應該是這樣的,我所認為的數(shù)據(jù)結(jié)構應該是對象的集合,集合有它自己的生命周期”?!矮@得一組對象的所有權,非常接近使用者的抽象層級,這樣就可以在安全區(qū)里構建數(shù)據(jù)結(jié)構?!彼f。
(責任編輯:fqj)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微軟
    +關注

    關注

    4

    文章

    6685

    瀏覽量

    105734
  • 編程語言
    +關注

    關注

    10

    文章

    1956

    瀏覽量

    36632
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    新思科技如何驗證更安全的智能汽車軟件

    汽車軟件正在迅速發(fā)展,其復雜性、安全性要求以及對高效開發(fā)流程的需求與日俱增。在這一背景下,虛擬ECU(vECU)成為加速開發(fā)和驗證的關鍵工具,而將Rust語言集成進AUTOSAR Cl
    的頭像 發(fā)表于 07-10 15:12 ?230次閱讀
    新思科技如何驗證更<b class='flag-5'>安全</b>的智能汽車軟件

    請問OpenVINO? 是否支持 Rust 綁定?

    無法確定OpenVINO?是否支持 Rust 綁定。
    發(fā)表于 06-25 07:45

    數(shù)字電路編程語言介紹

    數(shù)字電路編程語言是專門為描述和模擬數(shù)字電路而設計的編程語言。它們通常具有以下特點: 硬件描述語言(HDL) :大多數(shù)數(shù)字電路
    的頭像 發(fā)表于 01-24 09:39 ?770次閱讀

    gitee 支持的編程語言有哪些

    Gitee(碼云)是一個基于 Git 的代碼托管和研發(fā)協(xié)作平臺,類似于 GitHub 和 GitLab。它支持多種編程語言,允許開發(fā)者托管和管理代碼,進行版本控制,以及協(xié)作開發(fā)。以下是一些
    的頭像 發(fā)表于 01-06 09:50 ?672次閱讀

    Triton編譯器支持的編程語言

    Triton編譯器支持的編程語言主要包括以下幾種: 一、主要編程語言 Python :Triton編譯器通過Python接口提供了對Triton語言
    的頭像 發(fā)表于 12-24 17:33 ?963次閱讀

    編程語言的誤區(qū)與常見問題

    誤區(qū)一:編程語言的選擇 常見問題: 初學者在選擇編程語言時,往往會被市場上的熱門語言所吸引,而忽視了自己的實際需求和興趣。 一些開發(fā)者認為某
    的頭像 發(fā)表于 11-15 09:35 ?749次閱讀

    對比Python與Java編程語言

    Python與Java都是目前非常流行的編程語言,它們各有其獨特的優(yōu)勢和適用場景。以下是對這兩種編程語言的對比: 一、語法和易用性 Python 語法簡潔,代碼更易讀,非常適合初學者。
    的頭像 發(fā)表于 11-15 09:31 ?1079次閱讀

    MCU編程語言和開發(fā)環(huán)境介紹

    微控制器單元(Microcontroller Unit,簡稱MCU)是嵌入式系統(tǒng)的核心,廣泛應用于各種電子產(chǎn)品中。隨著技術的發(fā)展,MCU編程語言和開發(fā)環(huán)境也在不斷進步,以適應不同的應用需求。 1.
    的頭像 發(fā)表于 11-01 11:51 ?2188次閱讀

    C語言與其他編程語言的比較

    C語言作為一種歷史悠久的編程語言,自其誕生以來,一直在軟件開發(fā)領域扮演著重要角色。它以其高效、靈活和可移植性強的特點,成為了系統(tǒng)級編程的首選語言
    的頭像 發(fā)表于 10-29 17:30 ?1076次閱讀

    Orin芯片的編程語言支持

    Orin是一款高度集成、高性能的車載計算平臺,由英偉達推出,并采用了英偉達自家的Volta架構GPU和其他高級處理器技術。關于Orin芯片的編程語言支持,可以從以下幾個方面進行介紹: 一、主要編程
    的頭像 發(fā)表于 10-27 16:45 ?982次閱讀

    plc編程語言編程相關技巧有哪些

    PLC(可編程邏輯控制器)編程語言及相關編程技巧是工業(yè)自動化領域中不可或缺的知識。 一、PLC編程語言
    的頭像 發(fā)表于 10-21 16:56 ?1108次閱讀

    如何用Rust編寫一個ChatGPT桌面應用(保姆級教程)

    用IDEA開發(fā)的java仔) 安裝 Rust 語言工具鏈:首先,請確保你已安裝了 Rust 編程語言工具鏈,包括
    的頭像 發(fā)表于 09-25 11:19 ?659次閱讀
    如何用<b class='flag-5'>Rust</b>編寫一個ChatGPT桌面應用(保姆級教程)

    plc編程st語言怎么編

    PLC(可編程邏輯控制器)編程中的ST(Structured Text)語言是一種高級編程語言,它類似于Pascal或C
    的頭像 發(fā)表于 08-25 10:05 ?2800次閱讀

    未來嵌入式系統(tǒng)的黃金搭檔 MCX N947遇上Rust

    ? Rust 介紹 Rust 是一門注重安全語言,相比于 C/C++/ASM 有著更高級的抽象能力、編譯器帶來的安全特性與廣泛友好的社區(qū)支
    的頭像 發(fā)表于 07-25 09:14 ?1798次閱讀
    未來嵌入式系統(tǒng)的黃金搭檔 MCX N947遇上<b class='flag-5'>Rust</b>

    Vector和HighTec推出基于Rust和AUTOSAR Classic實現(xiàn)安全應用的解決方案

    Vector和HighTec兩家公司成功展示了Rust應用程序與基于C語言的AUTOSAR Classic基礎軟件的集成,這在行業(yè)內(nèi)還屬首次。這樣一來,Rust及其優(yōu)勢可以被應用在有最高功能
    的頭像 發(fā)表于 07-17 14:42 ?1305次閱讀
    Vector和HighTec推出基于<b class='flag-5'>Rust</b>和AUTOSAR Classic實現(xiàn)<b class='flag-5'>安全</b>應用的解決方案