美國網路安全暨基礎設施安全局(CISA)與聯邦調查局(FBI)近日發布最新安全公告,針對消除軟體中的緩衝區溢位漏洞提出具體策略。這份公告是「安全設計指南系列」的一部分,強調使用記憶體安全程式語言和其他安全開發實踐的重要性。
緩衝區溢位漏洞的威脅
緩衝區溢位漏洞源於軟體不當存取記憶體的問題,可能導致資料損壞、系統崩潰和未經授權的程式碼執行。威脅行為者經常利用這些漏洞入侵網路,並將其作為發動更大規模攻擊的入口點。
CISA 與 FBI 向軟體製造商提出多項關鍵建議。
當中包括在新程式碼中採用 Rust 等記憶體安全程式語言,實施編譯器保護措施如執行時檢查和警戒值,執行對抗性測試包括靜態分析和模糊測試,以及發布將舊有程式碼轉換為記憶體安全替代方案的路線圖。
Qualys 威脅研究部門(TRU)的漏洞研究經理 Saeed Abbasi 強調,立即消除不安全開發實踐的迫切性:「2025 年世界對記憶體不安全的程式碼已經零容忍。雖然重寫舊系統是一項艱鉅的任務,但放任攻擊者利用數十年前的緩衝區溢位漏洞所造成的後果更為嚴重。緩衝區溢位並非不可避免,而是優先順序的失誤。」
安全設計原則
該報告特別強調了三項軟體安全開發的核心原則:
- 安全成果的所有權:製造商必須主動消除漏洞,減少對修補程式和更新的依賴。
- 透明度:供應商應明確揭露漏洞,並維護健全的事件回應機制。
- 策略性領導:高階主管必須要求記憶體安全轉型,並優先考慮長期安全投資。
Abbasi 對於組織仍然堅持使用不安全的程式語言提出批評,指出他們「可能將小漏洞轉變為大規模資安事件,且無法宣稱這是意料之外的結果」。他呼籲領導階層要求採用記憶體安全實踐,同時買家也應該要求供應商負起責任。
報告中特別提到 Google、Microsoft 和 Mozilla 成功轉向記憶體安全語言的案例,證明這些改變是可行且具有成本效益的。
CISA 和 FBI 鼓勵製造商和客戶簽署「安全設計承諾」,優先選擇從一開始就納入安全考量的產品。
本文呼籲台灣的軟體開發商和企業應重視此警告,並考慮採用更安全的程式開發實踐,以提升產品的安全性。同時,也建議資訊安全人員密切關注國際間對於記憶體安全的最新發展和建議。
本文轉載自infosecurity-magazine。