第1章-静态分析
1.1 反病毒引擎掃描
VirusTotal:http://www.virustotal.com
VirSCAN:http://www.virscan.org
1.2 哈希值:惡意代碼的指紋
MD5計(jì)算軟件:md5deep、WinMD5
1.3?查找字符串
編碼:ASCLL(單字節(jié))、Unicode(雙字節(jié))
1.4 加殼與混淆惡意代碼
Tips:加殼程序至少包含LoadLibrary和GetProcAddress函數(shù),他們用來加載和使用其他函數(shù)
1.4.1 文件加殼:加殼過程源程序被壓縮
1.4.2 使用PEiD檢測(cè)加殼:PEiD、脫殼程序
1.5 PE文件格式
PE文件格式(一種數(shù)據(jù)結(jié)構(gòu)):是Windows可執(zhí)行文件、對(duì)象代碼和DLL所使用的標(biāo)準(zhǔn)文件格式。
1.6?鏈接庫與函數(shù)
1.6.1 鏈接類型
靜態(tài)鏈接:復(fù)制代碼庫至意代碼程序,難以區(qū)分代碼庫與自身代碼。
運(yùn)行時(shí)鏈接:當(dāng)惡意代碼需要使用其函數(shù)才鏈接到庫。
動(dòng)態(tài)鏈接:當(dāng)啟動(dòng)惡意代碼時(shí)就鏈接到庫
1.6.2 使用Dependency Walker工具探索動(dòng)態(tài)鏈接函數(shù)
Dependency Walker工具:http://www.depencywalker.com
Tips:常見的DLL程序:
1.Kernel32.dll:包含核心系統(tǒng)功能,如訪問和操作內(nèi)存、文件和硬件等
2.Advapi32.dll:這個(gè)DLL提供了對(duì)核心Windows組件的訪問,比如服務(wù)器管理器和注冊(cè)表
3.User32.dll:包含所有用戶界面組件、如按鈕和滾動(dòng)條以及控制和響應(yīng)用戶操作的組件
4.Gdi32.dll:包含了圖形顯示和操作的函數(shù)
5.Ntdll.dl:Windows內(nèi)核的接口。可執(zhí)行文件通常不導(dǎo)入這個(gè)函數(shù),由Kernel32.dll間接導(dǎo)入
6.Wsock32.dll和Ws2_32.dll:聯(lián)網(wǎng)DLL
7.Wininet.dll:包含了更高網(wǎng)絡(luò)層次的網(wǎng)絡(luò)函數(shù),實(shí)現(xiàn)了FTP\HTTP\NTP等協(xié)議
8.函數(shù)的命名約定:Ex后綴代表擴(kuò)展/接受參數(shù)A(ASCLL)或W(寬字節(jié))結(jié)尾函數(shù)
1.6.3 導(dǎo)入函數(shù)
MSDN庫:https://msdn.microsoft.com/library
1.6.4 導(dǎo)出函數(shù)
1.7 靜態(tài)分析技術(shù)實(shí)戰(zhàn)-案例
1.7.1 Potentialkeylogger.exe:一個(gè)未加殼的可執(zhí)行文件
SetWindowsHookEx函數(shù):間諜軟件常用函數(shù)
RegisterHotKey函數(shù):注冊(cè)熱鍵
Advapi32.dll:注冊(cè)表使用
1.7.2 PackedProgram.exe:惡意程序加殼
1.8 PE文件頭與分節(jié)
.text:.text截包含了CPU執(zhí)行指令,唯一可執(zhí)行節(jié)和代碼節(jié)。
.rdata:.rdata節(jié)通常包含導(dǎo)入與導(dǎo)出函數(shù)信息,與Dependency Walker 和PEview工具所獲得的信息是相同的。
.data:.data節(jié)包含了程序的全局?jǐn)?shù)據(jù),可以從程序的任何地方訪問到。
.rsrc:.rsrc節(jié)包含由可執(zhí)行文件所使用的資源,而這些資源不是可執(zhí)行的。
1.8.1 使用PEview來分析PE文件
Tips:通過兩者的比較可以有效的判斷加殼情況
1.8.2 使用Resource Hacker 工具查看資源節(jié)
1.8.3 使用其他PE文件工具
1.PEBrowse Professional
2.PE Explorer
1.8.4 PE文件頭概述
1.導(dǎo)入函數(shù):惡意代碼使用了那些庫中的函數(shù)
2.導(dǎo)出函數(shù):惡意代碼期望被其他程序或庫調(diào)用的函數(shù)
3.時(shí)間戳:程序在什么時(shí)候被編譯的
4.分節(jié):文件分節(jié)的名稱,以及他們?cè)诖疟P與內(nèi)存中的大小
5.子系統(tǒng):指程序是一個(gè)命令行還是圖形界面
6.資源:字符串、圖標(biāo)、菜單項(xiàng)和文件中包含的其他信息
1.9 小結(jié):簡(jiǎn)單的掌握工具的使用方式和情景
1.10 實(shí)驗(yàn):另附文章
轉(zhuǎn)載于:https://www.cnblogs.com/pzlee/p/7588540.html
總結(jié)
- 上一篇: 后缀数组模板整理
- 下一篇: BZOJ 2208[Jsoi2010]连