Sophos日前發表一種新的防禦方式,可以防範惡意分子試圖載入無檔案型惡意軟體、勒索軟體和遠端存取代理程式到已遭感染電腦的臨時記憶體。
已遭入侵電腦的記憶體區域是惡意軟體普遍的藏身之處,因為安全掃描不會檢查記憶體。因此,我們很難偵測和阻止這種類型的惡意軟體。惡意分子試圖安裝到記憶體中的惡意軟體類型包括勒索軟體和遠端存取代理程式。遠端存取代理程式是其餘攻擊的跳板,因此越早發現和阻止它們越好。
Sophos 研究人員已經建立一種根據行為來防禦記憶體中此類惡意軟體的方法。他們發現,無論類型或用途為何,攻擊程式碼在記憶體中的行為都是相同的。
- 與安裝在主記憶體中的一般軟體應用程式不同,攻擊程式碼會被插入到記憶體的某一部分,稱為「堆積」(heap)。堆積可為應用程式提供額外的記憶體空間,以進行儲存或解壓縮程式碼等操作。
- 惡意分子會以數個階段新增攻擊程式碼。首先,他們將一個稱為「載入程式」的小檔案插入到堆積記憶體中。然後,載入程序會要求額外的堆積記憶體空間來滿足主要裝載的需求。主要裝載可能是像 Cobalt Strike 這樣的遠端存取代理程式。接著,它要求為這些額外記憶體配置「執行」權限,以便執行惡意軟體。
Sophos 研究人員設計了一種實用的保護措施,可以阻止執行權限從一個堆積記憶體轉到另一個堆積記憶體。這項保護稱為「動態 Shellcode 保護」。
Sophos 工程總監 Mark Loman 表示:「防止攻擊者入侵已經遭駭的網路是全球安全從業人員的目標。這個目標非常重要,因為一旦被安裝遠端存取代理程式,它就可以成為跳板,協助攻擊中絕大多數的主動攻擊策略。包括執行、使用憑證、升級權限、探索網路、橫向移動、收集、滲透和發布勒索軟體。
「這些惡意使用的程式碼會經過大幅模糊和封裝,然後直接載入到記憶體中,以躲避偵測。安全工具不會定期掃描電腦記憶體,因此即使對程式碼解模糊、解壓縮和解封裝,也經常無法偵測出來。Sophos 發現它們有一個特徵:『堆積-堆積』記憶體配置,在多階段遠端存取代理程式和其他載入記憶體的攻擊程式碼中很常看到這個特徵,Sophos 並且已經對此提供保護措施。」
動態 Shellcode 保護已整合到 Sophos Intercept X 中。它已經發揮效用,發現 Conti 勒索軟體攻擊 中有 Cobalt Strike 惡意軟體存在。
防禦勒索軟體的一般建議
- 關閉服務網際網路的遠端桌面通訊協定 (RDP),以防止網路犯罪分子使用網路
- 如果您需要使用 RDP,請將其置於 VPN 連線之後
- 使用多層式安全產品來預防、防護和偵測網路攻擊,包括端點偵測和回應 (EDR) 功能以及會全天候監控網路託管型回應團隊
- 留意攻擊者存在的五個早期指標,以防止勒索軟體攻擊
- 制定有效的事件回應計畫,並根據需要進行更新。如果您不確定自己是否有足夠的技能或資源來監控威脅或回應緊急事件,請考慮尋求外部專家的協助