自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

深入解說回避檢測的惡意軟件的機制

譯文
安全
多數(shù)惡意軟件的開發(fā)者,為編寫復(fù)雜的代碼花費了很多的時間與精力。他們的成功,作為威脅長期未被檢測出,能夠規(guī)避于沙盒的解析、反病毒對策、以及惡意軟件的解析人員。該文章主要介紹了回避檢測的惡意軟件的機制。

【51CTO.com快譯】多數(shù)惡意軟件的開發(fā)者,為編寫復(fù)雜的代碼花費了很多的時間與精力。他們的成功,作為威脅長期未被檢測出,能夠規(guī)避于沙盒的解析、反病毒對策、以及惡意軟件的解析人員。該文章主要介紹了回避檢測的惡意軟件的機制。

惡意軟件若容易被檢測到的話,便沒有了使數(shù)據(jù)盜取影響最大化的時間。IT安全市場逐漸成熟,現(xiàn)在的安全對策工具和應(yīng)用程序的性能都非常高。但是,攻擊者了解安全工具的運作并持續(xù)監(jiān)視。另外,企業(yè)和組織也不一定做到最佳的安全級別。惡意軟件對策工具沒有及時更新的情況有很多,也存在因沙盒設(shè)置錯誤造成易被檢測的情況。

惡意軟件自身的防御功能

惡意軟件為了回避檢測和解析利用了多種機制。機制的技術(shù)大致分為以下三大類別。

  • 防病毒工具:為了回避病毒對策、防火墻、保護環(huán)境的其他工具的檢測而被使用。
  • 防病毒沙盒:進行自動解析功能的檢測,為回避惡意軟件的動向報告引擎而被使用。
  • 反病毒分析:檢測惡意軟件的解析者,為詐騙而被使用。例如,為了回避反向工程,在檢測Process Explore、Wireshark等監(jiān)視工具的同時,利用一些過程監(jiān)視的手法、Packer等。

這三類都共同的惡意軟件技術(shù)也有幾個。使用RunPE等的技術(shù)的話,惡意軟件可以回避病毒對策軟件、沙盒、以及解析者。

沙盒的回避

沙盒是迅速檢測惡意軟件的有效工具,但是不適當(dāng)?shù)貥?gòu)成的話,反而會被惡意軟件簡單地檢測出來。惡意軟件通常需要實施以下幾點基本的檢查。

MAC地址的檢測:VMware、VirtualBox等虛擬環(huán)境中已知的MAC地址被使用。該地址是經(jīng)常保存至注冊表的以下地方

(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0000\NetworkAddress)。惡意軟件可要求registry key 或使用GetAdapterInfo API兩者任選其一的方法檢測MAC地址。

過程檢測:惡意軟件可檢測與沙盒相關(guān)聯(lián)的動作過程的存在。例如,VmwareService.exe等過程的情況下,使用Create ToolHelp32Snapshot API 抓拍動作過程,使API函數(shù)的Process32 First和Process32 Net抓拍的各過程做成一覽表,便于檢測。

注冊表的檢測:惡意軟件可檢測的系統(tǒng)注冊表項是在虛擬環(huán)境下制作的。以下的注冊表雖然內(nèi)容并不完整,但是是惡意軟件可能檢測的注冊表項一覽。

另外,惡意軟件存在使用以下幾個高技術(shù)檢測沙盒的情況。

鉤子(Hook)函數(shù)的檢測:鉤子函數(shù)是改變OS和應(yīng)用程序內(nèi)部函數(shù)行為的基本技術(shù)。沙盒是使用鉤子技術(shù)進行樣品舉動的變更。例如、在DeleteFile函數(shù)中設(shè)置鉤子,惡意軟件會試圖刪除被沙盒捕捉的文件。這類函數(shù)被放置于內(nèi)存上(內(nèi)核空間)的特定地方。

惡意軟件也存在通過檢查調(diào)用函數(shù)的地址來檢測鉤子的情況。例如,被返還的地址不存在內(nèi)核中,表明現(xiàn)在該函數(shù)被掛鉤。

惡意軟件使用硬件的尺寸檢查和特殊命令等其他手法,可檢測特定的登記。事實上,這些技巧在機器上的注冊是一致化的,在虛擬環(huán)境中需要重新配置。

病毒對策的回避

病毒對策工具的基本功能是署名、掃描、探索。

·署名可回避樣品哈希值的變更。這是非常簡單的,只需要變更執(zhí)行文件的1個字節(jié)便可實現(xiàn)。

·掃描是制作一個大的文件,通過仿真器造成混亂來回避。

·探索分析是較復(fù)雜的,但可通過使背后的函數(shù)掛鉤來回避。

惡意軟件為了回避病毒對策工具的其他方法是工具的無效化或者追加例外情況。多態(tài)病毒代碼的檢測是特別困難的。

Anti-debug

解析代碼時,惡意軟件解析人員往往需要深入調(diào)查。Anti-debug是回避調(diào)試程序逆向工程的其他技法。使用Windows API的話,比較容易檢測調(diào)試程序的存在。

IsDebuggerPresent函數(shù):這個函數(shù)是檢測PEG(Process Environment Block)結(jié)構(gòu)中的特定狀態(tài)IsDebugged,調(diào)試過程沒有被執(zhí)行的情況下,回復(fù)0;調(diào)試程序未被連接時,回復(fù)0之外的。

FindWindow函數(shù):該函數(shù)能夠從名字和Class來檢索窗口(例如:OllyDbg),也能夠檢測Wireshark和Process Explorer等工具。

CsrGetProcessId函數(shù):這個函數(shù)能夠檢索系統(tǒng)進程中csrss.exe過程的ID。默認過程的訪問令牌SeDebugPrivilege權(quán)限是無效的。但是,OllyDbg和WinDbg等調(diào)式程序被加載的話,SeDebugPrivilege權(quán)限會被有效化。csrss.exe被打開即意味著過程的訪問令牌權(quán)限為SeDebugPrivilege,對象過程被推測為調(diào)試程序。

 Anti-disassembly

Anti-disassembly是回避逆向工程解析的不同手法。有多種Anti-disassembly的妨礙方法,具體如下:

  • API難讀化時,能隱藏特定函數(shù)的調(diào)用。例如,不使用API函數(shù)名稱調(diào)用函數(shù),解析人員為了把握被利用的函數(shù)有必要進行逆向工程。這個操作很費時間。
  • 插入JAN代碼:惡意軟件中插入JAN代碼來欺騙解析人員,不使用的代碼可以使逆向工程更加耗時。由于JAN代碼完全不會被執(zhí)行,Sample完全不會有變化。

關(guān)于Unprotect Project

回避惡意軟件解析的方法有很多,這些技巧中被公開的有幾項。Unprotect project是結(jié)合惡意軟件的保護與自己防御一覽化公開的Wiki。這個項目為促進對惡意軟件保護功能的理解,在技術(shù)一覽表中加載了思維導(dǎo)航。

這個項目的目標(biāo)是為了在社區(qū)中使病毒檢測功能停滯、迂回安全保護政策,回避解析的惡意軟件所使用的技術(shù)被深入理解,這個網(wǎng)站有如下的內(nèi)容。

  • 沙盒的回避技巧:回避沙盒解析
  • 病毒對策的回避技巧:回避病毒對策的檢測
  • 反調(diào)試的技巧:欺詐調(diào)試程序、回避解析
  • 反反匯編:回避使用反匯編工具的逆向工程,以及理解惡意軟件的舉動
  • 過程的圈套:系統(tǒng)上隱藏惡意軟件,回避檢測。難讀化與數(shù)據(jù)編碼:隱藏一部分惡意軟件中的數(shù)據(jù)或代碼。

·壓縮軟件:保護惡意軟件的代碼以及追加其他回避功能。

Wiki將持續(xù)更新。

總結(jié)

惡意軟件的回避檢測技術(shù)持續(xù)進化著,理解這些技術(shù),并在信息安全社區(qū)共享經(jīng)驗是戰(zhàn)勝惡意軟件最有效的方法。

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:武曉燕 來源: 51CTO
相關(guān)推薦

2017-05-03 15:00:20

網(wǎng)絡(luò)安全技術(shù)周刊

2014-03-13 09:28:34

2022-10-27 13:38:25

2013-10-29 15:17:41

2021-11-18 14:01:25

網(wǎng)絡(luò)安全數(shù)據(jù)技術(shù)

2022-10-20 12:07:20

2013-10-22 10:27:59

2022-04-08 10:09:41

Linux技術(shù)

2013-12-19 09:23:15

2013-04-19 09:16:56

2023-06-25 18:00:00

人工智能ChatGPT網(wǎng)絡(luò)安全

2017-12-14 21:17:24

2017-04-14 08:33:47

2023-08-07 07:44:44

2015-04-22 15:24:31

2011-05-16 09:30:59

2023-05-30 12:03:52

2012-11-19 13:25:21

2019-03-26 09:11:32

無文件惡意軟件

2020-08-25 07:29:48

點贊
收藏

51CTO技術(shù)棧公眾號