本發明涉及網絡安全,尤其涉及一種惡意網站識別方法和裝置。
背景技術:
1、近年來,不法分子利用惡意網站進行釣魚、欺詐等手段騙取錢財的事件屢屢發生,惡意網站可能會偽裝成合法的網站,以獲取用戶的個人信息、賬號密碼等敏感信息,從而實施釣魚欺詐行為;惡意網站還可能會嵌入病毒或者惡意軟件,通過用戶點擊或下載等方式,感染用戶的電腦、手機等設備,從而使得用戶的隱私數據泄露、計算機系統癱瘓等。為了暴露和打擊惡意網站,對惡意網站進行準確識別尤為重要。
2、在目前的相關技術中,對惡意網站的檢測識別通常使用以下兩種方法:
3、第一種是基于bert模型,直接將統一資源定位符(uniform?resource?locator,url)序列當做一般文本進行處理,從而對惡意網站進行識別。由于bert模型基于大規模的語料庫進行預訓練,而惡意網站的url特征可能與常規文本數據不同,存在領域間的遷移問題,惡意網站的url特定領域特征可能無法被bert模型充分學習,并且可能需要大量的數據來微調模型以適應特定任務,此外bert模型的預訓練是基于可以通過上下文推測出被遮蓋詞語的假設進行的,該假設是有魯棒性的,但是在基于url的惡意網站分類任務中,這個假設不一定存在,導致惡意網站識別效果較差。
4、第二種是使用機器學習,基于人工總結出來的url特征對惡意網站進行識別。由于惡意網站的形式和特征在不斷變化和演變,不斷有新的威脅和惡意行為涌現,僅依賴人工總結的特征無法及時適應這些新形式,此外,人工總結出的特征不可避免的丟失了原始url的語序信息,且人工特征可能無法捕捉到一些潛在的重要特征,從而影響惡意網站識別效果。
技術實現思路
1、本發明實施例提供一種惡意網站識別方法和裝置,用以解決上述現有的惡意網站識別方法中存在的識別效果不佳的技術問題。
2、第一方面,本發明實施例提供一種惡意網站識別方法,包括:
3、獲取網絡流量對應的url字符串、網絡流量特征和人工url特征;
4、將所述網絡流量特征和所述人工url特征進行拼接得到拼接人工特征,將所述url字符串轉化為向量;
5、將所述拼接人工特征和所述向量輸入惡意網站識別模型中,得到所述惡意網站識別模型輸出的惡意網站識別結果;
6、其中,所述惡意網站識別模型用于對所述向量進行特征提取,并將從所述向量提取出的特征與所述拼接人工特征進行融合,基于融合后的特征參數進行惡意網站的識別。
7、在一個實施例中,所述惡意網站識別模型包括分類器和多個堆疊的模塊,每個模塊均由自注意力層和交叉注意力層構成;
8、所述自注意力層用于獲取所述向量的原始序列,將所述原始序列中的每個元素通過不同的線性變化轉換成query、key和value三個部分;將query和key進行點乘后,對query和key的點乘結果進行歸一化處理,得到規范化自注意力值,再將規范化自注意力值與value進行點乘得到與所述原始序列相同維度的新序列;
9、所述交叉注意力層用于獲取所述新序列和所述拼接人工特征,將所述新序列中的每個元素通過不同的線性變化轉換成key和value兩個部分,以及將所述拼接人工特征升維后作為query部分;將key和value進行點乘后,對key和value的點乘結果進行歸一化處理,得到規范化自注意力值,再將規范化自注意力值與query進行點乘得到特征參數;
10、所述分類器由多層感知機組成,用于對所述特征參數進行分類計算,得到惡意網站的識別結果。
11、在一個實施例中,在將query和key進行點乘后之后,對query和key的點乘結果進行歸一化處理之前,還包括:對query和key的點乘結果進行縮放;在將key和value進行點乘后,對key和value的點乘結果進行歸一化處理之前,還包括:對key和value的點乘結果進行縮放;
12、在將所述拼接人工特征升維后作為query部分之前,還包括:對所述拼接人工特征進行升維,以使query、key和value具備相同的緯度。
13、在一個實施例中,所述惡意網站識別模型通過訓練數據集訓練得到,所述訓練數據集中包括多組樣本,每組樣本均包括所述拼接人工特征、所述向量以及用于標記樣本是否為惡意網站的標簽;在訓練過程中采用focal?loss損失函數,公式如下:
14、
15、其中,p表示當前樣本的預測置信度,y表示用于標記樣本是否為惡意網站的標簽,α表示平衡因子,γ表示調制因子。
16、在一個實施例中,所述網絡流量特征包括:交換字節數、交換的tcp包數、從服務器獲得的包數、從客戶端和服務器傳輸的數據包數、連接的ip總數、生成的ip數據包數、從客戶端和服務器傳輸的字節數和從服務器獲得的字節數中的至少一項;
17、所述人工url特征包括:url字符串長度、數字字符的數量、ip地址是否在主機名中、url的路徑中是否存在“//”符號、路徑長度、主機名長度和預設的多種特殊符號的數量中的至少一項。
18、在一個實施例中,在將所述拼接人工特征輸入惡意網站識別模型中之前,還包括:
19、采用如下公式對所述拼接人工特征中的各個特征進行數據標準化:
20、
21、其中,z表示數據標準化的結果,xmin表示任一特征的最大值,xmax表示任一特征的最小值。
22、第二方面,本發明實施例提供一種惡意網站識別裝置,包括:
23、數據獲取模塊,用于獲取網絡流量對應的url字符串、網絡流量特征和人工url特征;
24、數據預處理模塊,用于將所述網絡流量特征和所述人工url特征進行拼接得到拼接人工特征,將所述url字符串轉化為向量;
25、識別模塊,用于將所述拼接人工特征和所述向量輸入惡意網站識別模型中,得到所述惡意網站識別模型輸出的惡意網站識別結果;
26、其中,所述惡意網站識別模型用于對所述向量進行特征提取,并將從所述向量提取出的特征與所述拼接人工特征進行融合,基于融合后的特征參數進行惡意網站的識別。
27、第三方面,本發明實施例提供一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述程序時實現如上述任一種所述的惡意網站識別方法的步驟。
28、第四方面,本發明實施例還提供一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現如上述任一種所述的惡意網站識別方法的步驟。
29、第五方面,本發明實施例還提供一種計算機程序產品,該計算機程序被處理器執行時實現如上述任一種所述的惡意網站識別方法的步驟。
30、本發明實施例提供的惡意網站識別方法和裝置,通過獲取網絡流量對應的url字符串、網絡流量特征和人工url特征;將網絡流量特征和人工url特征進行拼接得到拼接人工特征,將url字符串轉化為向量;將拼接人工特征和向量輸入惡意網站識別模型中,得到惡意網站識別模型輸出的惡意網站識別結果。通過上述方法和裝置的應用,有機的結合了url字符串中的特征、基于先驗知識構建的人工url特征以及網絡流量特征,避免了單純使用bert等語言模型來處理url特征進行惡意網站識別帶來的領域間的遷移問題,以及避免了需要大量有標注數據進行模型微調的問題,有助于提高模型的可解釋性。此外,通過將網絡流量特征納入考量,增加了判斷惡意網站的依據,提高了惡意網站識別的準確性。