两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于相似性匹配惡意shellcode快速檢測(cè)方法

文檔序號(hào):9491150閱讀:1447來源:國知局
一種基于相似性匹配惡意shellcode快速檢測(cè)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種結(jié)合了傳統(tǒng)的動(dòng)態(tài)檢測(cè)技術(shù)和靜態(tài)檢測(cè)技術(shù)優(yōu)點(diǎn)的基于相似性匹配惡意shellcode快速檢測(cè)方法。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)和計(jì)算機(jī)技術(shù)的飛速發(fā)展和進(jìn)步,計(jì)算機(jī)在我們?nèi)粘I畹母鱾€(gè)方面扮演者越來越重要的角色,但是也帶來了很多無法避免的安全問題。其中,網(wǎng)絡(luò)惡意攻擊和計(jì)算機(jī)木馬病毒成為當(dāng)前計(jì)算機(jī)安全的主要威脅。由于計(jì)算機(jī)本身結(jié)構(gòu)的缺陷以及當(dāng)前許多軟件開發(fā)都是使用C/C++語言實(shí)現(xiàn),而C/C++語言作為高級(jí)開發(fā)語言,本身具有很高的靈活性,這使得在開發(fā)操作系統(tǒng)和應(yīng)用軟件過程中產(chǎn)生了很多的安全漏洞。因此,一些非法份子可以通過網(wǎng)絡(luò)以及病毒木馬,利用這些漏洞直接或者間接的獲得計(jì)算機(jī)系統(tǒng)的部分操作權(quán)限,甚至得到管理員權(quán)限,嚴(yán)重的威脅著計(jì)算機(jī)系統(tǒng)的安全。
[0003]從安全防護(hù)軟件提供商提供的數(shù)據(jù)可知,利用緩沖區(qū)溢出漏洞是最容易實(shí)施攻擊的入侵方式。漏洞只是攻擊的靶標(biāo),而具體實(shí)施攻擊的是惡意代碼Shellcode,即實(shí)施攻擊的真正攻擊載荷。
[0004]現(xiàn)在主要有兩種解決方案用于檢測(cè)Shellcode,即靜態(tài)特征匹配和動(dòng)態(tài)模擬執(zhí)行。然而,隨著多態(tài)編碼技術(shù)的發(fā)展,使得惡意代碼Shellcode可以輕松的隱藏自身所包含的的組成特征,從而躲避檢測(cè)系統(tǒng)的檢測(cè)。因此,靜態(tài)和動(dòng)態(tài)兩種檢測(cè)技術(shù)方案對(duì)多態(tài)編碼處理后的Shellcode的檢測(cè)效果并不理想,并且對(duì)于普通類型的檢測(cè)存在較高的誤報(bào)和漏報(bào)率。
[0005]靜態(tài)檢測(cè)技術(shù)主要是通過對(duì)惡意代碼Shellcode的組成結(jié)構(gòu)進(jìn)行分析,從而提取出Shellcode的組成特征代碼。然后,對(duì)待檢測(cè)數(shù)據(jù)進(jìn)行特征匹配來判斷是否存在攻擊行為?;谔卣髌ヅ涞撵o態(tài)檢測(cè)技術(shù)廣泛應(yīng)用于安全防護(hù)軟件中。靜態(tài)檢測(cè)技術(shù)具有檢測(cè)高效、部署快捷等特點(diǎn),適用于對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行檢測(cè)。
[0006]動(dòng)態(tài)檢測(cè)技術(shù)是通過對(duì)檢測(cè)數(shù)據(jù)進(jìn)行虛擬執(zhí)行,解析出數(shù)據(jù)中包含的指令,并對(duì)指令進(jìn)行模擬執(zhí)行。從而詳細(xì)的了解惡意代碼Shellcode入侵過程中的操作行為。相比較于靜態(tài)檢測(cè)技術(shù),動(dòng)態(tài)檢測(cè)技術(shù)可以獲得詳細(xì)的檢測(cè)信息,并且檢測(cè)結(jié)果更加精確。檢測(cè)準(zhǔn)確和較低的誤報(bào)和漏報(bào)率,以及詳細(xì)的檢測(cè)報(bào)告,使得動(dòng)態(tài)檢測(cè)技術(shù)廣泛的應(yīng)用于Snort、BASE等入侵檢測(cè)系統(tǒng)以及蜜罐中。
[0007]前互聯(lián)網(wǎng)的發(fā)展十分迅速,在減少用戶的手動(dòng)操作,增強(qiáng)用戶體驗(yàn)的同時(shí),加強(qiáng)用戶的隱私保護(hù)也顯得至關(guān)重要。一些非法份子通過網(wǎng)絡(luò)以及病毒木馬,利用這些漏洞直接或者間接的獲得計(jì)算機(jī)系統(tǒng)的部分操作權(quán)限,甚至得到管理員權(quán)限,嚴(yán)重的威脅著計(jì)算機(jī)系統(tǒng)的安全。因此對(duì)于惡意木馬程序的檢測(cè)顯得十分重要。其次,樣本庫樣本數(shù)量的問題需要解決,只含有常見的攻擊樣本,因此容易造成很高的漏報(bào)事件。并且這種檢測(cè)技術(shù)對(duì)于現(xiàn)在的使用分段技術(shù)編寫的代碼是無效的,假如有人把完整的代碼分段加入數(shù)據(jù)包中,那么便可以躲過查殺。

【發(fā)明內(nèi)容】

[0008]本發(fā)明的目的在于提供一種可用于檢測(cè)出那些利用緩沖區(qū)溢出漏洞進(jìn)行攻擊的惡意Shellcode代碼;在提高檢測(cè)準(zhǔn)確性、降低誤報(bào)漏報(bào)率的同時(shí)具有較快的檢測(cè)速率的基于相似性匹配惡意shellcode快速檢測(cè)方法。
[0009]本發(fā)明的目的是這樣實(shí)現(xiàn)的:
[0010]步驟1:當(dāng)對(duì)待測(cè)數(shù)據(jù)進(jìn)行檢測(cè)時(shí),對(duì)待測(cè)數(shù)據(jù)進(jìn)行判斷,確定是否存在可疑的GetPC以及call、jmp、fnstenv浮點(diǎn)操作指令;根據(jù)判定結(jié)果,如果存在可疑的指令,則使用編碼處理,并確定使用解碼器的開始模擬執(zhí)行檢測(cè)位置,進(jìn)入步驟2 ;
[0011]步驟2:在步驟1確定的起始檢測(cè)位置,調(diào)用解碼器進(jìn)行模擬執(zhí)行檢測(cè),查找待測(cè)數(shù)據(jù)中是否存在循環(huán)解碼指令序列和內(nèi)存多次訪問操作;使用開源Shellcode檢測(cè)庫libemu來模擬執(zhí)行待測(cè)數(shù)據(jù),作為檢測(cè)方法的解碼器構(gòu)成部分;根據(jù)檢測(cè)結(jié)果進(jìn)行判斷,如果不存在解碼指令,則進(jìn)入步驟3,如果存在解碼指令直接進(jìn)入步驟4 ;
[0012]步驟3:使用Shingle算法對(duì)待測(cè)數(shù)據(jù)和樣本庫進(jìn)行模擬檢測(cè),將檢測(cè)結(jié)果生成Jaccard相似度系數(shù)R ;根據(jù)此系數(shù)來決定是否執(zhí)行下一步操作,如果R大于閾值40%,直接進(jìn)入步驟4 ;否則結(jié)束檢測(cè)流程;
[0013]步驟4:相似度系數(shù)大于閾值40%,即可判定待測(cè)數(shù)據(jù)中存在惡意Shellcode攻擊行為,提出預(yù)警。
[0014]本發(fā)明的有益效果在于:
[0015]本發(fā)明采用成熟算法和動(dòng)態(tài)檢測(cè)庫,易于實(shí)現(xiàn)。通過動(dòng)態(tài)和靜態(tài)檢測(cè)技術(shù)的有效結(jié)合,提高了對(duì)惡意代碼Shellcode的統(tǒng)一有效檢測(cè)。通過相似性匹配算法Shingle來改進(jìn)基于特征匹配的靜態(tài)檢測(cè)技術(shù)的不足之處。通過判斷待測(cè)數(shù)據(jù)和樣本庫中實(shí)例惡意代碼Shellcode的相似性程度來判斷是否存在緩沖區(qū)溢出漏洞攻擊行為。該算法可以提高檢測(cè)的準(zhǔn)確度和降低基于特征匹配的靜態(tài)檢測(cè)技術(shù)的誤報(bào)率。并以解碼循環(huán)指令序列和內(nèi)存多次訪問操作作為多態(tài)編碼處理的惡意代碼Shellcode的檢測(cè)依據(jù)。因此,不需要模擬器進(jìn)行深度模擬執(zhí)行和系統(tǒng)函數(shù)Hook。從而進(jìn)一步降低動(dòng)態(tài)模擬檢測(cè)技術(shù)的檢測(cè)處理消耗,提高檢測(cè)數(shù)據(jù)的吞吐率,提高對(duì)于多態(tài)惡意代碼的檢測(cè)速率,降低對(duì)網(wǎng)絡(luò)速率的影響。
【附圖說明】
[0016]圖1為本發(fā)明步驟圖。
[0017]圖2為本發(fā)明流程圖。
[0018]圖3為本發(fā)明的基于相似性Shingle算法與基于特征匹配檢測(cè)對(duì)比示意圖。
[0019]圖4是本發(fā)明的動(dòng)態(tài)解碼器檢測(cè)效果對(duì)比示意圖。
【具體實(shí)施方式】
[0020]下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步描述。
[0021]本發(fā)明包括:
[0022]步驟1:當(dāng)對(duì)待測(cè)數(shù)據(jù)進(jìn)行檢測(cè)時(shí),基于相似性匹配檢測(cè)技術(shù)方法會(huì)對(duì)待測(cè)數(shù)據(jù)進(jìn)行簡單的判斷,確定是否存在可疑的GetPC以及浮點(diǎn)操作指令如call、jmp、fnstenv指令。根據(jù)判定結(jié)果,如果存在可疑的指令,則應(yīng)該使用編碼處理,并確定使用解碼器的開始模擬執(zhí)行檢測(cè)位置,提高模擬器的執(zhí)行效率,降低待測(cè)數(shù)據(jù)的檢測(cè)規(guī)模。當(dāng)這些步驟完成之后進(jìn)入步驟2 ;
[0023]步驟2:在第一步確定的起始檢測(cè)位置,調(diào)用解碼器進(jìn)行模擬執(zhí)行檢測(cè),查找待測(cè)數(shù)據(jù)中是否存在循環(huán)解碼指令序列和內(nèi)存多次訪問操作。使用開源Shellcode檢測(cè)庫libemu來模擬執(zhí)行待測(cè)數(shù)據(jù),作為檢測(cè)方法的解碼器構(gòu)成部分。實(shí)現(xiàn)對(duì)經(jīng)過多態(tài)編碼技術(shù)處理后的惡意代碼Shellcode的有效檢測(cè)。根據(jù)檢測(cè)結(jié)果進(jìn)行判斷。如果不存在解碼指令,則進(jìn)入步驟3,如果存在解碼指令直接進(jìn)入步驟4 ;
[0024]步驟3:使用Shingle算法對(duì)待測(cè)數(shù)據(jù)和樣本庫進(jìn)行模擬檢測(cè),將檢測(cè)結(jié)果生成Jaccard相似度系數(shù)R。根據(jù)此系數(shù)來決定是否執(zhí)行下一步操作,如果R大于閾值40%,直接進(jìn)入步驟4。否則結(jié)束檢測(cè)流程;
[0025]步驟4:根據(jù)上一步中得出的結(jié)果,相似度系數(shù)大于閾值40%,即可判定待測(cè)數(shù)據(jù)中存在惡意Shellcode攻擊行為,提出預(yù)警。
[0026]如圖1、圖2所示,本發(fā)明基于相似性匹配方式的惡意代碼Shellcode快速檢測(cè)技術(shù)方法包括三部分:惡意代碼Shellcode起始位置定位和類型判斷、解碼器模擬執(zhí)行檢測(cè)循環(huán)解碼指令序列和內(nèi)存訪問操作以及相似度R判定。
[0027]本發(fā)明主要目的是改進(jìn)原有惡意代碼Shellcode檢測(cè)技術(shù)的不足之處。結(jié)合了靜態(tài)檢測(cè)技術(shù)的快速優(yōu)勢(shì),以及動(dòng)態(tài)模擬檢測(cè)技術(shù)針對(duì)多態(tài)惡意代碼Shellcode方面的準(zhǔn)確性,從而提出了一種更加高效,準(zhǔn)確的檢測(cè)技術(shù)。以兩者結(jié)合實(shí)現(xiàn)
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
鹤庆县| 高雄市| 泰顺县| 道真| 乌兰浩特市| 金堂县| 江安县| 姚安县| 双鸭山市| 日喀则市| 白河县| 安岳县| 清远市| 攀枝花市| 仪征市| 宽甸| 西乡县| 东港市| 玉林市| 仲巴县| 博湖县| 伊金霍洛旗| 绥阳县| 雅安市| 本溪| 武邑县| 博湖县| 临颍县| 延寿县| 江西省| 百色市| 六枝特区| 三河市| 盐源县| 阿巴嘎旗| 红安县| 武山县| 柞水县| 克什克腾旗| 冷水江市| 崇信县|