專(zhuān)利名稱(chēng):一種基于空間布局的釣魚(yú)網(wǎng)頁(yè)檢測(cè)及其實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種釣魚(yú)頁(yè)檢測(cè)的方法,主要從網(wǎng)頁(yè)視覺(jué)布局相似性角度對(duì)釣魚(yú)網(wǎng)頁(yè) 進(jìn)行匹配和識(shí)別,屬于信息安全領(lǐng)域。
背景技術(shù):
“釣魚(yú)網(wǎng)站”是隨著網(wǎng)絡(luò)普及和在線(xiàn)交易增加而變得異常猖獗的網(wǎng)絡(luò)詐騙行為。 “釣魚(yú)網(wǎng)站”是犯罪分子做出的詐騙網(wǎng)站,“釣魚(yú)網(wǎng)站”通常與銀行網(wǎng)站或其他知名網(wǎng)站幾乎 完全相同,從而引誘網(wǎng)站使用者在“釣魚(yú)網(wǎng)站”上提交出敏感信息(如用戶(hù)名、口令、帳號(hào) ID、ATM PIN碼或信用卡詳細(xì)信息等)[Zhang2007]。最典型的網(wǎng)絡(luò)釣魚(yú)攻擊過(guò)程如下首先 將用戶(hù)引誘到一個(gè)通過(guò)精心設(shè)計(jì)與目標(biāo)組織的網(wǎng)站非常相似的釣魚(yú)網(wǎng)站上,然后獲取用戶(hù) 在該釣魚(yú)網(wǎng)站上輸入的個(gè)人敏感信息,例如銀行帳號(hào)、銀行密碼等。通常這個(gè)攻擊過(guò)程不會(huì) 讓受害者警覺(jué)。這些個(gè)人信息對(duì)釣魚(yú)網(wǎng)站持有者具有非常大的吸引力,通過(guò)使用竊取到的 個(gè)人信息,他們可以假冒受害者進(jìn)行欺詐性金融交易,獲得極大的經(jīng)濟(jì)利益,而受害者們卻 因此而遭受到巨大的經(jīng)濟(jì)損失,非但如此,被竊取的個(gè)人信息還可能被用于其他非法活動(dòng)。 如何識(shí)別釣魚(yú)網(wǎng)站,如何保證網(wǎng)站信息傳輸?shù)谋C芡暾裕l(fā)的顯示出其重要性和必要 性。當(dāng)前釣魚(yú)網(wǎng)站識(shí)別主要靠計(jì)算機(jī)自動(dòng)識(shí)別和人工識(shí)別兩種方式,人工識(shí)別采用黑 名單機(jī)制,用戶(hù)對(duì)某個(gè)網(wǎng)站進(jìn)行舉報(bào),通過(guò)人工鑒定是否為釣魚(yú)網(wǎng)站,這樣顯然速度太慢。 計(jì)算機(jī)自動(dòng)識(shí)別目前主要是基于頁(yè)面視覺(jué)相似性檢測(cè)方式判斷是否為釣魚(yú)網(wǎng)站,電腦通過(guò) 抽取網(wǎng)頁(yè)的視覺(jué),文字特征與大多數(shù)主要的合法網(wǎng)站頁(yè)面進(jìn)行相似度對(duì)比或進(jìn)行機(jī)器學(xué) 習(xí),從而判斷是否為釣魚(yú)網(wǎng)站??臻g數(shù)據(jù)庫(kù)是一種在地理信息方面應(yīng)用較多的空間查詢(xún)技術(shù),采用R樹(shù)為數(shù)據(jù)結(jié) 構(gòu)。由于網(wǎng)頁(yè)布局特征信息需要查找視覺(jué)上靠近的所有矩形,這里結(jié)合空間數(shù)據(jù)庫(kù)存儲(chǔ)網(wǎng) 頁(yè)的特征,可快速獲取特征庫(kù)中所有視覺(jué)上相似以及位置上靠近的布局特征。[Zhang2007] Y. Zhang, J. Hong, and L. Cranor. Cantina :A content-based approach todetecting phishing websites. WWW,2007[Fu2006]Anthony Y. Fu, Wenyin Liu, Xiaotie Deng. Detecting Phishing Web Pages withVisual Similarity Assessment based on Earth Mover' s Distance (EMD). IEEETransactions on Dependable and Secure Computing,2006, 3(4), pages 301-31
發(fā)明內(nèi)容
技術(shù)問(wèn)題本發(fā)明的目的是提供一種基于空間布局的釣魚(yú)網(wǎng)頁(yè)檢測(cè)及其實(shí)現(xiàn)方 法,以往釣魚(yú)網(wǎng)頁(yè)識(shí)別主要通過(guò)人工識(shí)別,目前現(xiàn)有的計(jì)算機(jī)識(shí)別的釣魚(yú)網(wǎng)頁(yè)檢測(cè)技術(shù)主 要從網(wǎng)頁(yè)元素角度對(duì)檢測(cè)網(wǎng)頁(yè)進(jìn)行匹配檢測(cè),匹配速度往往無(wú)法達(dá)到實(shí)際使用的要求。本 發(fā)明從網(wǎng)頁(yè)的布局角度進(jìn)行特征抽取、特征匹配,大大提高了頁(yè)面匹配的速度,同時(shí)保證了 高精度和低誤判率。
4
技術(shù)方案本發(fā)明結(jié)合瀏覽器渲染引擎,對(duì)指定的可疑網(wǎng)頁(yè)進(jìn)行視覺(jué)布局特征抽 取,再利用空間數(shù)據(jù)庫(kù)索引查找空間位置相近、視覺(jué)相似的布局特征,經(jīng)過(guò)統(tǒng)計(jì)分析找到樣 本空間中最為相似的合法網(wǎng)頁(yè),從而達(dá)到釣魚(yú)網(wǎng)頁(yè)檢測(cè)的目的。該方法由5個(gè)模塊組成,其中最上層是用戶(hù)界面模塊,主要負(fù)責(zé)獲取用戶(hù)輸入并 將結(jié)果反饋回用戶(hù),中間是控制模塊,負(fù)責(zé)調(diào)度所有功能模塊完成釣魚(yú)網(wǎng)站檢測(cè),最核心的 是3個(gè)功能模塊,即布局特征抽取模塊、空間數(shù)據(jù)庫(kù)模塊、機(jī)器學(xué)習(xí)匹配模塊;其中布局 特征抽取模塊抽取塊狀網(wǎng)頁(yè)布局特征,該布局特征在訓(xùn)練階段送交空間數(shù)據(jù)庫(kù)模塊建立索 引或進(jìn)行查詢(xún),在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段該模塊抽取的布局特征送至空間數(shù)據(jù)庫(kù)模塊查詢(xún)相似 特征;空間數(shù)據(jù)庫(kù)模塊在訓(xùn)練時(shí)期對(duì)數(shù)據(jù)特征建立空間索引,在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段進(jìn)行相 似特征的快速查詢(xún),查詢(xún)所得相似特征交給機(jī)器學(xué)習(xí)匹配模塊進(jìn)行識(shí)別;機(jī)器學(xué)習(xí)匹配模 塊在系統(tǒng)訓(xùn)練階段接收特征提取模塊傳來(lái)的特征數(shù)據(jù)進(jìn)行訓(xùn)練,優(yōu)化網(wǎng)頁(yè)相似性閥值的參 數(shù);在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段,接收特征提取模塊傳來(lái)的特征數(shù)據(jù),與空間數(shù)據(jù)庫(kù)中相似特征, 計(jì)算網(wǎng)頁(yè)之間的相似性,最后根據(jù)網(wǎng)頁(yè)相似性閥值判斷釣魚(yú)網(wǎng)頁(yè);在釣魚(yú)網(wǎng)頁(yè)檢測(cè)過(guò)程中通過(guò)瀏覽器內(nèi)核解析網(wǎng)頁(yè)源代碼并提取空間布局特征,以 此作為釣魚(yú)網(wǎng)頁(yè)檢測(cè)的依據(jù),并在特征庫(kù)中結(jié)合空間數(shù)據(jù)庫(kù)提高查詢(xún)速度,具體實(shí)現(xiàn)步驟 為步驟1)訓(xùn)練階段數(shù)據(jù)準(zhǔn)備過(guò)程采集至少100個(gè)可能被釣魚(yú)網(wǎng)頁(yè)模仿的正規(guī)網(wǎng) 站頁(yè)面,并抽取出布局特征組織成樣本數(shù)據(jù);將所有樣本數(shù)據(jù)的布局特征插入空間數(shù)據(jù)庫(kù); 采集至少100個(gè)釣魚(yú)網(wǎng)站頁(yè)面以及100個(gè)普通網(wǎng)頁(yè),并抽取特征組織成測(cè)試數(shù)據(jù);布局特征由以下四個(gè)數(shù)值屬性組成^DOM節(jié)點(diǎn)的高度這里的高度表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及 javascript源代碼以后所得網(wǎng)頁(yè)元素在垂直方向上象素點(diǎn)個(gè)數(shù),^DOM節(jié)點(diǎn)的寬度這里的寬度表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及 javascript源代碼以后所得網(wǎng)頁(yè)元素在水平方向上象素點(diǎn)個(gè)數(shù),^DOM節(jié)點(diǎn)的X坐標(biāo)設(shè)Web瀏覽器顯示區(qū)域最左上角的象素點(diǎn)坐標(biāo)為(0,0),這里的X坐標(biāo)表示瀏覽器 引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素的 最左上角象素點(diǎn)相對(duì)于(0,0)坐標(biāo)在水平方向上的距離,其中距離為1表示相差一個(gè)象素
占,^DOM節(jié)點(diǎn)的Y坐標(biāo)設(shè)Web瀏覽器顯示區(qū)域最左上角的象素點(diǎn)坐標(biāo)為(0,0),這里的X坐標(biāo)表示瀏覽器 引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素的 最左上角象素點(diǎn)相對(duì)于(0,0)坐標(biāo)在垂直方向上的距離,其中距離為1表示相差一個(gè)象素
占,步驟2)測(cè)試數(shù)據(jù)集的標(biāo)定過(guò)程將測(cè)試數(shù)據(jù)中的所有普通網(wǎng)頁(yè)標(biāo)注為“false”, 表示非釣魚(yú)網(wǎng)頁(yè);再將測(cè)試數(shù)據(jù)中的所有釣魚(yú)網(wǎng)頁(yè)標(biāo)注為“true”,表示釣魚(yú)網(wǎng)頁(yè);步驟3)對(duì)所有測(cè)試網(wǎng)頁(yè)的特征在空間數(shù)據(jù)庫(kù)中查找相似的特征,并統(tǒng)計(jì)找到每
5一個(gè)測(cè)試網(wǎng)頁(yè)在庫(kù)中最相似的網(wǎng)頁(yè),計(jì)算它們的相似度作為測(cè)試網(wǎng)頁(yè)與庫(kù)的相似度;步驟4)將所有測(cè)試網(wǎng)頁(yè)的標(biāo)注以及測(cè)試網(wǎng)頁(yè)與庫(kù)的相似度送入機(jī)器學(xué)習(xí)匹配模 ±夬,遍歷所有可能的相似度閥值,找到一個(gè)值T使得相似度大于T的釣魚(yú)網(wǎng)頁(yè)數(shù)量與相似度 小于T的釣魚(yú)網(wǎng)頁(yè)數(shù)量差值最大,T作為釣魚(yú)網(wǎng)頁(yè)相似度閥值;步驟5)對(duì)疑似釣魚(yú)網(wǎng)頁(yè)的檢測(cè)過(guò)程對(duì)可疑網(wǎng)頁(yè)采集布局特征;用可疑網(wǎng)頁(yè)的特 征在空間數(shù)據(jù)庫(kù)中查找相似的特征,并統(tǒng)計(jì)找到可疑網(wǎng)頁(yè)在庫(kù)中最相似的網(wǎng)頁(yè),計(jì)算它們 的相似度作為可疑網(wǎng)頁(yè)與庫(kù)的相似度;將待可疑網(wǎng)頁(yè)的與庫(kù)的相似度送入訓(xùn)練好的機(jī)器學(xué) 習(xí)匹配模塊進(jìn)行預(yù)測(cè),預(yù)測(cè)所得結(jié)果作為本方法最終的釣魚(yú)網(wǎng)站檢測(cè)結(jié)果。有益效果由于基于網(wǎng)絡(luò)拓?fù)洳捎妹嫦嗾军c(diǎn)分析手段,本發(fā)明具有以下一些特殊 優(yōu)點(diǎn)和有益成果高準(zhǔn)確率機(jī)器學(xué)習(xí)主要的評(píng)價(jià)指標(biāo)為精度(precision)和召回率(recall),在 釣魚(yú)網(wǎng)站檢測(cè)識(shí)別中,精度表示機(jī)器判斷為釣魚(yú)網(wǎng)頁(yè)的所有頁(yè)面中,確實(shí)是釣魚(yú)網(wǎng)頁(yè)的比 例,召回率表示所有釣魚(yú)網(wǎng)頁(yè)中被機(jī)器識(shí)別為釣魚(yú)網(wǎng)頁(yè)所占比例。顯然精度和召回率越高 表示效果越好。經(jīng)過(guò)實(shí)驗(yàn)證明,本發(fā)明提出的釣魚(yú)網(wǎng)頁(yè)檢測(cè)采用我們提出的機(jī)器學(xué)習(xí)模型 進(jìn)行機(jī)器學(xué)習(xí)以后檢測(cè)精度和召回率分別為97. 9%和95%,該結(jié)果與目前最好的釣魚(yú)網(wǎng) 頁(yè)自動(dòng)檢測(cè)技術(shù)不相上下。高速檢測(cè)該發(fā)明最大的優(yōu)勢(shì)在于大大縮短了檢測(cè)時(shí)間,由于結(jié)合空間數(shù)據(jù)庫(kù)并 對(duì)數(shù)據(jù)庫(kù)查詢(xún)做了一定的優(yōu)化改進(jìn),可以充分利用樹(shù)形結(jié)構(gòu)降低時(shí)間復(fù)雜度的特性,實(shí)驗(yàn) 中我們?cè)谝慌_(tái)CPU主頻1. 6GHz內(nèi)存為2. 5G的個(gè)人筆記本電腦上運(yùn)行連續(xù)檢測(cè)100個(gè)網(wǎng)頁(yè) 用時(shí)不到2秒。所以目前可以投入實(shí)際使用。應(yīng)用領(lǐng)域廣泛由于本發(fā)明實(shí)際提出了一種網(wǎng)頁(yè)布局相似性計(jì)算方案,所以在網(wǎng) 頁(yè)相似性上用途廣泛。例如如果除去本發(fā)明中的機(jī)器學(xué)習(xí)部分,可以結(jié)合布局特征抽取模 塊以及空間數(shù)據(jù)庫(kù)模塊實(shí)現(xiàn)一個(gè)網(wǎng)頁(yè)搜索引擎,該搜索引擎以一個(gè)網(wǎng)頁(yè)為輸入,查詢(xún)所有 與輸入網(wǎng)頁(yè)視覺(jué)上布局相似的網(wǎng)頁(yè),我們對(duì)200個(gè)網(wǎng)頁(yè)進(jìn)行了搜索引擎命中率的實(shí)驗(yàn),結(jié) 果發(fā)現(xiàn)使用本發(fā)明提出的方法在前2條搜索結(jié)果中搜索命中率高達(dá)95%。
圖1是本發(fā)明方案在參數(shù)訓(xùn)練時(shí)期的數(shù)據(jù)流圖,圖中A表示被模仿的正規(guī)網(wǎng)頁(yè)的 數(shù)據(jù),B表示測(cè)試網(wǎng)頁(yè)的數(shù)據(jù)。圖2是本發(fā)明方案在釣魚(yú)網(wǎng)頁(yè)檢測(cè)時(shí)期的數(shù)據(jù)流圖,圖中A表示被模仿的正規(guī)網(wǎng) 頁(yè)的數(shù)據(jù),C表示當(dāng)前檢測(cè)的可疑網(wǎng)頁(yè)的數(shù)據(jù)。圖3是基于空間布局相似性的釣魚(yú)網(wǎng)頁(yè)檢測(cè)系統(tǒng)模塊結(jié)構(gòu),其中模塊之間的箭頭 表示調(diào)用與訪(fǎng)問(wèn)權(quán)限,例如A- > B,表示A模塊可以調(diào)用B模塊,或者A模塊可以訪(fǎng)問(wèn)B數(shù) 據(jù)。圖4是布局特征抽取模塊中所使用的布局特征抽取算法,其中的DOM樹(shù)是HTML源 代碼結(jié)構(gòu),獲取節(jié)點(diǎn)的顯示高度、寬度、Top值、Left值需要結(jié)合使用瀏覽器的布局渲染引擎。圖5是空間數(shù)據(jù)庫(kù)模塊改進(jìn)查詢(xún)算法,查詢(xún)時(shí)從R樹(shù)的根節(jié)點(diǎn)起,有條件地遍歷所 有符合要求的R樹(shù)節(jié)點(diǎn),所有符合條件的R數(shù)節(jié)點(diǎn)的最小邊框矩形作為特征加入到特征隊(duì)列中返回。
具體實(shí)施例方式本發(fā)明技術(shù)方案主要分為三大部分1.布局特征抽取部分。這里的布局特征是指網(wǎng)頁(yè)上所有可見(jiàn)信息的矩形邊界,比如網(wǎng)頁(yè)中的一段文字的 矩形邊界,一副圖片的矩形邊界,或者視覺(jué)上靠近的元素組合的矩形邊界等。布局特征抽取 模塊的主要工作就是結(jié)合瀏覽器內(nèi)核以及D0M樹(shù)分析工具抽取網(wǎng)頁(yè)中所有大小合適的矩 形塊信息。所以該模塊的功能就是遍歷一個(gè)web頁(yè)面的D0M樹(shù),結(jié)合瀏覽器內(nèi)核中的布局渲 染引擎分析該頁(yè)面的html,ess, js源代碼,獲取每個(gè)節(jié)點(diǎn)所代表的標(biāo)簽的顯示位置和大 小,并按照指定格式記錄下這些信息組成網(wǎng)頁(yè)布局特征信息。在特征庫(kù)采集階段,該模塊將采集到的可能被模仿的合法網(wǎng)頁(yè)布局特征數(shù)據(jù)交給 空間數(shù)據(jù)庫(kù)模塊進(jìn)行數(shù)據(jù)存儲(chǔ);在釣魚(yú)網(wǎng)頁(yè)分析階段,該模塊將疑似頁(yè)面的布局特征數(shù)據(jù) 傳給頁(yè)面布局分析模塊進(jìn)行綜合分析。2.空間數(shù)據(jù)庫(kù)部分空間數(shù)據(jù)庫(kù)采用R樹(shù)為數(shù)據(jù)結(jié)構(gòu),是一種在地理信息方面應(yīng)用較多的空間查詢(xún)技 術(shù),由于網(wǎng)頁(yè)布局特征信息需要查找視覺(jué)上靠近的所有矩形,這里結(jié)合空間數(shù)據(jù)庫(kù)存儲(chǔ)網(wǎng) 頁(yè)的特征,可以快速獲取特征庫(kù)中所有視覺(jué)上相似以及位置上靠近的布局特征。下面簡(jiǎn)單介紹一下空間數(shù)據(jù)庫(kù)所采用的R樹(shù)數(shù)據(jù)結(jié)構(gòu)R樹(shù)是一種與B樹(shù)相似的樹(shù)形數(shù)據(jù)結(jié)構(gòu),但是主要用于空間數(shù)據(jù)的組建和獲取,比 如可以使用空間數(shù)據(jù)庫(kù)“查找在當(dāng)前位置兩千米范圍內(nèi)的所有加油站”。該數(shù)據(jù)結(jié)構(gòu)使用 層次聚合的方法分割空間,這些分割以后的空間可能會(huì)重疊,空間使用最小邊框矩形表示R 樹(shù)中的每一個(gè)節(jié)點(diǎn)都有一定數(shù)量的入口(數(shù)量有指定的上限),每一個(gè)非葉節(jié)點(diǎn)的入口存 儲(chǔ)兩類(lèi)信息,一類(lèi)是該入口對(duì)應(yīng)的子節(jié)點(diǎn)的索引,另一類(lèi)信息則是該字節(jié)點(diǎn)的MBR。使用空 間數(shù)據(jù)庫(kù)的這種樹(shù)形結(jié)構(gòu)以及最小邊框矩形的思想,可以快速地在海量數(shù)據(jù)中查詢(xún)地理上 或者視覺(jué)上靠近的數(shù)據(jù)。這里使用空間數(shù)據(jù)庫(kù)的這種特性可以對(duì)特征庫(kù)中的所有布局信息進(jìn)行有效索引, 當(dāng)獲取到待檢測(cè)網(wǎng)頁(yè)的布局信息以后可以進(jìn)行快速查詢(xún),得到視覺(jué)上靠近的所有布局信 肩、o該模塊在組建特征庫(kù)時(shí)候建立空間數(shù)據(jù)索引,在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段進(jìn)行空間數(shù)據(jù) 查詢(xún)。3.機(jī)器學(xué)習(xí)匹配部分。其核心任務(wù)就是根據(jù)待檢測(cè)頁(yè)面的布局信息以及特征庫(kù)中與待檢測(cè)頁(yè)面中相似 的特征塊綜合統(tǒng)計(jì),根據(jù)指定的網(wǎng)頁(yè)相似性算法,找到相似程度最高的n個(gè)網(wǎng)頁(yè),如果相似 性超過(guò)一定的閥值,則認(rèn)為待檢測(cè)網(wǎng)頁(yè)是釣魚(yú)網(wǎng)頁(yè),如果低于閥值,則認(rèn)為是正常網(wǎng)頁(yè)。其 中閥值的確定需要使用訓(xùn)練階段的標(biāo)注數(shù)據(jù)根據(jù)我們的機(jī)器學(xué)習(xí)算法進(jìn)行訓(xùn)練所得。 基于拓?fù)涞尼烎~(yú)網(wǎng)站檢測(cè)及其實(shí)現(xiàn)方法所包含的步驟為主要可以分為兩大部分
1.機(jī)器學(xué)習(xí)模塊的訓(xùn)練步驟1)采集至少100個(gè)可能被釣魚(yú)網(wǎng)頁(yè)模仿的正規(guī)網(wǎng)站頁(yè)面,并抽取出布局特征 組織成樣本數(shù)據(jù);步驟2)將所有樣本數(shù)據(jù)的布局特征插入空間數(shù)據(jù)庫(kù);步驟3)采集至少100個(gè)釣魚(yú)網(wǎng)站頁(yè)面以及100個(gè)普通網(wǎng)頁(yè),并抽取特征組織成測(cè) 試數(shù)據(jù);步驟4)將測(cè)試數(shù)據(jù)中的所有普通網(wǎng)頁(yè)標(biāo)注為“false”,表示非釣魚(yú)網(wǎng)頁(yè);再將測(cè) 試數(shù)據(jù)中的所有釣魚(yú)網(wǎng)頁(yè)標(biāo)注為“ true ”,表示釣魚(yú)網(wǎng)頁(yè);步驟5)對(duì)所有測(cè)試網(wǎng)頁(yè)的特征在空間數(shù)據(jù)庫(kù)中查找相似的特征,并按照Sim公式 統(tǒng)計(jì)找到每一個(gè)測(cè)試網(wǎng)頁(yè)在庫(kù)中最相似的網(wǎng)頁(yè),計(jì)算它們的相似度作為測(cè)試網(wǎng)頁(yè)與庫(kù)的相 似度;步驟6)將所有測(cè)試網(wǎng)頁(yè)的標(biāo)注以及測(cè)試網(wǎng)頁(yè)與庫(kù)的相似度送入機(jī)器學(xué)習(xí)匹配模 塊,使用機(jī)器學(xué)習(xí)匹配部分的數(shù)據(jù)訓(xùn)練算法計(jì)算出釣魚(yú)網(wǎng)頁(yè)相似度閥值。2.釣魚(yú)網(wǎng)站檢測(cè)步驟1)對(duì)可疑網(wǎng)頁(yè)采集布局特征步驟2)用可疑網(wǎng)頁(yè)的特征在空間數(shù)據(jù)庫(kù)中查找相似的特征,并按照Sim公式統(tǒng)計(jì) 找到可疑網(wǎng)頁(yè)在庫(kù)中最相似的網(wǎng)頁(yè),計(jì)算它們的相似度作為可疑網(wǎng)頁(yè)與庫(kù)的相似度;步驟3)將待可疑網(wǎng)頁(yè)的與庫(kù)的相似度送入訓(xùn)練好的機(jī)器學(xué)習(xí)匹配模塊進(jìn)行預(yù) 測(cè),預(yù)測(cè)所得結(jié)果作為本方案最終的釣魚(yú)網(wǎng)站檢測(cè)結(jié)果。其中的各個(gè)模塊的方法1.機(jī)器學(xué)習(xí)匹配部分,釣魚(yú)網(wǎng)頁(yè)相似度閥值訓(xùn)練步驟步驟1)計(jì)算所有釣魚(yú)網(wǎng)頁(yè)與普通網(wǎng)頁(yè)與特征庫(kù)的相似度S ;步驟2)找到S中最大的相似度Smax,以及最小的相似度Smin ;步驟3)找到S中所有相似度值的兩兩之間最小差值step ;步驟4)設(shè)定閥值T初始值為Smin步驟5)統(tǒng)計(jì)標(biāo)注為“true”的網(wǎng)頁(yè)的相似度在T以上的個(gè)數(shù)為T(mén)P,統(tǒng)計(jì)標(biāo)注為 "false"的網(wǎng)頁(yè)的相似度在T以上的個(gè)數(shù)為FP ;步驟6)計(jì)算正確肯定率TPR,以及錯(cuò)誤肯定率FPR ;步驟7)記錄在當(dāng)前閥值T下TPR-FPR的值;步驟8) T = T+step,如果T > Smax則進(jìn)入步驟9,否則跳轉(zhuǎn)至步驟5 ;步驟9)找到所有TPR-FPR中最大的值所對(duì)應(yīng)的閥值T,以此作為機(jī)器學(xué)習(xí)匹配模 塊訓(xùn)練所得釣魚(yú)網(wǎng)頁(yè)相似度閥值。1.機(jī)器學(xué)習(xí)匹配部分,釣魚(yú)網(wǎng)頁(yè)檢測(cè)步驟步驟1)如果可疑網(wǎng)頁(yè)與普通網(wǎng)頁(yè)與特征庫(kù)的相似度S大于等于訓(xùn)練好的閥值T, 則認(rèn)為可疑網(wǎng)頁(yè)是釣魚(yú)網(wǎng)頁(yè);如果可以網(wǎng)頁(yè)與普通網(wǎng)頁(yè)與特征庫(kù)的相似度S小于訓(xùn)練好的 閥值T,則認(rèn)為可疑網(wǎng)頁(yè)是普通網(wǎng)頁(yè);1.系統(tǒng)模塊之間的關(guān)系系統(tǒng)由5個(gè)模塊組成(見(jiàn)圖3),其中最上層是用戶(hù)界面模塊,主要負(fù)責(zé)獲取用戶(hù)輸 入并將結(jié)果反饋回用戶(hù),中間是控制模塊,負(fù)責(zé)調(diào)度所有功能模塊完成釣魚(yú)網(wǎng)站檢測(cè)。共有3個(gè)功能模塊布局特征抽取模塊,負(fù)責(zé)按照?qǐng)D4中的特征抽取算法抽取網(wǎng)頁(yè)布局特征,該布局 特征在訓(xùn)練階段送交空間數(shù)據(jù)庫(kù)模塊建立索引或進(jìn)行查詢(xún),在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段該模塊抽 取的布局特征送至空間數(shù)據(jù)庫(kù)模塊查詢(xún)相似特征??臻g數(shù)據(jù)庫(kù)模塊,該模塊對(duì)以往的空間數(shù)據(jù)庫(kù)模塊進(jìn)行了改進(jìn),改進(jìn)算法參考下 面的空間數(shù)據(jù)庫(kù)的索引和查詢(xún)算法,該模塊的功能是對(duì)訓(xùn)練數(shù)據(jù)特征建立空間索引,在釣 魚(yú)網(wǎng)頁(yè)檢測(cè)階段進(jìn)行相似特征的快速查詢(xún),查詢(xún)所得相似特征交給機(jī)器學(xué)習(xí)匹配模塊進(jìn)行 識(shí)別;機(jī)器學(xué)習(xí)匹配模塊,在系統(tǒng)訓(xùn)練階段接收特征提取模塊傳來(lái)的特征數(shù)據(jù)進(jìn)行訓(xùn) 練,優(yōu)化網(wǎng)頁(yè)相似性閥值的參數(shù);在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段,接收特征提取模塊傳來(lái)的特征數(shù) 據(jù),與空間數(shù)據(jù)庫(kù)中相似特征,計(jì)算網(wǎng)頁(yè)之間的相似性,最后根據(jù)網(wǎng)頁(yè)相似性閥值判斷釣魚(yú) 網(wǎng)頁(yè)。2.系統(tǒng)模塊的實(shí)現(xiàn)a)布局特征抽取模塊布局特征抽取模塊需要調(diào)用瀏覽器布局引擎,以及D0M源代碼分析工具,對(duì)制定 URL的HTML文檔及其附屬圖片文件,ess文件,javascript文件進(jìn)行分析,最終抽取出布局 特征。布局特征由以下四個(gè)數(shù)值屬性組成 D0M節(jié)點(diǎn)的高度這里的高度表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及 javascript源代碼以后所得網(wǎng)頁(yè)元素在垂直方向上象素點(diǎn)個(gè)數(shù)。 D0M節(jié)點(diǎn)的寬度這里的寬度表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及 javascript源代碼以后所得網(wǎng)頁(yè)元素在水平方向上象素點(diǎn)個(gè)數(shù)。^DOM節(jié)點(diǎn)的X坐標(biāo)設(shè)Web瀏覽器顯示區(qū)域最左上角的象素點(diǎn)坐標(biāo)為(0,0),這里的乂坐標(biāo)表示瀏覽器 引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素的 最左上角象素點(diǎn)相對(duì)于(0,0)坐標(biāo)在水平方向上的距離,其中距離為1表示相差一個(gè)象素
點(diǎn)o D0M節(jié)點(diǎn)的Y坐標(biāo)設(shè)Web瀏覽器顯示區(qū)域最左上角的象素點(diǎn)坐標(biāo)為(0,0),這里的X坐標(biāo)表示瀏覽器 引擎解析了網(wǎng)頁(yè)的HTML源代碼,ess源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素的 最左上角象素點(diǎn)相對(duì)于(0,0)坐標(biāo)在垂直方向上的距離,其中距離為1表示相差一個(gè)象素 點(diǎn)o在理解Web瀏覽器工作原理的情況下,選擇一款主流的瀏覽器內(nèi)核,了解該瀏覽 器內(nèi)核的API,并了解如何調(diào)用D0M源代碼分析工具分析網(wǎng)頁(yè)的HTML源代碼。該模塊的具 體實(shí)施步驟如下步驟1)使用所選擇的Web瀏覽器解析需要抽取特征的網(wǎng)頁(yè);步驟2)獲取該頁(yè)面的HTML源代碼并使用D0M分析工具解析源代碼;
步驟3)根據(jù)圖4中的算法獲取所有D0M節(jié)點(diǎn)的布局特征。b)空間數(shù)據(jù)庫(kù)模塊該模塊結(jié)合空間數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)索引,并在此基礎(chǔ)上對(duì)傳統(tǒng)意義上的空間數(shù)據(jù)庫(kù) 進(jìn)行算法上的改進(jìn),使之更適應(yīng)釣魚(yú)網(wǎng)頁(yè)檢測(cè)查詢(xún)。具體實(shí)施步驟如下步驟1)設(shè)計(jì)并實(shí)現(xiàn)一個(gè)以R樹(shù)為數(shù)據(jù)結(jié)構(gòu)的空間數(shù)據(jù)庫(kù)模塊,可以對(duì)輸入的任意 形狀進(jìn)行插入、修改、刪除、查詢(xún),其中查詢(xún)應(yīng)可以進(jìn)行一般的空間查詢(xún),比如輸入一個(gè) 矩形,查找數(shù)據(jù)庫(kù)中包含在該矩形內(nèi)的所有圖形,或者查找與該矩形中心距小于15的所有 矩形;步驟2)按照?qǐng)D5中的算法改進(jìn)空間數(shù)據(jù)庫(kù)的查詢(xún)過(guò)程;步驟3)所有查詢(xún)結(jié)果按照與查詢(xún)特征的中心距降序的標(biāo)準(zhǔn)進(jìn)行排序;c)機(jī)器學(xué)習(xí)匹配模塊根據(jù)被檢測(cè)網(wǎng)頁(yè)A的特征以及從空間數(shù)據(jù)庫(kù)中所得與所有A的特征相似的所有特 征綜合分析,找到特征庫(kù)中與A最相似的網(wǎng)頁(yè)B,進(jìn)而計(jì)算A與B的相似度,如果這一相似度 超過(guò)預(yù)定閥值,則認(rèn)為A是釣魚(yú)網(wǎng)頁(yè),反之則認(rèn)為A不是釣魚(yú)網(wǎng)頁(yè)。這一模塊需要根據(jù)前面抽取的布局特征計(jì)算兩個(gè)頁(yè)面之間的相似度,首先需要了 解一個(gè)對(duì)應(yīng)特征塊的概念,即兩個(gè)網(wǎng)頁(yè)A與B中如果分別有兩個(gè)特征塊A-1與B-1,如果A-1 與B-1的中心距小于預(yù)定的中心距閥值D,并且A-1與B-1的寬度之比在預(yù)定范圍內(nèi),高度 之比也在預(yù)定分為內(nèi),則認(rèn)為A-2塊與B-1塊相對(duì)應(yīng),根據(jù)實(shí)驗(yàn)所得結(jié)果,這里取D為50個(gè) 像素點(diǎn),寬度比例范圍為8,1.2],高度比例范圍為
。相似度計(jì)算公式如下
n — n n 2 [⑴ 02] Sim(nq,nr, ncor) = (1 ——q]——-).
max( , )nq -nr nq表示A頁(yè)面中的特征塊總數(shù),r^表示B頁(yè)面中的特征塊總數(shù),n。 表示兩頁(yè)面對(duì) 應(yīng)的特征塊總數(shù)。計(jì)算所得Sim為兩個(gè)網(wǎng)頁(yè)之間的相似值。
10
權(quán)利要求
一種基于空間布局的釣魚(yú)網(wǎng)頁(yè)檢測(cè)方法,其特征在于該方法由5個(gè)模塊組成,其中最上層是用戶(hù)界面模塊,主要負(fù)責(zé)獲取用戶(hù)輸入并將結(jié)果反饋回用戶(hù),中間是控制模塊,負(fù)責(zé)調(diào)度所有功能模塊完成釣魚(yú)網(wǎng)站檢測(cè),最核心的是3個(gè)功能模塊,即布局特征抽取模塊、空間數(shù)據(jù)庫(kù)模塊、機(jī)器學(xué)習(xí)匹配模塊;其中布局特征抽取模塊抽取塊狀網(wǎng)頁(yè)布局特征,該布局特征在訓(xùn)練階段送交空間數(shù)據(jù)庫(kù)模塊建立索引或進(jìn)行查詢(xún),在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段該模塊抽取的布局特征送至空間數(shù)據(jù)庫(kù)模塊查詢(xún)相似特征;空間數(shù)據(jù)庫(kù)模塊在訓(xùn)練時(shí)期對(duì)數(shù)據(jù)特征建立空間索引,在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段進(jìn)行相似特征的快速查詢(xún),查詢(xún)所得相似特征交給機(jī)器學(xué)習(xí)匹配模塊進(jìn)行識(shí)別;機(jī)器學(xué)習(xí)匹配模塊在系統(tǒng)訓(xùn)練階段接收特征提取模塊傳來(lái)的特征數(shù)據(jù)進(jìn)行訓(xùn)練,優(yōu)化網(wǎng)頁(yè)相似性閥值的參數(shù);在釣魚(yú)網(wǎng)頁(yè)檢測(cè)階段,接收特征提取模塊傳來(lái)的特征數(shù)據(jù),與空間數(shù)據(jù)庫(kù)中相似特征,計(jì)算網(wǎng)頁(yè)之間的相似性,最后根據(jù)網(wǎng)頁(yè)相似性閥值判斷釣魚(yú)網(wǎng)頁(yè);在釣魚(yú)網(wǎng)頁(yè)檢測(cè)過(guò)程中通過(guò)瀏覽器內(nèi)核解析網(wǎng)頁(yè)源代碼并提取空間布局特征,以此作為釣魚(yú)網(wǎng)頁(yè)檢測(cè)的依據(jù),并在特征庫(kù)中結(jié)合空間數(shù)據(jù)庫(kù)提高查詢(xún)速度,具體實(shí)現(xiàn)步驟為步驟1)訓(xùn)練階段數(shù)據(jù)準(zhǔn)備過(guò)程采集至少100個(gè)可能被釣魚(yú)網(wǎng)頁(yè)模仿的正規(guī)網(wǎng)站頁(yè)面,并抽取出布局特征組織成樣本數(shù)據(jù);將所有樣本數(shù)據(jù)的布局特征插入空間數(shù)據(jù)庫(kù);采集至少100個(gè)釣魚(yú)網(wǎng)站頁(yè)面以及100個(gè)普通網(wǎng)頁(yè),并抽取特征組織成測(cè)試數(shù)據(jù);布局特征由以下四個(gè)數(shù)值屬性組成●DOM節(jié)點(diǎn)的高度這里的高度表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,css源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素在垂直方向上象素點(diǎn)個(gè)數(shù),●DOM節(jié)點(diǎn)的寬度這里的寬度表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,css源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素在水平方向上象素點(diǎn)個(gè)數(shù),●DOM節(jié)點(diǎn)的X坐標(biāo)設(shè)Web瀏覽器顯示區(qū)域最左上角的象素點(diǎn)坐標(biāo)為(0,0),這里的X坐標(biāo)表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,css源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素的最左上角象素點(diǎn)相對(duì)于(0,0)坐標(biāo)在水平方向上的距離,其中距離為1表示相差一個(gè)象素點(diǎn),●DOM節(jié)點(diǎn)的Y坐標(biāo)設(shè)Web瀏覽器顯示區(qū)域最左上角的象素點(diǎn)坐標(biāo)為(0,0),這里的X坐標(biāo)表示瀏覽器引擎解析了網(wǎng)頁(yè)的HTML源代碼,css源代碼以及javascript源代碼以后所得網(wǎng)頁(yè)元素的最左上角象素點(diǎn)相對(duì)于(0,0)坐標(biāo)在垂直方向上的距離,其中距離為1表示相差一個(gè)象素點(diǎn),步驟2)測(cè)試數(shù)據(jù)集的標(biāo)定過(guò)程將測(cè)試數(shù)據(jù)中的所有普通網(wǎng)頁(yè)標(biāo)注為“false”,表示非釣魚(yú)網(wǎng)頁(yè);再將測(cè)試數(shù)據(jù)中的所有釣魚(yú)網(wǎng)頁(yè)標(biāo)注為“true”,表示釣魚(yú)網(wǎng)頁(yè);步驟3)對(duì)所有測(cè)試網(wǎng)頁(yè)的特征在空間數(shù)據(jù)庫(kù)中查找相似的特征,并統(tǒng)計(jì)找到每一個(gè)測(cè)試網(wǎng)頁(yè)在庫(kù)中最相似的網(wǎng)頁(yè),計(jì)算它們的相似度作為測(cè)試網(wǎng)頁(yè)與庫(kù)的相似度;步驟4)將所有測(cè)試網(wǎng)頁(yè)的標(biāo)注以及測(cè)試網(wǎng)頁(yè)與庫(kù)的相似度送入機(jī)器學(xué)習(xí)匹配模塊,遍歷所有可能的相似度閥值,找到一個(gè)值T使得相似度大于T的釣魚(yú)網(wǎng)頁(yè)數(shù)量與相似度小于T的釣魚(yú)網(wǎng)頁(yè)數(shù)量差值最大,T作為釣魚(yú)網(wǎng)頁(yè)相似度閥值;步驟5)對(duì)疑似釣魚(yú)網(wǎng)頁(yè)的檢測(cè)過(guò)程對(duì)可疑網(wǎng)頁(yè)采集布局特征;用可疑網(wǎng)頁(yè)的特征在空間數(shù)據(jù)庫(kù)中查找相似的特征,并統(tǒng)計(jì)找到可疑網(wǎng)頁(yè)在庫(kù)中最相似的網(wǎng)頁(yè),計(jì)算它們的相似度作為可疑網(wǎng)頁(yè)與庫(kù)的相似度;將待可疑網(wǎng)頁(yè)的與庫(kù)的相似度送入訓(xùn)練好的機(jī)器學(xué)習(xí)匹配模塊進(jìn)行預(yù)測(cè),預(yù)測(cè)所得結(jié)果作為本方案最終的釣魚(yú)網(wǎng)站檢測(cè)結(jié)果。
全文摘要
一種基于空間布局的釣魚(yú)網(wǎng)頁(yè)檢測(cè)方法涉及了一種基于頁(yè)面視覺(jué)布局特征結(jié)合空間數(shù)據(jù)庫(kù)的設(shè)計(jì)方案,主要解決了基于網(wǎng)頁(yè)視覺(jué)相似性角度進(jìn)行快速釣魚(yú)網(wǎng)頁(yè)檢測(cè)的問(wèn)題,系統(tǒng)由5個(gè)模塊組成,其中最上層是用戶(hù)界面模塊,主要負(fù)責(zé)獲取用戶(hù)輸入并將結(jié)果反饋回用戶(hù),中間是控制模塊,負(fù)責(zé)調(diào)度所有功能模塊完成釣魚(yú)網(wǎng)站檢測(cè)。最核心的是3個(gè)功能模塊,即布局特征抽取模塊、空間數(shù)據(jù)庫(kù)模塊、機(jī)器學(xué)習(xí)匹配模塊。經(jīng)大量實(shí)驗(yàn)數(shù)據(jù)檢驗(yàn)證明,該方法構(gòu)建了一種高速高精度釣魚(yú)網(wǎng)頁(yè)檢測(cè)系統(tǒng),在保證高準(zhǔn)確率的同時(shí),處理數(shù)據(jù)容量上有了重大提升,并顯著減小網(wǎng)頁(yè)檢測(cè)時(shí)間。
文檔編號(hào)G06F17/30GK101894134SQ20101020472
公開(kāi)日2010年11月24日 申請(qǐng)日期2010年6月21日 優(yōu)先權(quán)日2010年6月21日
發(fā)明者周?chē)?guó)強(qiáng), 張衛(wèi)豐, 張迎周, 許碧歡, 貢亮, 陸柳敏 申請(qǐng)人:南京郵電大學(xué)