軟體依賴性:全球大型攻擊背後的無聲殺手
為什麼要加強管理依賴項
近年來,像Node.js中的npm和Java中的Maven這樣的依賴管理器的使用更加方便,允許開發人員在他們的軟體專案中包含許多小的軟體包。現如今,許多軟體專案包括數百甚至數千個第三方庫,所有這些庫都成為主軟體程式的依賴項。
然而,依賴關係所產生的風險往往被忽視。將外部軟體作為依賴項使用意味著依賴其開發人員正確地編寫、測試和維護程式碼。除了這些程式的依賴關係中可能存在的安全漏洞之外,它們還可能過時,降低使用它們的軟體專案的質量,甚至導致故障和停機。使用的依賴項越多,使用者面臨的風險就越高。
軟體依賴性:全球最大攻擊背後的無聲殺手
SolarWinds
針對SolarWinds的網路攻擊可能是第一次全球規模的供應鏈攻擊。Novellium組織獲得了由SolarWinds產品管理的數千個網路,系統和資料的訪問許可權。該攻擊始於 2020 年,但直到 2021 年底才被發現。
在這次攻擊中,駭客將惡意程式碼(稱為SUNBURST惡意軟體)注入SolarWinds Orion系統,該系統是許多大型企業(包括美國政府機構)使用的流行IT管理系統。他們的方法不是直接入侵這些網路,而是針對Orion - 一個安全措施不那麼嚴格的第三方,可以訪問這些大型組織。
駭客滲透了SolarWinds的開發系統,並建立了Orion平臺的惡意構建,建立了一個後門,允許駭客訪問和冒充SolarWinds客戶的使用者和帳戶。該惡意軟體可以訪問系統檔案並滲透到 SolarWinds 客戶的合法活動而不會被防病毒軟體檢測到,因為 SolarWinds 本身就是受信任的軟體產品。
Log4j
Apache Log4j專案是分佈廣泛的開源軟體之一,它為Java應用程式提供了日誌記錄功能。
Log4j漏洞一開始是一個bug,但後來演變成一系列安全問題,其根本原因是Log4j的Java命名和目錄介面(JNDI)介面存在漏洞。
2021年,在多個軟體版本中發現了CVE-2021-44228遠端程式碼執行(RCE)漏洞。RCE缺陷是由於Log4j與JNDI互動時沒有正確驗證所有請求。這意味著獲得日誌訊息訪問權的攻擊者可以注入惡意訊息,允許在易受攻擊的系統上執行任意程式碼。
NIST 國家漏洞資料庫將 CVE-2021-44228 評為 10.0,這是通用漏洞評分系統中可能的最高嚴重性分數。在發現該漏洞後的幾天和幾周內,記錄了數十萬次攻擊。
Kaseya
2021 年,許多託管服務提供商 (MSP) 及其客戶成為 REvil Group 勒索軟體攻擊的受害者,導致1,000多家公司長時間停機。
攻擊的重點是虛擬系統管理器(VSA),這是Kaseya開發的遠端監控和管理軟體包。軟體中的身份驗證繞過漏洞可能允許攻擊者破壞VSA並透過軟體控制的主機分發惡意有效負載。
該公司當時關閉了其VSA雲和SaaS伺服器,並向所有客戶(包括使用VSA本地服務的客戶)釋出了安全建議。
解決軟體依賴性風險的 4 個技巧
1. 理清對映依賴關係
只有在知道依賴項的位置時才能進行最佳化。有許多工具可以幫助進行依賴關係對映,包括專用的應用程式依賴關係管理(ADM)解決方案和自動構建工具。這些工具有助於在整個構建和部署過程中詳細跟蹤軟體依賴關係。
對映依賴關係提供了對漏洞的可見性,並提供有關在程式碼中使用依賴項的位置以及如何以及何時呼叫依賴項的重要見解。另一個影響是對數字取證工作的影響——識別依賴關係對於理解和緩解針對複雜軟體系統的網路攻擊至關重要。
2. 消除不必要的依賴關係
考慮應用程式如何使用第三方庫和元件非常重要。一個應用程式可能只使用廣泛實用程式庫的功能或特性的一小部分。另一個應用程式可能包含許多較小的元件。消除應用程式不主動使用的任何依賴項。對於那些被積極使用的依賴項,考慮如何合併依賴項,並避免將依賴項包含應用程式未使用的附加功能。
3. 使用已建立的儲存庫
一些環境,如Linux,Java,Ruby和Python,已經建立了自由和開源元件儲存庫。如包括用於JavaScript的npm,用於Java的Maven和用於Ruby的gem包管理器。開發人員可以輕鬆地從這些儲存庫下載包,並將其包含在專案構建中。
雖然這種方法可以支援更標準化的開發環境,並減少缺失、過時或不相容依賴項的影響,但它不能絕對保證質量或安全性。即使是已建立的儲存庫也可能包含過時的、易受攻擊的甚至惡意的軟體包。
4. 掃描所有依賴項
自動化工具可以掃描第三方依賴項並識別風險,包括安全性和合規性問題。用於此目的的最常見技術是軟體組合分析(SCA),它提供軟體物料清單(SBOM),其中詳細說明瞭程式碼中包含的直接和傳遞依賴項。SCA透過根據公開可用的漏洞資料庫檢查第三方庫來檢查安全問題。
此外, 靜態應用程式安全測試 (SAST) 可以掃描實際原始碼以查詢已知漏洞或存在風險的缺陷。應該認真對待來自SCA、SAST或類似工具的高優先順序警報,刪除或替換有問題的包。
來源:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000012/viewspace-2937850/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 2021年未修補漏洞利用為勒索軟體攻擊依賴主要切入點
- 依賴——軟體工程師的痛軟體工程工程師
- 軟體包管理-rpm命令管理-包命名與依賴性
- 直播軟體原始碼,pom 依賴遇到 build 下的依賴報錯原始碼UI
- 2021年6月全球勒索軟體攻擊後果(附原資料表)
- 全球最大的保險巨頭AXA遭勒索軟體攻擊
- 軟體複用導致的軟體依賴問題 - research!rsc
- 攻擊性
- 大型攻擊數量創紀錄重複攻擊激增
- 勒索軟體攻擊影響
- 半導體“依賴症”:世界依賴中國、中國依賴世界
- 惡意軟體Emotet 的新攻擊方法
- 西方最大輪胎製造商普利司通遭勒索軟體攻擊,攻擊者自稱無政治立場
- 什麼是無檔案惡意軟體攻擊?如何防禦?
- ubuntu解決軟體安裝依賴錯誤Ubuntu
- FastDFS依賴無法匯入AST
- 微軟發現由俄羅斯背後支援的利用物聯網裝置進行的攻擊微軟
- 軟體的複雜性正在殺死我們
- 四、yum獲取安裝的軟體包及依賴包
- SpringBoot文件之開源軟體依賴的閱讀筆記Spring Boot筆記
- 軟體設計原則—依賴倒轉原則
- ASP.NET Core 中介軟體的使用(二):依賴注入的使用ASP.NET依賴注入
- 勒索500萬美元!越南大型加密平臺遭與Log4j相關的勒索軟體攻擊加密
- 隱秘的攻擊形式:無檔案攻擊型別分析型別
- 攻擊不斷!QNAP 警告利用0day漏洞Deadbolt 勒索軟體攻擊
- [WPF]淺析依賴屬性(DependencyProperty)
- 以色列全國水利遭攻擊後續:一場基礎設施網路攻擊背後是國與國的軍事對壘
- 《白皮書》:身邊的人臉安全事件及背後的三類攻擊手段事件
- 抵禦網路攻擊的背後——成熟創新的技術是關鍵
- Maven依賴管理:控制依賴的傳遞Maven
- Microsoft釋出有關阻止勒索軟體攻擊的指南ROS
- inject 不生效?!依賴注入背後的實現原理和執行邏輯是怎樣的?依賴注入
- 印尼央行確認遭受勒索軟體攻擊
- Mandiant否認遭LockBit勒索軟體攻擊
- 2021全球勒索軟體攻擊榜公佈——工業領域最容易中招
- 勒索軟體屢禁不止 如何降低遭受勒索軟體攻擊的風險?
- WPF 之 依賴屬性與附加屬性(五)
- 開源筆記軟體 Joplin 背後的故事筆記