IT之傢2月29日消息,美國政府近日發佈瞭一份網絡安全報告,呼籲開發人員停止使用容易出現內存安全漏洞的編程語言,例如C和C++,轉而使用內存安全的編程語言進行開發。這份報告由美國網絡空間總監辦公室(ONCD)發佈,旨在落實美國總統拜登的網絡安全戰略,目標是“保護網絡空間的基石”。
內存安全指的是程序在訪問內存時能夠避免出現錯誤和漏洞,例如緩沖區溢出和懸空指針。Java由於其runtime錯誤檢測功能,被認為是一種內存安全的語言。然而,C和C++允許直接操作內存地址,並且缺乏邊界檢查,容易出現內存安全問題。
報告援引微軟和谷歌的研究數據,指出超過70%的安全漏洞都與內存安全問題有關。報告還引用瞭美國網絡安全和基礎設施安全局(CISA)的開源軟件安全路線圖,建議開發人員從一開始就使用內存安全的編程語言,進行“安全設計”式的開發。
這份報告長達19頁,旨在強調網絡安全不僅僅是個人的責任,更是大型組織、科技公司和政府的共同責任。報告沒有推薦特定的編程語言替代C和C++,而是強調有多種內存安全的編程語言可供選擇。報告還呼籲企業和工程師采用最佳軟件開發實踐,並使用內存安全的硬件,以減少惡意攻擊的可能性。
據悉,美國國傢安全局(NSA)在去年11月發佈的網絡安全信息文件中,列出瞭他們認為安全的編程語言,其中包括:
Rust
Go
C#
Java
Swift
JavaScript
Ruby
但根據TIOBE指數(衡量編程語言流行程度的指標),C#位居排行榜第5位,Java第4位,JavaScript第6位,Go第8位,Swift第16位,Rust第18位,Ruby第20位。可見,NSA推薦的語言中隻有4種屬於開發者最常用的語言。
該報告還強調瞭軟件安全評估的重要性,並認為更好地評估標準能夠幫助科技公司更好地規劃、預測和緩解漏洞風險。報告還以阿波羅13號登月任務為例,強調瞭在太空探索等關鍵領域使用內存安全代碼的重要性。
這份報告是美國政府一系列網絡安全舉措的一部分。2023年3月,拜登總統簽署瞭網絡安全行政命令,旨在加強軟件和硬件安全,並與科技行業建立合作關系。隨著數字化的不斷推進,更安全的編程語言和開發方式變得至關重要,這份報告正是呼籲業界重視這一問題的最新舉措。
發表評論 取消回复