影響軟體供應鏈安全的10大風險因素

zktq2021發表於2023-02-15

軟體的安全性取決於系統中生產和交付工作程式碼的最薄弱環節。當前,軟體生態系統日益複雜。

什麼是軟體供應鏈安全?

軟體供應鏈安全是指管理開發和執行現代軟體應用程式所需的流程、元件和工具中產生的安全風險。網路攻擊者可以透過供應鏈獲取關鍵資訊,也可以在供應鏈內進行惡意活動。

如今,開發者將他們的應用程式構建為微服務的集合,通常使用開源元件來提供所需的功能,並加快軟體釋出速度。然後,這些應用程式被部署在虛擬化的基礎設施上,比如託管在雲中的容器。

軟體供應鏈漏洞的後果

軟體供應鏈漏洞有可能影響成千上萬的組織,這些組織依賴於在其軟體生態系統中發揮作用的易受攻擊元件。這些風險包括加密敏感資料的大規模勒索軟體攻擊等。

當供應鏈漏洞僅影響單個組織時,惡意軟體、後門或其他惡意程式碼會進入軟體環境。糟糕的情況下,關鍵系統下線,客戶損失資金,敏感資料丟失導致監管處罰等。

10大常見軟體供應鏈安全風險因素

1. 程式碼中的漏洞

重要的是不要忘記,供應鏈的定義包括開發人員為構建應用程式而編寫的程式碼。程式碼作為軟體供應鏈中最基礎的部分,在開發軟體期間可以透過靜態測試查詢程式碼中的缺陷及安全漏洞,從源頭提高應用軟體的安全性。

2. 第三方依賴

第三方供應商、合作伙伴和服務提供商都在現代軟體生態系統中發揮著重要作用。無論是透過在雲例項上執行應用程式,購買商業庫/框架,還是使用服務來簡化軟體可用性,這些依賴關係都會使企業程式碼面臨可能的風險源。

第三方風險管理規則對於全面瞭解依賴項(包括特定第三方對程式碼的訪問許可權)至關重要。

3. 應用市場

除了程式碼儲存庫之外,各種面向公眾的應用市場還可以輕鬆下載新版本的應用程式和服務。駭客可能會破壞這些系統並安裝後門,從而進入軟體環境。

4. 公共儲存庫

據估計,自由和開原始碼佔現代軟體的70-90%。公共儲存庫將各種開源專案的程式碼提供給網際網路上的每個人,但它們也帶來了重大的軟體供應鏈風險。

5. 構建系統

現代軟體開發工作流程使用持續整合和持續交付來實現自動化並提高效率。CI/CD管道的核心是程式碼儲存庫、容器和構建伺服器,這些都有可能遭到入侵。常見的構建工具包括Buddy,Jenkins和Bitbucket。

6. 劫持更新

近年來,被劫持的更新在有關網路安全的新聞報導中屢見不鮮。當程式碼及其基礎結構依賴於有時需要更新的其他工具時,這些被劫持的更新會帶來軟體供應鏈風險。這裡的重點不是避免應用軟體更新;更重要的是認識到這種風險,並對那些工具和應用程式在軟體供應鏈中發揮作用的供應商進行盡職調查。

7. 破壞程式碼簽名

只使用簽名程式碼是一種不錯的安全實踐,因為它使用數字簽名來確認程式碼的真實性。但程式碼簽名的有效性取決於它的實現。程式碼簽名可能會被竊取的數字證書私鑰或使用過期/撤銷的證書所破壞。雖然可以採取緩解措施(保護硬體安全模組中的私鑰,驗證證書),但要注意易受攻擊的程式碼即使經過簽名也仍然是易受攻擊的。

8. 獲取整個供應鏈中的資源

對整個供應鏈資源的過度訪問通常會使軟體安全事件更加嚴重。開發人員工具、儲存庫、雲系統和軟體開發中涉及的其他工具都應該嚴格控制其訪問許可權。理想情況下,在整個供應鏈中實現最小許可權原則,以確保每個元件和人員僅擁有軟體正常執行所需的必要訪問許可權。

9. 連線的裝置

終端膝上型電腦和工作站等連線裝置也涉及軟體供應鏈。安全加固是加強連線裝置和程式碼抵禦常見危害的復原能力的關鍵方法。有效的防禦措施包括加密、資料丟失保護、高階端點檢測和響應以及標準的防病毒掃描程式。

10. 供應商和業務合作伙伴

供應商和業務合作伙伴是軟體供應鏈風險的來源,因為他們會提供企業所使用或協作的應用程式服務。為了降低這些風險,從原始碼開始,檢測依賴關係的安全性,同時不要進行第三方風險評估和驗證。

為了防止出現代價高昂的安全事件,軟體供應鏈安全需要一種全面的方法來解決鏈中所有可能的薄弱環節,從開發人員編寫的程式碼到企業所使用的工具以及合作的第三方軟體供應商,都應該謹慎審查其安全性,並做好應急預案,同時開發人員不能忽視他們在加強軟體安全性方面的作用。


文章來源:

https://spectralops.io/blog/top-10-most-common-software-supply-chain-risk-factors/


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2935464/,如需轉載,請註明出處,否則將追究法律責任。

相關文章