技術分析 | 淺析無檔案攻擊
寫在前面的話
在資訊保安領域中,“無檔案攻擊”屬於一種影響力非常大的安全威脅。攻擊者在利用這種技術實施攻擊時,不會在目標主機的磁碟上寫入任何的惡意檔案,因此而得名“無檔案攻擊”。然而,為了更好地應對“無檔案攻擊”,我們必須深刻理解這種攻擊方式的底層實現技術,這樣才能幫助我們在特定的環境下部署更好的防禦策略。
雖然有的網路系統部署了類似反病毒產品和應用程式白名單之類的安全控制措施,但是無檔案攻擊仍然可以結合多種其他的攻擊策略來入侵你的網路。接下來,我們一起分析一下無檔案攻擊所採用的攻擊方法以及策略,我們會對無檔案攻擊所涉及到的特定技術進行介紹,並解釋為什麼這種攻擊方式在大多數情況下不會被安全防禦系統發現。
技術一:惡意文件
其實一開始,很多安全研究專家所稱之為的“無檔案攻擊”實際上是會涉及到文件檔案的。在這種場景下,攻擊者需要使用到惡意文件(例如電子郵件附件),目的有以下幾種:
1、 文件作為攜帶其他檔案的容器,靈活性更好。比如說,攻擊者可以在Microsoft Office文件中嵌入惡意JavaScript/">JavaScript檔案,喜歡社工技術的攻擊者還可以誘導目標使用者雙擊檔案後執行嵌入的指令碼等等。其他型別的文件還可以攜帶PDF和RTF等型別的檔案,這種功能屬於應用程式的一種特性,所以反病毒技術一般不會干擾其使用。 2、 文件還可以攜帶漏洞利用程式碼或Payload。如今,文件的複雜程度越來越高,因此提供的攻擊面也就越來越廣。在這種場景下,漏洞利用程式碼可以直接在目標裝置的記憶體中執行繫結的Shellcode,並給攻擊者提供檔案系統的完整讀寫許可權。 3、 文件還可以執行惡意攻擊流程並實現初始感染。現代文件提供了強大的指令碼功能支援,比如說Microsoft Office能夠執行VBA巨集檔案,這種功能將允許攻擊者在不需要編譯惡意可執行程式的情況下在目標主機上實現惡意邏輯,而這種技術利用的就是反病毒工具無法區分指令碼程式碼惡意性的缺陷。除此之外,指令碼還可以啟動程式或下載惡意程式碼。
只要攻擊者製作的文件儲存在了目標系統中,攻擊者就已經不需要再通過傳統方式(在目標主機中執行惡意可執行檔案)來進行攻擊了。在很多情況下,惡意文件可以直接在記憶體中執行惡意程式碼,從某種角度來看,這也算是一種“無檔案攻擊”了。
參考資料
【 ofollow,noindex" target="_blank">參考資料一 】【 參考資料二 】
技術二:惡意指令碼
為了不將惡意程式碼編譯成傳統的可執行檔案,攻擊者會在攻擊過程中使用具有“無檔案”性質的“指令碼檔案”。除了文件支援指令碼之外,像上面提到的Microsoft Office產品同樣支援指令碼功能,這就給攻擊者提供了以下幾個優勢:
1、 他們可以在不受某些應用程式限制的情況下與作業系統進行互動。
2、 和惡意可執行程式想必,指令碼可以增強反惡意軟體產品檢測和控制的難度。
3、 指令碼可以更加方便攻擊者將攻擊邏輯分散到多個攻擊步驟中實現,以躲避某些基於行為分析的安全檢測機制。
4、 可以通過程式碼混淆來增加安全分析的難度,並繞過反病毒技術。
MicrosoftWindows提供了針對PowerShell、VBScript、Batch和JavaScript等指令碼的支援,這些指令碼可以直接在powershell.exe、cscript.exe、cmd.exe和mshta.exe中執行。除此之外,攻擊者還可以使用開源框架來對指令碼程式碼進行混淆處理。
參考資料
【 參考資料一 】【 參考資料二 】【 參考資料三 】【 參考資料四 】【 參考資料五 】
技術三:無需任何依賴元件
每次談到無檔案攻擊,或多或少都會涉及到濫用Microsoft Windows實用工具的情況。這些工具允許攻擊者在不需要編譯惡意可執行檔案的情況下實現攻擊步驟的推進。
只要攻擊者的惡意程式碼能夠與目標主機的本地程式互動,他們就可以利用作業系統的內建工具來下載額外的惡意元件,啟動指令碼、竊取資料、實現橫向滲透以及實現持續感染。這些工具包括但不僅限於regsvr32.exe、rundll32.exe、certutil.exe和schtask.exe等等。
值得注意的是,在作業系統的內建工具中,WMI則是重災區,WMI內置於作業系統中,並允許攻擊者通過wmic.exe並配合PowerShell指令碼直接跟終端進行互動。
參考資料
技術四:記憶體中的惡意程式碼
毫無疑問,掃描磁碟檔案肯定是反病毒產品必備的“技能”了,但是檢測記憶體中的惡意程式碼可就不一定了。記憶體是動態變化的,這也給惡意軟體提供了可乘之機。
記憶體滲透技術允許攻擊者繞過大多數反病毒控制策略,包括應用程式白名單。雖然反病毒工具會嘗試捕捉記憶體注入行為,但是攻擊者的持續感染能力仍然會限制反病毒工具的效果。
參考資料
【 參考資料一 】【 參考資料二 】【 參考資料三 】【 參考資料四 】
總結
無檔案攻擊的實現得益於某些應用程式和作業系統所特有的性質,它利用了反惡意軟體工具在檢測和防禦方面的缺陷。雖然在現代網路攻擊活動中,無檔案攻擊只是其中的一種攻擊技術,但很多惡意軟體一般都會引入一些“無檔案攻擊”技術來嘗試躲避安全產品的檢測。對於攻擊者來說,與其去思考某種技術是否無懈可擊,還不如思考怎麼樣使用這些技術才能繞過企業的防禦策略,這樣效率還會更高。
*參考來源: minerva-labs ,FB小編Alpha_h4ck編譯,轉載請註明來自FreeBuf.COM