Published 11月 07, 2024 by Kevin

Help net security:開源風險的根本原因

 Help net security發佈了一篇開源風險的根本原因

開源軟體在現代軟體開發中佔有重要的地位,但也帶來了一些安全風險。根據 Sonatype 的報告,2023 年的軟體供應鏈攻擊比 2019-2022 年的總和還要多兩倍,而且有 96% 的漏洞是可以避免的,只要選擇更好、更安全的開源版本。然而,許多開發者並沒有採用最佳的開源消費習慣,導致了不必要的風險。本報告將分析開源風險的根本原因,並提出一些改善建議。

開源風險的現況

開源軟體是軟體開發的基礎,它可以提供高效、高質、高創新的解決方案。然而,開源軟體也不是完美無缺的,它可能存在一些已知或未知的漏洞,如果被惡意利用,就會造成嚴重的後果。根據 Sonatype 的報告,2023 年有以下幾個值得關注的數據:

  • Sonatype 在 2023 年記錄了 245,032 個惡意套件,這些套件可能會在開源倉庫中偽裝成正常的套件,或者在正常的套件中植入惡意代碼。
  • 每八個開源下載中就有一個存在已知且可避免的風險,這些風險可以通過選擇一個更好、更安全的版本來消除。然而,許多開發者並沒有及時更新或升級他們使用的開源套件。
  • 只有 11% 的開源項目是「積極維護」的,這意味著許多開源項目可能缺乏足夠的支持和貢獻者,無法及時修復問題或改進功能。
  • 授權和認證是 API 漏洞的最大影響因素,它們分別導致了 1.35 億和 1.05 億條記錄被洩露。這些漏洞可能會讓攻擊者繞過安全控制,訪問或修改敏感數據。

開源風險的根本原因

根據 Sonatype 的報告,開源風險的根本原因並不是開源維護者的責任,而是開發者的選擇。許多開發者並沒有採用最佳的開源消費習慣,例如:

  • 不使用最新或最安全的開源版本。許多開發者可能會忽略或延遲更新或升級他們使用的開源套件,導致他們暴露在已知或未知的漏洞中。事實上,每次非最佳的組件升級都有大約 10 個更好的版本可供選擇。
  • 不檢查開源項目的健康狀況。許多開發者可能會盲目地信任或使用一些開源項目,而不去了解它們的維護情況、貢獻者數量、活躍度、質量等指標。這可能會導致他們使用一些過時、不穩定、不安全的開源項目。
  • 不遵守開源項目的授權協議。許多開源項目都有一些授權協議,規定了使用者可以或不能做的事情。如果開發者不遵守這些協議,就可能會違反法律或道德,甚至被起訴或罰款。

開源風險的改善建議

為了減少或消除開源風險,我們需要從開發者和開源社區兩個層面來進行改善。以下是一些可能的建議:

  • 開發者應該使用一些工具或平台來幫助他們管理和監測他們使用的開源套件,例如 Sonatype Nexus、Snyk、Dependabot 等。這些工具或平台可以自動檢測和修復開源漏洞,提醒和推薦最新或最安全的開源版本,分析和評估開源項目的健康狀況,以及確保開源授權的合規性。
  • 開發者應該培養良好的開源消費習慣,例如定期更新或升級他們使用的開源套件,避免使用不積極維護或不安全的開源項目,以及遵守開源項目的授權協議。
  • 開發者應該積極參與和貢獻於開源社區,例如回饋問題或建議,提交代碼或文檔,贊助或捐贈等。這樣可以提高開源項目的質量和安全性,並增強開源生態系統的活力和創新力。

開源軟體是軟體開發的重要資產,但也存在一些安全風險。這些風險的根本原因是開發者的選擇,而不是開源維護者的責任。因此,我們需要從開發者和開源社區兩個層面來改善和提升開源安全水平,以保護我們的數據和系統免受攻擊。

詳情請看:

The root cause of open-source risk

      edit