微軟方面宣布,該公司已與 LLVM 和 Rust 開發(fā)團(tuán)隊(duì)達(dá)成合作,將對 Windows Control Flow Guard(CFG)平臺安全功能的支持添加到了 Clang 和 Rustc 編譯器中。此前,CFG 僅適用于使用 Microsoft Visual C ++ 編譯的 C/C ++ 代碼。
CFG 是微軟自 Windows 8.1 版本開始添加的一項(xiàng)強(qiáng)大的安全功能,目前已在 Windows 10 中被廣泛使用 。該功能可以保護(hù)應(yīng)用程序代碼的執(zhí)行流,以防止惡意代碼(例如內(nèi)存錯誤的結(jié)果)劫持本機(jī)“控制流”并使應(yīng)用程序執(zhí)行有害的操作。CFG 是對其他漏洞利用緩解措施的補(bǔ)充,例如地址空間布局隨機(jī)化(Address Space Layout Randomization,ASLR)和數(shù)據(jù)執(zhí)行保護(hù)(Data Execution Prevention,DEP)。
目前,CFG 功能已在 LLVM 10.0 和 Rust 1.47(當(dāng)前為 Nightly 版本)兩個版本中可用。
“LLVM 10.0 現(xiàn)在支持 CFG。我們對 CFG 的實(shí)現(xiàn)完全包含在核心庫中,這使得它可以在基于 LLVM 的任何編譯器中重用–前端編譯器只需要設(shè)置正確的 flags 即可?!?/p>
“CFG 在 Rust 1.47(當(dāng)前為 Nightly 版本)中可用。要啟用 CFG,只需添加 -C control-flow-guard flag 即可?!?/p>
值得一提的是,微軟方面透露,將 CFG 支持?jǐn)U展到 LLVM/Clang的主要驅(qū)動器是 Chromium,而 Chromium 代碼庫是使用 Clang 編譯的?!耙虼?,Chromium 團(tuán)隊(duì)正在努力在 Windows 版本中啟用 CFG,這是在 Google Chrome 和 Microsoft Edge 中采用 CFG 的第一步?!?/p>
-
微軟
+關(guān)注
關(guān)注
4文章
6554瀏覽量
103899 -
編譯器
+關(guān)注
關(guān)注
1文章
1617瀏覽量
49017 -
CFG
+關(guān)注
關(guān)注
0文章
10瀏覽量
9793
發(fā)布評論請先 登錄
相關(guān)推薦
評論