近日,一項(xiàng)旨在強(qiáng)化Rust語(yǔ)言安全性的社區(qū)挑戰(zhàn)賽正式拉開(kāi)帷幕,該活動(dòng)由全球云計(jì)算巨頭亞馬遜AWS與Rust基金會(huì)攜手舉辦。此次挑戰(zhàn)的核心目標(biāo),是對(duì)Rust標(biāo)準(zhǔn)庫(kù)的安全性進(jìn)行深度驗(yàn)證,確保這一以安全性能著稱的編程語(yǔ)言能夠進(jìn)一步鞏固其安全防線。
AWS方面指出,Rust語(yǔ)言雖然因其安全性設(shè)計(jì)而受到廣泛贊譽(yù),但開(kāi)發(fā)者在實(shí)際編程過(guò)程中,有時(shí)會(huì)通過(guò)unsafe聲明來(lái)繞過(guò)安全機(jī)制,以便執(zhí)行一些高性能任務(wù),如操作系統(tǒng)級(jí)功能調(diào)用或低級(jí)內(nèi)存操作。然而,這些被標(biāo)記為unsafe的代碼部分,目前尚未經(jīng)歷全面而深入的安全驗(yàn)證,存在一定的潛在風(fēng)險(xiǎn)。
據(jù)悉,Rust標(biāo)準(zhǔn)庫(kù)當(dāng)前包含了約3.5萬(wàn)個(gè)函數(shù),其中約有7500個(gè)函數(shù)被明確標(biāo)記為unsafe,另有3000個(gè)函數(shù)則是用于封裝unsafe操作的安全抽象層。這些unsafe函數(shù)的存在,雖然為開(kāi)發(fā)者提供了更大的靈活性和性能優(yōu)化空間,但同時(shí)也對(duì)Rust語(yǔ)言的安全性構(gòu)成了挑戰(zhàn)。
為了應(yīng)對(duì)這一挑戰(zhàn),AWS與Rust基金會(huì)共同推出了一系列挑戰(zhàn)賽,旨在通過(guò)社區(qū)的力量來(lái)驗(yàn)證Rust標(biāo)準(zhǔn)庫(kù)的安全性。這些挑戰(zhàn)賽聚焦于內(nèi)存安全驗(yàn)證以及Rust標(biāo)準(zhǔn)庫(kù)中未定義行為的檢測(cè),鼓勵(lì)參與者通過(guò)指定合約、驗(yàn)證庫(kù)組件或開(kāi)發(fā)新的驗(yàn)證工具等方式來(lái)貢獻(xiàn)力量。每完成一項(xiàng)挑戰(zhàn),參賽者都將獲得相應(yīng)的獎(jiǎng)勵(lì),以表彰他們?cè)谔嵘齊ust語(yǔ)言安全性方面所做的努力。
根據(jù)Rust安全追蹤報(bào)告的數(shù)據(jù),過(guò)去三年內(nèi),Rust標(biāo)準(zhǔn)庫(kù)共報(bào)告了57個(gè)健全性問(wèn)題和20個(gè)CVE漏洞編號(hào)。值得注意的是,其中有28%的健全性問(wèn)題是在今年被發(fā)現(xiàn)的。這一數(shù)據(jù)表明,隨著Rust標(biāo)準(zhǔn)庫(kù)的不斷發(fā)展變化,其面臨的健全性問(wèn)題也在不斷增加。因此,此次社區(qū)挑戰(zhàn)賽的發(fā)起,無(wú)疑是對(duì)Rust語(yǔ)言安全性進(jìn)行自查和提升的一次重要契機(jī)。