攻擊者希望盡可能保持隐身來減少他們被檢測的機會,這意味着他們隻能對受感染系統進行最少次數的改變,以及在系統留下最少的證據。攻擊者保持不被發現的時間越長,他們就越有可能實作自己的目标。攻擊者早就知道在攻擊過程中删除自己的工具,而惡意軟體作者也開始删除在攻擊中使用的檔案,這被稱為無檔案(fileless)惡意軟體。在無檔案惡意軟體攻擊中,系統變得相對幹淨,沒有很多惡意檔案可被檢測來通知安全管理人員。
在本文中,讓我們一同探讨一下無檔案惡意軟體的工作原理,它如何變得越來越複雜,以及企業應該怎樣做來保護自己免受此類威脅。
無檔案惡意軟體的工作原理
intel
security在其2015年11月mcafee實驗室威脅報告中較長的描述了無檔案惡意軟體。該報告介紹了無檔案惡意軟體如何删除它在受感染系統磁盤中儲存的所有檔案,在系統資料庫中儲存加密資料,注入代碼到正在運作的程序,并使用powershell、windows
management
instrumentation和其他技術使其難以被檢測以及分析。在系統資料庫中儲存資料的方式讓惡意軟體可在啟動時運作,而不會讓普通使用者檢視或通路特定的系統資料庫資料。這讓攻擊者有更多的時間來利用其惡意軟體以及繼續執行其攻擊;惡意軟體可能被自動化工具檢測或送出到惡意軟體庫,但在進行全面分析前,大多數反惡意軟體産品都很難發現和移除這種惡意軟體。他們有合理的原因在系統資料庫中存儲加密或哈希資料,或者使用惡意軟體編寫者使用的其他技術來模糊化其惡意軟體。例如,有些應用可能在需要保護的系統資料庫中存儲加密密碼。
為了在windows計算機執行指令,作業系統首先需要知道執行什麼指令;這可通過打開附件、點選電子郵件中的連結、打開計算機中的檔案或者使用遠端檔案共享來進行。注入代碼到正在運作的程序首先需要這種前期行動。當代碼在記憶體中後,它可以執行以及采取使用者執行代碼的任何行動,如果該使用者有用管理級通路權限,系統可被完全破壞,但如果該賬戶隻是受限賬戶,攻擊者還要采取額外的步驟來完全破壞整個系統。
在mcafee實驗室報告中,研究人員描述了kovter惡意軟體如何利用更先進的無檔案惡意軟體技術。kovter通過電子郵件或惡意軟體網站來分發,在本地計算機執行最初的惡意軟體攻擊後,它會編寫javascript到系統資料庫,調用同樣存儲在該系統資料庫中加密的powershell腳本。由于它并不會儲存檔案,并使用powershell來隐藏,這更加難以被檢測。而較舊的惡意軟體類型在初次分發後不會采取這些先進的做法。
如何抵禦無檔案惡意軟體攻擊?
在抵禦無檔案惡意軟體攻擊的第一步是確定端點保持更新;還要確定使用者隻有标準使用者賬戶,而沒有特權賬戶,并使用端點反惡意軟體工具來保護裝置。這些步驟需要采用縱深防禦的方法來完成,通過掃描網絡連接配接和電子郵件中是否存在惡意軟體。這将幫助減少惡意軟體到達端點并執行的機會。
端點安全工具可監控可執行檔案的行為以及作業系統調用,這些工具也可能檢測未經授權的内部連接配接或對無檔案惡意軟體攻擊需要的系統資料庫的意外通路。為了防止惡意powershell腳本,技術專家兼微軟mvp
don jones介紹了powershell必要的安全保護措施,但最重要的是確定隻能執行數字簽名的腳本。
惡意軟體編寫者正在不斷提高自己的無檔案惡意軟體政策,但企業可使用與抵禦較舊惡意軟體相同的技術和工具來保護端點。盡管攻擊者的改進讓我們很難分析無檔案惡意軟體,但企業使用相同的保護措施可減少惡意軟體初始感染和執行的機會。
作者:nick lewis
來源:51cto