本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,尤其涉及一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法。
背景技術(shù):
傳統(tǒng)的格式識(shí)別方法多采用結(jié)構(gòu)方法進(jìn)行識(shí)別,例如格式幻數(shù)等。格式識(shí)別技術(shù)在惡意代碼檢測(cè)中,具有十分重要的作用。格式識(shí)別的準(zhǔn)確性對(duì)于更好更快的檢測(cè)惡意代碼重要的基礎(chǔ)技術(shù)。
腳本類文件語(yǔ)法靈活多樣,沒(méi)有固定的結(jié)構(gòu),無(wú)法用傳統(tǒng)的格式識(shí)別方法 (例如幻數(shù)方法等)進(jìn)行識(shí)別,而在與惡意代碼檢測(cè)中,又需要識(shí)別腳本類文件格式。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)上述技術(shù)問(wèn)題,本發(fā)明所述的技術(shù)方案提出了一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法和系統(tǒng),即,基于每類文件的語(yǔ)法特征通過(guò)一些識(shí)別方法進(jìn)行識(shí)別腳本類文件,解決了傳統(tǒng)方法中,對(duì)于腳本類格式識(shí)別難的問(wèn)題,采用基于腳本語(yǔ)法特點(diǎn)的方法,可以有效提高腳本類格式識(shí)別的準(zhǔn)確率和降低誤報(bào)率
本發(fā)明采用如下方法來(lái)實(shí)現(xiàn):
一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法,包括:
獲取并分析腳本類文件的語(yǔ)法特點(diǎn);所述腳本類文件包括腳本文件以及具有語(yǔ)法定義的文件;
針對(duì)分析后的語(yǔ)法特點(diǎn)提取至少一個(gè)識(shí)別點(diǎn),所述識(shí)別點(diǎn)為每種腳本類文件獨(dú)有的區(qū)別特征;
將所述至少一個(gè)識(shí)別點(diǎn)在待測(cè)試用例中進(jìn)行評(píng)估測(cè)試,判斷是否為可用的識(shí)別點(diǎn),若是,則將可用的識(shí)別點(diǎn)轉(zhuǎn)換成識(shí)別規(guī)則并加入格式識(shí)別引擎完成識(shí)別;否則重復(fù)以上步驟直至提取到可用的識(shí)別點(diǎn);
所述可用的識(shí)別點(diǎn)為評(píng)估測(cè)試結(jié)果中準(zhǔn)確率和誤報(bào)率達(dá)到預(yù)定閾值范圍的識(shí)別點(diǎn)。
本發(fā)明采用如下系統(tǒng)來(lái)實(shí)現(xiàn):
一種基于語(yǔ)法形式的腳本類文件格式識(shí)別系統(tǒng),包括:
分析模塊,用于獲取并分析腳本類文件的語(yǔ)法特點(diǎn);所述腳本類文件包括腳本文件以及具有語(yǔ)法定義的文件;
提取模塊,用于針對(duì)分析后的語(yǔ)法特點(diǎn)提取至少一個(gè)識(shí)別點(diǎn),所述識(shí)別點(diǎn)為每種腳本類文件獨(dú)有的區(qū)別特征;
測(cè)試模塊,用于將所述至少一個(gè)識(shí)別點(diǎn)在待測(cè)試用例中進(jìn)行評(píng)估測(cè)試,判斷是否為可用的識(shí)別點(diǎn),若是,則將可用的識(shí)別點(diǎn)轉(zhuǎn)換成識(shí)別規(guī)則并加入格式識(shí)別引擎完成識(shí)別;否則重復(fù)以上步驟直至提取到可用的識(shí)別點(diǎn);
所述可用的識(shí)別點(diǎn)為評(píng)估測(cè)試結(jié)果中準(zhǔn)確率和誤報(bào)率達(dá)到預(yù)定閾值范圍的識(shí)別點(diǎn)。
綜上,本發(fā)明給出一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法及系統(tǒng),包括:獲取并分析腳本類文件的語(yǔ)法特點(diǎn);所述腳本類文件包括腳本文件以及具有語(yǔ)法定義的文件;針對(duì)分析后的語(yǔ)法特點(diǎn)提取至少一個(gè)識(shí)別點(diǎn),所述識(shí)別點(diǎn)為每種腳本類文件獨(dú)有的區(qū)別特征;將所述至少一個(gè)識(shí)別點(diǎn)在待測(cè)試用例中進(jìn)行評(píng)估測(cè)試,判斷是否為可用的識(shí)別點(diǎn),若是,則將可用的識(shí)別點(diǎn)轉(zhuǎn)換成識(shí)別規(guī)則并加入格式識(shí)別引擎完成識(shí)別;否則重復(fù)以上步驟直至提取到可用的識(shí)別點(diǎn)直至完成識(shí)別。
有益效果為:
本方法解決了傳統(tǒng)方法中,對(duì)于腳本類格式識(shí)別難的問(wèn)題,采用基于腳本語(yǔ)法特點(diǎn)的方法,可以有效提高腳本類格式識(shí)別的準(zhǔn)確率和降低誤報(bào)率。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法實(shí)施例流程圖;
圖2為本發(fā)明提供的一種基于語(yǔ)法形式的腳本類文件格式識(shí)別系統(tǒng)實(shí)施例結(jié)構(gòu)圖。
具體實(shí)施方式
本發(fā)明給出了一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法及系統(tǒng)實(shí)施例,為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,并使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對(duì)本發(fā)明中技術(shù)方案作進(jìn)一步詳細(xì)的說(shuō)明:
本發(fā)明首先提供一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法實(shí)施例,如圖1所示,包括:
S101獲取并分析腳本類文件的語(yǔ)法特點(diǎn);所述腳本類文件包括腳本文件以及具有語(yǔ)法定義的文件;
其中,所述語(yǔ)法特點(diǎn)包括關(guān)鍵詞、函數(shù)聲明等形式。
S102針對(duì)分析后的語(yǔ)法特點(diǎn)提取至少一個(gè)識(shí)別點(diǎn),所述識(shí)別點(diǎn)為每種腳本類文件獨(dú)有的區(qū)別特征;
其中,提取單一識(shí)別點(diǎn)的為javascript腳本文件,它的識(shí)別點(diǎn)為匿名函數(shù)的形式;提取多個(gè)識(shí)別點(diǎn)的如MIME的信息標(biāo)簽,信息標(biāo)簽如”from”、”to”等字樣。
S103將所述至少一個(gè)識(shí)別點(diǎn)在待測(cè)試用例中進(jìn)行評(píng)估測(cè)試,判斷是否為可用的識(shí)別點(diǎn),若是,則將可用的識(shí)別點(diǎn)轉(zhuǎn)換成識(shí)別規(guī)則并加入格式識(shí)別引擎完成識(shí)別;否則重復(fù)以上步驟直至提取到可用的識(shí)別點(diǎn);
其中,可用的識(shí)別點(diǎn)是基于不同的識(shí)別方法轉(zhuǎn)換成相對(duì)應(yīng)的識(shí)別規(guī)則,識(shí)別方法包括但不限于正則、狀態(tài)機(jī),相對(duì)應(yīng)的識(shí)別規(guī)則包括正則表達(dá)式、狀態(tài)機(jī)序列等。
所述可用的識(shí)別點(diǎn)為評(píng)估測(cè)試結(jié)果中準(zhǔn)確率和誤報(bào)率達(dá)到預(yù)定閾值范圍的識(shí)別點(diǎn)。
本發(fā)明同時(shí)提供了一種基于語(yǔ)法形式的腳本類文件格式識(shí)別系統(tǒng)實(shí)施例,如圖2所示,包括:
分析模塊201,用于獲取并分析腳本類文件的語(yǔ)法特點(diǎn);所述腳本類文件包括腳本文件以及具有語(yǔ)法定義的文件;
提取模塊202,用于針對(duì)分析后的語(yǔ)法特點(diǎn)提取至少一個(gè)識(shí)別點(diǎn),所述識(shí)別點(diǎn)為每種腳本類文件獨(dú)有的區(qū)別特征;
測(cè)試模塊203,用于將所述至少一個(gè)識(shí)別點(diǎn)在待測(cè)試用例中進(jìn)行評(píng)估測(cè)試,判斷是否為可用的識(shí)別點(diǎn),若是,則將可用的識(shí)別點(diǎn)轉(zhuǎn)換成識(shí)別規(guī)則并加入格式識(shí)別引擎完成識(shí)別;否則重復(fù)以上步驟直至提取到可用的識(shí)別點(diǎn);
其中,可用的識(shí)別點(diǎn)是基于不同的識(shí)別方法轉(zhuǎn)換成相對(duì)應(yīng)的識(shí)別規(guī)則,識(shí)別方法包括但不限于正則、狀態(tài)機(jī),相對(duì)應(yīng)的識(shí)別規(guī)則包括正則表達(dá)式、狀態(tài)機(jī)序列等。
所述可用的識(shí)別點(diǎn)為評(píng)估測(cè)試結(jié)果中準(zhǔn)確率和誤報(bào)率達(dá)到預(yù)定閾值范圍的識(shí)別點(diǎn)。
本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同或相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。
如上所述,上述實(shí)施例給出了一種基于語(yǔ)法形式的腳本類文件格式識(shí)別方法,包括:獲取并分析腳本類文件的語(yǔ)法特點(diǎn);所述腳本類文件包括腳本文件以及具有語(yǔ)法定義的文件;針對(duì)分析后的語(yǔ)法特點(diǎn)提取至少一個(gè)識(shí)別點(diǎn),所述識(shí)別點(diǎn)為每種腳本類文件獨(dú)有的區(qū)別特征;將所述至少一個(gè)識(shí)別點(diǎn)在待測(cè)試用例中進(jìn)行評(píng)估測(cè)試,判斷是否為可用的識(shí)別點(diǎn),若是,則將可用的識(shí)別點(diǎn)轉(zhuǎn)換成識(shí)別規(guī)則并加入格式識(shí)別引擎完成識(shí)別;否則重復(fù)以上步驟直至提取到可用的識(shí)別點(diǎn);所述可用的識(shí)別點(diǎn)為評(píng)估測(cè)試結(jié)果中準(zhǔn)確率和誤報(bào)率達(dá)到預(yù)定閾值范圍的識(shí)別點(diǎn)。采用基于腳本語(yǔ)法特點(diǎn)的方法,可以有效提高腳本類格式識(shí)別的準(zhǔn)確度和降低誤報(bào)率。
以上實(shí)施例用以說(shuō)明而非限制本發(fā)明的技術(shù)方案。不脫離本發(fā)明精神和范圍的任何修改或局部替換,均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。