惡意軟件是指由網(wǎng)絡(luò)犯罪分子設(shè)計的惡意程序,可通過創(chuàng)建后門入口來獲得對計算設(shè)備的訪問權(quán),從而竊取個人信息、機密數(shù)據(jù),實施對計算機系統(tǒng)的破壞。為了更好地防護惡意軟件,避免由惡意軟件造成的危害,必須對惡意軟件進行分析,以了解惡意軟件的類型、性質(zhì)和攻擊方法。
惡意軟件分析工作主要包括在隔離環(huán)境下分析木馬、病毒、rootkit、勒索軟件或間諜軟件等惡意軟件家族的樣本,運用各種方法,根據(jù)其行為了解攻擊者動機、目的及惡意軟件類型和功能等,并創(chuàng)建規(guī)則來實施相應(yīng)的緩解措施。當(dāng)我們分析受感染的機器或文件時,我們的目標(biāo)主要包括:
識別受感染的文件,檢測計算機設(shè)備和網(wǎng)絡(luò)系統(tǒng)中可能存在的惡意軟件;
了解可疑惡意軟件的功能;
全面評估和管理惡意軟件可能造成的損害;
對惡意軟件進行指標(biāo)分析,為后續(xù)檢測和防護產(chǎn)品研發(fā)創(chuàng)建正確的規(guī)則措施。
有效的惡意軟件分析可以幫助安全團隊快速檢測并防止攻擊者實施破壞活動。本文將重點介紹目前常見的惡意軟件分析方法及相關(guān)工具。
靜態(tài)惡意軟件分析
靜態(tài)惡意軟件分析包括提取和檢查不同二進制組件和可執(zhí)行文件的靜態(tài)行為,比如API 標(biāo)頭、引用的DLL、便攜式可執(zhí)行(PE)區(qū)域以及更多此類內(nèi)容。任何有悖于正常結(jié)果的偏差都記錄在靜態(tài)調(diào)查中。靜態(tài)分析在不執(zhí)行惡意軟件的情況下完成,而動態(tài)分析一般是在受控環(huán)境下執(zhí)行惡意軟件來進行。
在靜態(tài)分析中,涉及以下幾個方面的工作:
1.反匯編——程序可以移植到新的計算機平臺上,通過在不同環(huán)境中編譯源代碼來實現(xiàn)。
2.文件指紋——用于識別和跟蹤網(wǎng)絡(luò)上的數(shù)據(jù)。
3.病毒掃描——刪除惡意軟件、病毒、間諜軟件及其他威脅。
4.分析內(nèi)存工件——在分析內(nèi)存工件(比如RAM轉(zhuǎn)儲、pagefile.sys或hiberfile.sys)期間,檢查方可以開始識別流氓進程。
5.打包器檢測——用于檢測打包器、密碼器、編譯器、打包器加擾器、連接器和安裝器。
靜態(tài)分析工具包括:
Hybrid-analysis——使用獨特的混合分析技術(shù),檢測和分析未知威脅。
Virustotal.com——該免費服務(wù)可以分析可疑的文件和URL。
BinText——該文件文本掃描器/提取器可幫助查找深藏在二進制文件中的字符串。
Dependency Walker——該免費程序可列出便攜式可執(zhí)行文件的導(dǎo)入和導(dǎo)出模塊。
IDA——該程序可以將機器語言轉(zhuǎn)換成匯編語言。
Md5deep——這套跨平臺工具可計算和審核輸入文件的散列(Hash)。
PEiD——可針對便攜式可執(zhí)行(PE)文件檢測大多數(shù)常見的打包器、加密器和編譯器等。
Exeinfo PE——該軟件可查看任何可執(zhí)行文件的各種信息。
RDG Packer——可檢測打包器、加密器和編譯器等。
D4dot——該工具擅長將打包和混淆的程序集恢復(fù)到幾乎原始的程序集。
PEview——可快速輕松地查看32位PE文件和組件對象文件格式(COFF)的結(jié)構(gòu)和內(nèi)容。
動態(tài)惡意軟件分析
動態(tài)惡意軟件分析是分析師發(fā)現(xiàn)惡意軟件功能的首選方法。在動態(tài)分析中,分析師將構(gòu)建用作惡意軟件分析的虛擬機。分析師將通過沙盒來分析惡意軟件,并分析惡意軟件生成的數(shù)據(jù)包數(shù)據(jù)。在動態(tài)分析中,隔離環(huán)境以避免惡意軟件逃逸非常重要。
在動態(tài)分析中,需要注意以下幾個問題:
檢查單個路徑(執(zhí)行跟蹤)
分析環(huán)境可能并非隱形的
分析環(huán)境可能并非全面的
動態(tài)分析工具包括:
Procmon——這款先進的監(jiān)控工具可顯示文件系統(tǒng)、注冊表和進程/線程的實時活動。
Process Explorer——這是一款面向Windows操作系統(tǒng)的系統(tǒng)資源監(jiān)控工具。
Anubis——該動態(tài)惡意軟件分析平臺可在受控環(huán)境下執(zhí)行提交的二進制代碼。
Comodo Instant Malware Analysis——比較容易使用和理解的在線沙盒服務(wù)。
Process MonitorRegshot——這款流行的注冊表監(jiān)控工具可顯示文件系統(tǒng)、注冊表和進程/線程的實時活動。
ApateDNS——該工具通過易于使用的GUI來控制DNS響應(yīng)。
OllyDbg——一款側(cè)重二進制代碼分析的x86調(diào)試器。
Regshot——這款開源注冊表比較工具可迅速獲取注冊表的快照,并進行比對。
Netcat——該計算機網(wǎng)絡(luò)實用工具使用TCP或UDP協(xié)議在網(wǎng)絡(luò)中讀取數(shù)據(jù)。
Wireshark——該免費開源數(shù)據(jù)包分析器可用于網(wǎng)絡(luò)故障排查、分析、軟件和通信協(xié)議開發(fā)等。
內(nèi)存取證分析
內(nèi)存取證分析含有關(guān)于系統(tǒng)運行時狀態(tài)的信息,并提供將來自傳統(tǒng)取證分析工件(網(wǎng)絡(luò)、文件系統(tǒng)和注冊表)關(guān)聯(lián)起來的功能。
在內(nèi)存分析中,涉及以下幾個方面的工作:
映像全部的系統(tǒng)內(nèi)存(不依賴API調(diào)用)。
將進程的整個地址空間映像到磁盤,包括進程的已加載DLL、EXE、堆和堆棧。
將內(nèi)存中加載的指定驅(qū)動程序或所有驅(qū)動程序映像到磁盤。
加密進程地址空間中的EXE和DLL(MD5、SHA1、SHA256)。
驗證EXE和DLL的數(shù)字簽名(基于磁盤)。
針對某個進程,輸出內(nèi)存中的所有字符串。
內(nèi)存取證分析工具包括:
WinDbg——Windows系統(tǒng)的內(nèi)核調(diào)試器。
Muninn ——使用Volatility自動執(zhí)行部分分析的腳本。
DAMM ——基于Volatility,針對內(nèi)存中惡意軟件的差異分析。
FindAES ——查找內(nèi)存中的AES加密密鑰。
Volatility ——先進的內(nèi)存取證框架。
惡意軟件檢測
惡意軟件檢測是指掃描計算機和文件以檢測惡意軟件的過程。它不是單向過程,實際上相當(dāng)復(fù)雜。它結(jié)合多款工具和方法進行檢測,檢測和清除過程通常在50秒鐘內(nèi)完成,在惡意軟件檢測方面卓有成效。
以下是常見的幾種檢測方式:
基于特征或模式的匹配:特征是識別特定病毒唯一身份的算法或散列(從文本字符串獲取的數(shù)字)。
啟發(fā)式分析或主動防御:啟發(fā)式掃描類似特征掃描,只不過啟發(fā)式掃描并非尋找特定的特征,而是在程序中尋找典型應(yīng)用程序中沒有的某些指令或命令。
基于規(guī)則:啟發(fā)式引擎中進行分析的組件(分析器)從文件中提取某些規(guī)則,并將這些規(guī)則與惡意代碼的一組規(guī)則進行比較。
行為分析:相比之下,可疑行為分析方法不是試圖識別已知病毒,而是監(jiān)測所有程序的行為。
基于權(quán)重:根據(jù)危險程度,對所檢測的每個功能賦予某個權(quán)重。
沙盒:允許文件在受控的虛擬系統(tǒng)(即沙盒)中運行,查看其行為。
惡意軟件檢測工具包括:
YARA——分析員的模式匹配工具。
Yara規(guī)則生成器——根據(jù)一組惡意軟件樣本生成YARA規(guī)則。
File Scanning Framework——模塊化遞歸式文件掃描解決方案。
hash deep——使用多種算法計算摘要散列。
Loki——基于主機的掃描器,掃描攻陷指標(biāo)(IOC)。
Malfunction——在函數(shù)層面對惡意軟件進行登記和比較。
MASTIFF——靜態(tài)分析框架。
網(wǎng)絡(luò)交互分析
網(wǎng)絡(luò)交互分析在專注于網(wǎng)絡(luò)安全的同時,還監(jiān)控綜合平臺,以執(zhí)行更普通的網(wǎng)絡(luò)流量分析。被動網(wǎng)絡(luò)嗅探器/數(shù)據(jù)包捕獲工具可用于檢測操作系統(tǒng)、會話、主機名和開放端口等,并不在網(wǎng)絡(luò)上帶來任何流量??煞治鲆蕴W(wǎng)、PPP、SLIP、FDDI、令牌環(huán)和空接口上的IPv4/6、TCP、UDP、ICMPv4/6、IGMP和Raw流量,采用與數(shù)據(jù)包嗅探相同的方式理解BPF過濾器邏輯。
網(wǎng)絡(luò)交互分析工具包括:
?Tcpdump——收集網(wǎng)絡(luò)流量。
?tcpick——從網(wǎng)絡(luò)流量中跟蹤和重組TCP數(shù)據(jù)流。
?tcpxtract——從網(wǎng)絡(luò)流量中提取文件。
?Wireshark——網(wǎng)絡(luò)流量分析工具。
?CapTipper——惡意HTTP流量管理器。
?Chopshop——協(xié)議分析和解碼框架。
?CloudShark——基于Web的工具,用于分析數(shù)據(jù)包和檢測惡意軟件流量。
代碼調(diào)試器
代碼調(diào)試器是實用的惡意軟件分析工具,允許在底層分析代碼。調(diào)試器的重要功能是斷點(breakpoint)。斷點命中時,程序執(zhí)行被停止,并將控制權(quán)交給調(diào)試器,允許對當(dāng)時的環(huán)境進行惡意軟件分析。調(diào)試器可利用專門的中央處理單元(CPU)工具,可以讓用戶深入了解程序如何執(zhí)行任務(wù),并訪問被調(diào)試程序的環(huán)境等。這在分析惡意軟件時可能很有用,因為可以讓用戶看到調(diào)試器如何嘗試檢測篡改,并跳過有意插入的垃圾指令。
調(diào)試工具包括:
?obj dump——GNU Binutils 的一部分,用于Linux二進制代碼的靜態(tài)分析。
?OllyDbg——Windows可執(zhí)行文件的匯編級調(diào)試器。
?FPort——報告實時系統(tǒng)中敞開的TCP/IP和UDP端口,并將它們映射到對應(yīng)的應(yīng)用程序。
?GDB——GNU調(diào)試器。
?IDA Pro——Windows反匯編器和調(diào)試器,有免費評估版。
?Immunity Debugger——用于分析惡意軟件的調(diào)試器,附有Python API。
惡意URL分析
如今,網(wǎng)站暴露在各種威脅面前,受感染的網(wǎng)站將被用作跳板,幫助攻擊者達到邪惡目的。比如,URL重定向機制已被廣泛用于隱蔽地執(zhí)行基于Web的攻擊。重定向是指自動替換訪問目的地,一般由Web上的HTTP協(xié)議加以控制。除了這種傳統(tǒng)方法外,還經(jīng)常使用自動訪問外部Web內(nèi)容(比如iframe標(biāo)簽)的其他方法。惡意URL分析是通過機器學(xué)習(xí)等方式,分析URL文本分詞詞頻來檢測惡意URL。
惡意URL分析工具包括:
?Firebug——用于Web開發(fā)的Firefox擴展件。
?Java Decompiler——反編譯和檢查Java應(yīng)用程序。
?jsunpack-n——模擬瀏覽器功能的javascript解包器。
?Krakatau——Java 反編譯器、匯編器和反匯編器。
?Malzilla——分析惡意網(wǎng)頁。
沙盒技術(shù)
沙盒是一個重要的安全分析系統(tǒng),可以隔離程序,防止惡意或失敗的項目損害或窺視PC上的任何剩余部分。沙盒是嚴(yán)格控制的環(huán)境,限制了一部分代碼可以執(zhí)行的操作。
沙盒分析工具包括:
?firmware.re——可以拆解、掃描和分析幾乎任何固件包。
?Hybrid Analysis——基于VxSandbox的在線惡意軟件分析工具。
?IRMA——用于分析可疑文件的異步可定制分析平臺。
?Cuckoo Sandbox——開源自托管的沙盒和自動分析系統(tǒng)。
?cuckoo-modified——使用GPL許可證的Cuckoo Sandbox的修改版。
?PDF Examiner——分析可疑的PDF文件。
?ProcDot——圖形化惡意軟件分析工具包。
?Recomposer——將二進制代碼安全地上傳到沙盒的幫助腳本。
?Sand droid——自動完整的安卓應(yīng)用程序分析系統(tǒng)。
網(wǎng)域分析
網(wǎng)域分析是指安全分析師了解背景信息、檢查網(wǎng)域和IP地址的過程。網(wǎng)域分析應(yīng)該包括已找到信息的簡要總結(jié),以及使其他人能夠找到該信息的參考資料。
網(wǎng)域分析工具包括:
?SpamCop——基于IP的垃圾郵件阻止列表。
?SpamHaus——基于網(wǎng)域和IP的阻止列表。
?Sucuri SiteCheck——免費的網(wǎng)站惡意軟件和安全掃描器。
?TekDefense Automatic——用于收集有關(guān)URL、IP或散列的OSINT工具。
?URLQuery——免費的URL掃描器。
?IPinfo——通過搜索在線資源,收集有關(guān)IP或網(wǎng)域的信息。
?Whois——免費在線whois搜索。
?Mail checker——跨語言的臨時電子郵件檢測庫。
更多信息可以來這里獲取==>>電子技術(shù)應(yīng)用-AET<<