傳統的Webshell不管如何衍變,有着怎樣的隱藏方式,但都脫離不開文件的範疇。既然是文件,就存在被檢測到的可能,所以目前主流產品針對Webshell的靜態檢出率都在90%以上,而OneEDR搭載的基於機器學習訓練成果的Webshell引擎則能實現高達99%以上的檢出率。
目前主流的安全解決方案大多都針對文件檢測,如果木馬不落盤(只在內存運行),(硬盤)沒有文件,雖然有一些開源的檢測方法和工具,但對安全人員的技藝要求較高,很難被更多的用戶使用,導致內存馬的檢出、清除難度都大幅上升,同時內存馬在使用上逐漸趨於「平民化」,多方面的因素讓無文件攻擊逐漸成為網絡攻擊的一大主要方式。為了貼近實戰,各種網絡攻擊演練也與時俱進,內存馬的使用與防禦成為攻守雙方爭奪的焦點,往往成為「獲勝」的關鍵點之一。
據Ponemon Institute 發布的網絡安全報告中顯示,2018年僅有35%屬於無文件攻擊手段。而到2020年,據Dynatrace不完全統計,被發現的勒索病毒攻擊成功的事件中,有超過80%是通過無文件方式完成的。同年新增的大部分新型勒索病毒樣本也大多採用了無文件技術。2021年,在微步在線參與的一系列攻防演練中,無文件攻擊幾乎場場不落,成為攻方首選的攻擊方式。
無文件攻擊的手法複雜多樣,有利用WindowsPowerShell,有針對BIOS和硬盤啟動扇區的,也有通過網絡IO向內存注入Shellcode的……具體可參見下圖對無文件攻擊的分類(來自微軟):
無文件攻擊之追根溯源
儘管無文件惡意軟件多種多樣,但絕大多數以內存Webshell為主,這之中又有80%是Java web內存馬。究其原因,Java是市場上最主流的(中間件)應用之一,而Java web內存馬又具有Webshell易於使用的特點(尤其是與哥斯拉、冰蠍等惡意軟件組合使用)。

內存Webshell的分類,其中Java類無文件攻擊是最主流使用的方式
Webshell在入侵方面有着非常「悠久的歷史」和 「成熟的經驗」(詳見《Shell中的幽靈?OneEDR用機器學習讓Webshell無處遁形》),而Java平台作為最流行的(中間件)應用,在維護和管理方面有着很好的體驗,但也在無形中增加了被攻擊的風險。
如上圖所示,針對Java平台應用的攻擊主要有Servlet-API、基於Spring等特定框架,以及Java Agent等三類,以Java Agent類型為例,主要利用JVMTI(JVM Tool Interface)接口,這是JVM對外提供的Native編程接口,可以通過JVMTI使得一些外部進程獲取JVM運行時的各種信息。
而Java Agent本質上可以理解為一個Jar包,利用JVMTI編寫並加載目標進程中進行數據獲取傳輸等功能:
從JDK 1.6開始,Instrument開始支持在程序運行時動態修改類,讓程序擁有很強的動態性。同時Instrument還提供了類修改接口ClassFileTransformer,通過實現該接口即可動態修改類。
Java版本的不斷升級,Instrument接口給易用性和可維護性帶來了極佳的體驗,但如同Webshell那樣,無形中也給網絡攻擊提供了便利,尤其是與哥斯拉、冰蠍等惡意軟件組合使用,給企業安全帶來了極大的挑戰。
Java平台無文件攻擊的傳統療法
一種是比較溫和地利用中間件熱部署特性將檢測代碼加載到服務的JVM中,用以檢測Tomcat、JBoss、WebLogic等主流的具有熱部署特性的Java Web中間件,比如著名的C0ny1大神開源的java-memshell-scanner工具,就是通過一個jsp腳本來掃描Java Web中間件中Filter,Servlet和Listener組件。
另一種是利用比較通用的Java Instrument接口,動態地利用Agent技術,將檢測的jar包attach到目標JVM中,檢測加載到JVM的類是否異常。其中LandGrey大神主導的copagent項目就用到這種方式,這也是目前較為主流的檢測方式。
但是,這種檢測方式非常依賴安全人員的判斷,在選擇對哪些類進行檢測,將直接影響檢測結果;但如果檢測全部的類,則耗時長且對JVM性能有影響。
這對使用者來說,有較高的技術門檻,很難大規模普及,這也是導致無文件攻擊日益泛濫的原因之一。但有攻必有防,沿着前人探索的無文件攻擊檢測之路,新的方式方法也開始出現,比如微步在線的OneEDR產品,目前已經集成了針對Java平台的內存馬檢測,通過與微步在線領先的威脅情報能力結合,極大地提高了內存馬的檢出率。
OneEDR增加無文件攻擊檢測能力
針對日漸頻繁的無文件攻擊方式,作為一款主機檢測產品,這是OneEDR必須要面對的難題。OneEDR團隊針對過去幾年中大量的無文件攻擊案例進行分析表明,在所有的無文件攻擊中,Java web內存馬是使用最頻繁的,同時,也是利用最成熟的攻擊方式,企業一旦「中招」,幾乎不可避免地會造成經濟損失。

OneEDR圖形控制台,針對內存馬檢測工具使用難的問題,OneEDR開發了更加便於使用的圖形控制台


OneEDR針對檢出的內存馬會提供詳細信息,以方便安全人員進行處置
通過總結前人經驗,並與微步在線強大的威脅情報能力相結合,OneEDR在內存馬檢出方面有着極高的檢出率。
如果您也有防範內存馬的需求
或正面臨內存馬威脅
歡迎聯繫我們
↓↓↓


5月18日今晚19:00
攻防演練· 應急響應專題直播
↑ 戳藍字立即報名↑
