多款主流編程語言,哪款開發軟件最安全?

喜歡就關注我們吧!

在當下的市場環境中,除了掌握困擾軟件的最常見安全問題外,開發人員還應該瞭解到底是什麼問題在影響他們正在使用的編程語言。靜態代碼分析安全公司 Veracode 最近發佈了一份年度軟件安全狀態(SOSS)報告,其中的第 11 卷則揭示了用 .NET、C++、Java、JavaScript、PHP 或 Python 編寫的應用程序中所存在的主要安全漏洞類型(基於掃描的 13 萬個應用程序)。

Veracode 的高級內容營銷經理 Meghan McBee 稱,“在你坐下來編寫代碼之前,瞭解這些應用程序的安全趨勢意味着你準備好快速修復它們,或者甚至是完全阻止它們。如果你選擇的是 C++、PHP、.Net 或 Java 語言,請注意,它們很容易出現一些風險最高的漏洞。實際上,高達 59% 的 C++ 應用具有嚴重程度非常高的缺陷,PHP 則緊隨其後。”

Veracode 發現,用 JavaScript 編寫的應用中,有 31.5% 的應用至少存在一個跨站腳本(XSS)缺陷;用 PHP 編寫的應用中,有 74.6% 的應用至少存在一個 XSS 缺陷。此外,還有 71% 的 PHP 應用存在加密問題。

用 .NET 編寫的應用程序中存在的主要問題是信息泄露,佔比 62.8%;其他還包括有代碼質量(53.6%)、輸入驗證不足(48.8%)等。C++ 的問題有:錯誤處理(66.5%)、緩衝區管理錯誤(46.8%)、數值錯誤(45.8%)、目錄遍歷等。

Java 的問題包括:CRLF 注入(64.4%)、代碼質量(54.3%)以及信息泄露(51.9%)等。而對於 Python apps,其中發現的主要問題則與加密有關,佔比 35%。

值得注意的是,在每種語言的應用程序中發現的缺陷的嚴重性也有很大的區別。Veracode 發現,有 59% 用 C++ 編寫的應用程序和 52% 用 PHP 編寫的應用程序存在高嚴重性缺陷。用 JavaScript 編寫的應用程序中,只有 9.6% 存在高嚴重性缺陷。Java 的高嚴重性缺陷數據則爲 24%。

針對這些數據,Veracode 首席研究官 Chris Eng 分別作出瞭解讀。他指出,例如,C++ 中常見的緩衝區溢出問題出現了下降的趨勢,這並不是因爲開發者的進步,而是在於 C++ 的流行度的下降。另一方面,受語言流行度上升的影響,影響 JavaScript 和 Python 的問題則正在一點點爬升。

Java 和 .NET 在企業中仍然很受歡迎,PHP 也仍然是 Web 應用開發中最受歡迎的腳本語言之一。Eng 認爲,PHP 代碼中的漏洞較多的原因主要在於,該語言提供了很多不安全的 primitives 和錯誤地處理方法 。

而相較之下,儘管 JavaScript 應用中發現的缺陷較少,但 JavaScript 和 node.js 開源庫的龐大 npm 生態系統仍是其一個潛在的弱點。Eng 建議工程和產品團隊保持更新,以降低打補丁的麻煩程度和關鍵應用的成本。

此外,應用程序安全公司 Snyk 此前則發表觀點稱,影響 JavaScript、Ruby、Java、PHP 和 Python 的大多數安全漏洞是由於項目內部加載的主要組件之間的間接依賴性引起的。

Rust語言2020調查報告發布:Rust 太難,生命週期更難

2020-12-18

Eclipse 4.18 穩定版發佈

2020-12-18

每年投入100萬美元,CloudLinux團隊宣佈將構建穩定版CentOS分支

2020-12-16

覺得不錯,請點個在看呀

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章