自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

向內(nèi)存安全語(yǔ)言遷移的五大挑戰(zhàn)

安全 應(yīng)用安全
近日,白宮國(guó)家網(wǎng)絡(luò)主任辦公室(ONCD)在題為《回歸基礎(chǔ)構(gòu)件:通往安全軟件之路》的報(bào)告中呼吁開(kāi)發(fā)者放棄C、C++語(yǔ)言,轉(zhuǎn)而使用“內(nèi)存安全的編程語(yǔ)言”,例如Rust語(yǔ)言。

近日,白宮國(guó)家網(wǎng)絡(luò)主任辦公室(ONCD)在題為《回歸基礎(chǔ)構(gòu)件:通往安全軟件之路》的報(bào)告中呼吁開(kāi)發(fā)者放棄C、C++語(yǔ)言,轉(zhuǎn)而使用“內(nèi)存安全的編程語(yǔ)言”,例如Rust語(yǔ)言。

傳統(tǒng)編程語(yǔ)言C/C++雖然強(qiáng)大,但一直飽受內(nèi)存安全漏洞的困擾。這些漏洞不僅復(fù)雜難懂,而且極易造成系統(tǒng)崩潰等嚴(yán)重后果。為了解決這一難題,近年來(lái)內(nèi)存安全語(yǔ)言逐漸興起,并有望成為未來(lái)編程語(yǔ)言的主流。

近日,helpnetsecurity采訪了開(kāi)源安全基金會(huì)(OpenSSF)的總經(jīng)理Omkhar Arasaratnam,探討了業(yè)界轉(zhuǎn)向內(nèi)存安全語(yǔ)言的挑戰(zhàn)與策略,內(nèi)容整理如下:

內(nèi)存安全語(yǔ)言的優(yōu)勢(shì)

內(nèi)存安全漏洞已經(jīng)存在了半個(gè)多世紀(jì)。它本質(zhì)上是將程序員從繁瑣的內(nèi)存管理工作中解脫出來(lái)。C/C++要求程序員手動(dòng)分配和釋放內(nèi)存,這不僅復(fù)雜易錯(cuò),還需要時(shí)刻追蹤內(nèi)存的使用情況,以免出現(xiàn)內(nèi)存泄露等問(wèn)題。而Java、Rust、Python和JavaScript等現(xiàn)代語(yǔ)言則通過(guò)自動(dòng)內(nèi)存管理的方式,讓程序員將精力集中在核心邏輯的編寫上,避免陷入低級(jí)內(nèi)存管理的泥潭。

在操作系統(tǒng)內(nèi)核、系統(tǒng)編程等高危場(chǎng)景下,內(nèi)存安全語(yǔ)言的優(yōu)勢(shì)尤為突出。操作系統(tǒng)內(nèi)核擁有整個(gè)系統(tǒng)的最高權(quán)限,任何內(nèi)存安全漏洞都可能導(dǎo)致系統(tǒng)崩潰甚至信息泄露。

盡管熟練的程序員可以使用C/C++等非內(nèi)存安全語(yǔ)言避免內(nèi)存漏洞,但現(xiàn)實(shí)情況并不樂(lè)觀。微軟曾經(jīng)統(tǒng)計(jì)過(guò)自家產(chǎn)品的漏洞,其中70%都與內(nèi)存安全問(wèn)題相關(guān)。谷歌針對(duì)安卓系統(tǒng)進(jìn)行的類似研究也得到了相似的結(jié)論:90%的安卓系統(tǒng)漏洞都與內(nèi)存安全有關(guān)。

Go、Python、Rust和Java等語(yǔ)言都是優(yōu)秀的內(nèi)存安全語(yǔ)言范例。其中,Rust有望成為L(zhǎng)inux內(nèi)核的第二個(gè)官方支持語(yǔ)言。這將允許開(kāi)發(fā)者用完全內(nèi)存安全的語(yǔ)言重寫Linux內(nèi)核的部分關(guān)鍵代碼。

遷移的五大挑戰(zhàn)

向內(nèi)存安全語(yǔ)言遷移并非易事,開(kāi)發(fā)者和企業(yè)需要面對(duì)五大挑戰(zhàn):

  • 開(kāi)發(fā)者培訓(xùn)和認(rèn)證滯后:現(xiàn)有開(kāi)發(fā)人員需要學(xué)習(xí)新語(yǔ)言,或者招聘熟悉內(nèi)存安全語(yǔ)言的人才。同時(shí),調(diào)試和構(gòu)建系統(tǒng)也需要進(jìn)行相應(yīng)調(diào)整以支持新語(yǔ)言,相關(guān)的培訓(xùn)和認(rèn)證服務(wù)相對(duì)滯后。
  • 硬件支持有限:C/C++等老牌語(yǔ)言可在幾乎所有平臺(tái)上運(yùn)行,而Rust等新興語(yǔ)言的硬件支持則相對(duì)有限。
  • 監(jiān)管要求:一些安全關(guān)鍵型系統(tǒng)有著嚴(yán)格的技術(shù)和安全需求,在新語(yǔ)言缺乏相關(guān)認(rèn)證的情況下,可能無(wú)法輕易遷移。
  • 潛在Bug:將老代碼移植到新語(yǔ)言可能會(huì)引入新的Bug。即使是經(jīng)驗(yàn)豐富的程序員,也可能因?yàn)橹貙戇^(guò)程中的細(xì)微差別導(dǎo)致程序運(yùn)行結(jié)果與預(yù)期不符,從而產(chǎn)生線上故障。
  • 部署阻力:關(guān)鍵基礎(chǔ)設(shè)施系統(tǒng)內(nèi)存安全代碼的重新部署面臨挑戰(zhàn)。

遷移策略:安全優(yōu)先

用Rust重寫所有現(xiàn)有代碼顯然并不現(xiàn)實(shí)。OpenSSF建議開(kāi)發(fā)者在開(kāi)啟新項(xiàng)目時(shí)優(yōu)先考慮使用內(nèi)存安全語(yǔ)言,同時(shí)將Rust應(yīng)用于關(guān)鍵代碼路徑,例如身份驗(yàn)證、授權(quán)、加密以及處理網(wǎng)絡(luò)或用戶輸入的部分。

雖然內(nèi)存安全語(yǔ)言并非靈丹妙藥,但卻是提升代碼安全性的重要一步。通過(guò)使用內(nèi)存安全語(yǔ)言,程序員可以將更多精力放在核心邏輯的開(kāi)發(fā)上,避免在低級(jí)內(nèi)存管理上浪費(fèi)時(shí)間和精力。

對(duì)于難以遷移的遺留代碼,OpenSSF提供了《C/C++加固指南》,幫助開(kāi)發(fā)者在不大幅改動(dòng)既有代碼庫(kù)的情況下提升安全性。

需要注意的是,關(guān)鍵基礎(chǔ)設(shè)施的工業(yè)控制系統(tǒng)通常難以通過(guò)企業(yè)網(wǎng)絡(luò)進(jìn)行更新,因此重新部署安全代碼可能比重寫本身更加耗時(shí)。

OpenSSF鼓勵(lì)社區(qū)在開(kāi)始新項(xiàng)目時(shí)考慮使用Rust進(jìn)行編寫,并根據(jù)安全優(yōu)先級(jí)將Rust用于關(guān)鍵代碼路徑(經(jīng)常被濫用或攻擊的部分,或者“皇冠上的寶石”的關(guān)鍵區(qū)域),例如從身份驗(yàn)證、授權(quán)、加密以及從網(wǎng)絡(luò)或用戶獲取輸入內(nèi)容的代碼。

內(nèi)存安全語(yǔ)言的未來(lái)

在某些關(guān)鍵領(lǐng)域,雖然新興語(yǔ)言的安全性優(yōu)勢(shì)非常誘人,但貿(mào)然遷移反而會(huì)帶來(lái)風(fēng)險(xiǎn)。預(yù)計(jì)內(nèi)存安全語(yǔ)言并不會(huì)在所有行業(yè)成為標(biāo)準(zhǔn),一些對(duì)穩(wěn)定性要求極高的領(lǐng)域出于謹(jǐn)慎考慮,可能會(huì)推遲采用內(nèi)存安全語(yǔ)言。

不過(guò),從長(zhǎng)遠(yuǎn)來(lái)看,使用內(nèi)存安全語(yǔ)言來(lái)開(kāi)發(fā)新項(xiàng)目具有普遍意義。例如,Alpha-Omega公司資助了用Rust開(kāi)發(fā)的Rustls項(xiàng)目,旨在實(shí)現(xiàn)更安全的TLS和QUIC協(xié)議。通過(guò)使用內(nèi)存安全語(yǔ)言,業(yè)界可以避免類似于OpenSSL Heartbleed漏洞那樣的安全事件。

教育和認(rèn)證是關(guān)鍵

教育和培訓(xùn)是網(wǎng)絡(luò)安全最強(qiáng)大的基礎(chǔ)防線之一。如今許多小學(xué)已經(jīng)開(kāi)始將Python作為編程語(yǔ)言入門課程。OpenSSF希望未來(lái)能夠盡早將Rust等其他內(nèi)存安全語(yǔ)言引入基礎(chǔ)教育。

此外,Rust基金會(huì)也提供了豐富的學(xué)習(xí)資源,例如備受好評(píng)的書籍《Rust編程語(yǔ)言》以及正在開(kāi)發(fā)的培訓(xùn)和認(rèn)證項(xiàng)目。通過(guò)積極的學(xué)習(xí)和社區(qū)協(xié)作,內(nèi)存安全語(yǔ)言有望在未來(lái)發(fā)揮更大的作用。

責(zé)任編輯:華軒 來(lái)源: GoUpSec
相關(guān)推薦

2022-06-14 08:46:25

安全網(wǎng)絡(luò)漏洞

2024-04-30 07:02:00

OT網(wǎng)絡(luò)安全DDoS攻擊OT系統(tǒng)

2013-05-07 09:24:53

BYOD

2022-02-09 11:25:58

混合云云計(jì)算云安全

2022-08-08 10:20:19

數(shù)據(jù)安全首席信息安全官

2022-02-18 14:27:17

區(qū)塊鏈安全技術(shù)

2021-04-19 08:00:00

網(wǎng)絡(luò)安全數(shù)字化轉(zhuǎn)型遠(yuǎn)程工作

2013-01-05 10:10:38

2021-10-28 18:14:28

應(yīng)用安全安全管理網(wǎng)絡(luò)安全

2022-03-15 14:55:34

Kubernetes

2021-12-20 14:45:15

網(wǎng)絡(luò)安全安全CISO

2024-08-01 08:00:00

人工智能安全

2023-03-30 14:14:45

Kubernetes

2010-03-23 09:31:13

云計(jì)算

2018-05-09 07:48:30

2024-03-18 15:46:40

2020-10-13 07:00:00

機(jī)器學(xué)習(xí)人工智能

2021-05-20 14:17:05

云計(jì)算混合云架構(gòu)

2012-08-22 09:46:03

私有云網(wǎng)絡(luò)私有云云網(wǎng)絡(luò)

2012-08-20 08:58:00

云網(wǎng)絡(luò)私有云
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)