基于文本分類(lèi)技術(shù)的惡意代碼檢測工具
作者 張東紅 中國科學(xué)院軟件研究所 (北京 100864)
本文引用地址:http://dyxdggzs.com/article/201808/391178.htm張東紅,碩士生,曾獲得“2012國際青年創(chuàng )新大賽”特等獎,以及“第十三屆‘五四杯’大學(xué)生創(chuàng )業(yè)計劃競賽”二等獎。
摘要:惡意代碼對人們的工作和生活帶來(lái)了嚴重的威脅,對惡意代碼進(jìn)行檢測也變得越來(lái)越重要。一種有效的惡意代碼檢測方式是借鑒機器學(xué)習技術(shù),訓練檢測模型并使用其檢測新樣本中是否含有惡意代碼。為達到此目的,使用操作碼特征的檢測方法近年來(lái)深受歡迎。用于高效、可配置地反匯編多種平臺多種格式類(lèi)型的可執行樣本,避免基于遞歸下降反匯編算法的 IDA Pro 遇到的各種問(wèn)題;本文還重新設計和實(shí)現了 “飛鼠”惡意代碼檢測系統,自動(dòng)化地采集、標記、處理樣本,提高反匯編成功率。
1 “飛鼠”惡意代碼檢測系統
針對此問(wèn)題,論文根據IDA Pro 遇到的各種問(wèn)題;論文還重新設計和實(shí)現了“飛鼠”惡意代碼檢測系統,自動(dòng)化地采集、標記、處理樣本,在兼容 IDA Pro的基礎上,同時(shí)支持操作碼特征,能夠在允許一定程度的反匯編代碼不準確的情況下,提高反匯編成功率,增加可利用的樣本數目;訓練數據集樣本量的大幅增加可以彌補樣本反匯編質(zhì)量小幅度降低的損失,最終超越,或保持,基于 IDA Pro 的檢測模型的檢測效果。實(shí)驗中還發(fā)現,使用多項式核函數的支持向量機分類(lèi)算法在實(shí)踐中有著(zhù)更好的性能和應用價(jià)值。如圖1和圖2所示。
2 互聯(lián)網(wǎng)與病毒發(fā)展現狀
隨著(zhù)計算機技術(shù)的高速發(fā)展和計算機網(wǎng)絡(luò )的不斷普及,計算機和互聯(lián)網(wǎng)已經(jīng)深入到人們日常生活和工作的方方面面。根據中國互聯(lián)網(wǎng)信息中心在2018年1月發(fā)布的《第41次中國互聯(lián)網(wǎng)絡(luò )發(fā)展狀況統計報告》,截至2017 年12 月,我國網(wǎng)民規模達7.72億,全年共計新增網(wǎng)民4074 萬(wàn)人,互聯(lián)網(wǎng)普及率達55.8%,相比較于2016年底提升了2.6%。同時(shí)我國在線(xiàn)政務(wù)服務(wù)用戶(hù)規模達到4.85 億,占總體網(wǎng)民的62.9%,通過(guò)支付寶或微信城市服務(wù)平臺獲得政務(wù)服務(wù)的使用率為44.0% 。
日益便捷的網(wǎng)絡(luò )互聯(lián)環(huán)境和成熟的計算機技術(shù),也為網(wǎng)絡(luò )攻擊的產(chǎn)生與傳播提供了極大的便利條件,每年新增的軟件數量呈現出持續性增長(cháng)的趨勢。在賽門(mén)鐵克(Symantec)公司2010 年發(fā)布的安全報告中指出,賽門(mén)鐵克公司相比于2008 年捕獲到169323 個(gè)新型軟件,2009 年共捕獲到了2895802個(gè)新型軟件。根據中國互聯(lián)網(wǎng)應急響應中心(CNCERT/CC )在2017年5月發(fā)布的《2016 年中國互聯(lián)網(wǎng)網(wǎng)絡(luò )安全報告》,CNCERT/CC 通過(guò)自主捕獲以及與廠(chǎng)商交換獲得的移動(dòng)互聯(lián)網(wǎng)惡意程序數量約205萬(wàn)個(gè)。
3 “飛鼠”的設計
基于特征碼的靜態(tài)惡意代碼檢測流程可以分為三部分,首先需要獲取惡意代碼,然后對現有已知的惡意代碼進(jìn)行特征分析,提取相應的特征碼;然后匯總整理,將提取的特征碼存入特征庫;最后,在對未知的可執行樣本進(jìn)行檢測時(shí),根據特征庫中的特征碼逐項進(jìn)行匹配。如果待檢測樣本中包含特征庫中的特征信息,則認為該樣本是惡意代碼,反之,則認為是非惡意代碼。如圖3。
4 “飛鼠”系統特征訓練檢測模型
在獲取到包含惡意代碼樣本和非惡意代碼樣本的原始實(shí)驗數據集,并進(jìn)行預處理和數據集劃分之后,對訓練集數據首先使用線(xiàn)性?huà)呙璺磪R編工具進(jìn)行反匯編處理。然后從反匯編代碼中提取操作碼特征。在完成操作碼特征提取之后,會(huì )首先根據訓練集中操作碼特征的數據特征選擇一定的操作碼特征對樣本進(jìn)行向量化表示。最后將描述樣本的特征向量輸入分類(lèi)模型中進(jìn)行訓練,得到用于惡意代碼檢測的惡意代碼檢測模型。測試階段,使用相同的線(xiàn)性?huà)呙璺磪R編方法對未知樣本進(jìn)行反匯編提取其操作碼特征。根據訓練階段選擇出來(lái)的操作碼特征子集對未知樣本進(jìn)行向量化描述。最后將該描述向量輸入到訓練階段得到的惡意代碼檢測模型進(jìn)行檢測,得到最終的惡意代碼檢測結果,惡意代碼或者非惡意代碼。
在惡意代碼檢測工作中,可以定義混淆矩陣(confusion matrix)來(lái)記錄相應的檢測結果數據。如表 1所示,TP 表示將惡意代碼檢測成為惡意代碼的樣本數,FP 表示非惡意代碼檢測成為惡意代碼的樣本數,FN 表示惡意代碼檢測成為非惡意代碼的樣本數,TN 表示非惡意代碼檢測成為非惡意代碼的樣本數。
5 結論
論文提出的解決方案,主要思想是通過(guò)訓練樣本數量的大幅增長(cháng)來(lái)彌補操作碼特征略微不準確的問(wèn)題,所以在該解決方案中通過(guò) D-light 反匯編工具獲取大量稍微有些不準確的反匯編代碼提取操作碼特征來(lái)訓練惡意代碼檢測模型。在對反匯編代碼的質(zhì)量和數量對惡意代碼檢測性能影響的實(shí)驗研究中,通過(guò)使用D-light反匯編提取操作碼特征訓練得到的惡意代碼檢測模型與使用IDA Pro反匯編提取操作碼特征訓練得到的惡意代碼檢測模型進(jìn)行對比分析,發(fā)現使用 D-light反匯編提取操作碼特征訓練得到的惡意代碼檢測模型的檢測性能更好一些,驗證了本文提出的使用線(xiàn)性?huà)呙璺磪R編算法提取操作碼特征訓練惡意代碼檢測模型的解決方案是有效和可行的。此外,在對比分析實(shí)驗中,本文還發(fā)現使用多項式核函數支持向量機分類(lèi)算法的惡意代碼檢測模型在實(shí)踐中檢測性能表現最好。
參考文獻:
[1] 中國互聯(lián)網(wǎng)信息中心.第 41 次中國互聯(lián)網(wǎng)絡(luò )發(fā)展狀況統計報告[J]. 中國經(jīng)濟報告, 2017(4).
[2] Nataraj L,Karthikeyan S,Jacob G,et al.Malware images: visualization and automatic classification[C]//Proceedings of the 8th international symposium on visualization for cyber security. ACM, 2011: 4.Fossi M, Egan G, Haley K, et al. Symantec global internet security threat report[J]. Volume 1, 2010.
[3] Fossi M,Egan G,Haley K,et al.Symantec global internet security threat report [J]. Volume XVI, 2011.
[4] 國家計算機網(wǎng)絡(luò )應急技術(shù)處理協(xié)調中心.2016 年中國互聯(lián)網(wǎng)網(wǎng)絡(luò )安全報告[M/OL].北京: 人民郵電出版社,(2017).http://www.cert.org.cn/publish/main/upload/File/2016_cncert_rep -ort.pdf.
本文來(lái)源于《電子產(chǎn)品世界》2018年第9期第75頁(yè),歡迎您寫(xiě)論文時(shí)引用,并注明出處。
評論