人們之前也遭遇過供應鏈攻擊,2021年是供應鏈攻擊快速增長的一年。與Spring4Shell和Log4j攻擊一樣,使用開源解決方案增加了風險。它們幾乎存在于所有的軟件開發中,并且經常快速開發,從而在安全性方面留下空白。這意味著,如果開源組件中存在任何漏洞,其影響將是巨大的。
在Log4Shell和Spring4Shell網絡攻擊事件之后,企業必須吸取三個關鍵教訓,以便在使用開源軟件時保持安全:
1.發現風險
為了安全地開發、管理和維護軟件供應鏈,企業必須了解所有環節。
為了確保安全,企業需要一個清晰的清單并真正了解所有正在使用的開源組件。不能盲目相信開源軟件組件的出處和安全性。如果像Log4Shell、Spring4Shell和SolarWinds這樣的事件教會了人們什么的話,那就是需要更多地了解企業內使用的所有不同軟件。
這包括它們的開發方式和位置,以及它們在企業中的使用位置,以便在發現漏洞時可以迅速解決問題以限制損害。
2.不要過于復雜
第二個問題是需要企業自己防護。在開發框架或庫時,做好這一點很重要。采取更簡單的方法也很重要,這樣就不會在不知不覺中引入漏洞。
專注于做好幾件事比糟糕地引入很多特性要好。功能越多,出現嚴重漏洞的可能性就越大。因此,在查看想為產品和服務添加哪些新功能時,仔細考慮是否需要它們,并且只使用一些必不可少的功能。
盡管需要快速發展,但企業需要確保他們花費時間真正考慮他們需要哪些功能以及為什么需要,因為任何超出要求的功能都可能為漏洞敞開大門。
3.外部化處理
第三,企業在設計和開發不同的應用程序時需要意識到橫切關注點。無論是用于日志記錄、指標、加密通信還是緩存,重要的是要考慮這些持續存在的問題是否需要在應用程序中處理,或者是否可以將它們在應用程序之外處理。
例如使用日志記錄,許多框架可以將日志發送到各種位置,包括稱為標準輸出的輸出文件和由企業的應用程序負責的警報服務。可以采取更好、更安全的方法。與其相反,需要考慮讓其應用程序將日志發送到標準輸出,然后利用日志收集器服務將日志發送到所有需要的終端位置。通過將這些問題進行外部化處理,開發人員需要擔心的代碼和配置就更少了,因此可以減少可能出現的漏洞。
采取積極措施
Log4Shell和Spring4Shell漏洞只是強調了企業需要采取積極措施來保護他們的環境。然而,隨著創新的加速,這只會變得更加困難,為企業創造越來越多的機器身份以供關注。
試圖監控和管理所有這些機器身份,同時保留所有軟件組件的庫存并確保開發保持簡單并非易事。現在的企業可能缺乏技能和資源。他們應該利用自動化和安全工具來確保減少漏洞數量,這樣就不會像遭遇Log4j網絡攻擊那樣受到廣泛的影響。
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。