侵權(quán)投訴
訂閱
糾錯(cuò)
加入自媒體

熱門編程語言中 哪種語言的安全性更高?

編程語言之爭,一直以來是開發(fā)者社區(qū)的熱議問題,因?yàn)殚_發(fā)者喜歡證明自己所使用的編程語言占據(jù)主導(dǎo)地位,尤其是安全性,只不過討論的過程往往都伴隨著雙方的憤怒,最后不了了之。那么,你可知在眾多熱門編程語言中,哪個(gè)安全性更高?

為此,近日開源安全公司W(wǎng)hiteSource針對(duì)七種熱門編程語言的安全性做了一份報(bào)告,匯總了多個(gè)來源的開源漏洞信息,其中包括國家漏洞數(shù)據(jù)庫(NVD)、安全公告、GitHub問題追蹤器(Issue Tracker)和流行開源項(xiàng)目問題追蹤器。

WhiteSource根據(jù)開源社區(qū)過去幾年間使用的流行語言,確認(rèn)出C,Java,JavaScript,Python,Ruby,PHP 和 C ++這七種比較熱門的編程語言,并在這些語言的基礎(chǔ)上,搜索數(shù)據(jù)庫查看了過去十年中每種語言中已知開源安全漏洞的數(shù)量、隨時(shí)間推移這些安全漏洞發(fā)生的變化、以及各語言最常見的 CWE(通用缺陷列表)。

正如上圖所示,很明顯居首位的是C語言,占到了近一半的比例。不過,這并不能說明C語言的安全性遠(yuǎn)低于其他熱門語言,如此高的占比主要有以下幾個(gè)原因可以解釋:一是,C語言的使用時(shí)間在調(diào)查語言中是最長的;二是,C語言一般編寫的代碼量很大;三是,Open SSL和Linux內(nèi)核等基礎(chǔ)架構(gòu)背后的主要語言之一就是C語言。這些存在時(shí)間、體積和中心性等因素的組合,可以解釋C語言為什么存在這么多大量已知開源安全漏洞。

此外,報(bào)告還顯示了隨時(shí)間的推移不同編程語言的開源安全漏洞數(shù)量變化。過去十年間,這些編程語言有著各自的高點(diǎn)和低點(diǎn)。但所有語言都有一個(gè)明顯的趨勢(shì),即近兩年所有語言的已知安全漏洞數(shù)量都在大幅增加,這可以看作是安全漏洞意識(shí)的提高及開源的更加普及。隨著開源安全研究投入資源的增加,人們發(fā)現(xiàn)的安全問題數(shù)量也會(huì)變多。

那么,這些漏洞究竟嚴(yán)重到何種程度呢?調(diào)查人員研究發(fā)現(xiàn)高嚴(yán)重性的開源安全漏洞(CVSS v2得分高于7)時(shí),發(fā)現(xiàn)除了JavaScript和PHP,報(bào)告中涉及的大多數(shù)語言嚴(yán)重漏洞的占比處于下降趨勢(shì)。此外,調(diào)查人員還研究了每種語言常見的CWE。

其中,跨站腳本攻擊(XSS,也稱之為CWE-79)和輸入驗(yàn)證(也稱為CWE-20)占據(jù)了最常見的位置;另外比較突出的CWE有信息泄漏(CWE-200)、路徑遍歷(CWE-22)、權(quán)限及訪問控制(CWE-264)、不正當(dāng)訪問控制(CWE-284)等。

其實(shí),像“我的編程語言比你更安全”類似的話,現(xiàn)在看來更像是程序員間的打趣。如今,大多數(shù)軟件開發(fā)都依賴多種編程語言來實(shí)現(xiàn),而不是執(zhí)著于某一編程語言。掌握已知的開源漏洞、了解團(tuán)隊(duì)正在使用的編程語言中的優(yōu)點(diǎn)和缺點(diǎn),這些都是確保軟件項(xiàng)目從一開始就具有安全性的好方法。

聲明: 本文由入駐維科號(hào)的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長度6~500個(gè)字

您提交的評(píng)論過于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無評(píng)論

暫無評(píng)論

安防 獵頭職位 更多
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)