很多像我一樣的安全研究新人可能會對Exploit、Malware和Exploit Kit這三個詞匯感到既熟悉又陌生,說熟悉是因為經(jīng)常在各類安全資訊中見到他們的身影,說陌生是因為往往搞不清他們的具體含義、不知道這三者的區(qū)別與聯(lián)系。為了更好地進行安全研究,我們有必要詳細地了解Exploit、Malware和Exploit Kit這三兄弟。
從安全公司 Trend Micro 提供的術(shù)語詞匯表我們可以查詢到這三個詞的字面含義:
- Exploit:An exploit is code that takes advantage of a software vulnerability or security flaw. Exploits are often incorporated into malware, which are consequently able to propagate into and run intricate routines on vulnerable computers.
從上面的描述可以看出Exploit就是我們常說的Exp,它是對軟件漏洞進行利用的代碼。在很多情況下Exploit執(zhí)行的結(jié)果就是受害主機上運行著的Malware。
- Malware:Malware is a general category of malicious code that includes viruses, worms and Trojan horse programs.
Malware就是我們常說的惡意軟件,它可以分為病毒、蠕蟲以及木馬這幾類。
- Exploit Kit:Exploit kits or exploit packs refer to a type of hacking toolkit that cybercriminals use to take advantage of vulnerabilities in systems/devices so they can distribute malware or do other malicious activities.
Exploit Kit可以理解為Exploits的集合工具,它里面包含著各種各樣的Exploits用來進行惡意軟件的傳播或者進行其他惡意活動。Exploit Kit不單單是將Exploits收集整合起來,每種典型的Exploit Kit通常包括一個管理控制臺、一堆不同應(yīng)用程序漏洞的利用代碼以及其他幫助黑客進行攻擊的附加功能。
以現(xiàn)實場景中的感染鏈為例,我們可以更好地理解他們?nèi)叩年P(guān)系:

- Step 1:Contact
感染鏈的第一步是Contact,攻擊者通常通過垃圾郵件和社會工程學誘使人們點擊一個包含Exploit Kit的網(wǎng)站鏈接。
- Step 2:Redirect
在受害者訪問含有Exploit Kit網(wǎng)站的鏈接后,Exploit Kit可以發(fā)現(xiàn)受害者設(shè)備上的軟件漏洞。
- Step 3:Exploit
第三步,一段利用特定軟件漏洞的Exploit將會在目標設(shè)備上執(zhí)行。
- Step 4:Infect
最后一步惡意軟件在目標設(shè)備上執(zhí)行,該設(shè)備也就被感染了。
可以看出相比一個個單獨的Exploit,整合后的Exploit Kit更具威力,以2016年的數(shù)據(jù)為例,一些知名的Exploit Kit往往包含過個高危漏洞的利用代碼:

隨著時間的發(fā)展Exploit Kit也在不斷收集著常用應(yīng)用程序漏洞的Exploit,而很多用戶都沒有對漏洞進行及時修補,這又進一步使得黑客們更愿意對Exploit Kit進行升級換代。