一種釣魚網(wǎng)頁檢測方法
【專利摘要】一種釣魚網(wǎng)頁檢測方法,它有四大步驟:一:網(wǎng)頁樣式特征提??;提取可疑網(wǎng)頁Ps與目標網(wǎng)頁Pi網(wǎng)頁可視部分的文檔樹結(jié)構(gòu)和CSS文本;二:網(wǎng)頁樣式特征篩選;篩選Tree(Ps)與Tree(Pi)中的元素;解析可疑網(wǎng)頁Ps與目標網(wǎng)頁Pi的CSS文本,得到對應(yīng)的規(guī)則對象集合,并對所有的規(guī)則對象進行篩選;三:網(wǎng)頁相似度計算;根據(jù)步驟二中得到的CSS規(guī)則對象集和網(wǎng)頁元素樹,分別計算可疑網(wǎng)頁Ps與目標網(wǎng)頁Pi的網(wǎng)頁樣式復(fù)雜度C(Ps)、C(Pi)和網(wǎng)頁樣式匹配度M(Ps,Pi),最后利用Jaccard系數(shù)計算Ps與Pi的網(wǎng)頁樣式匹配度S(Ps,Pi);四:結(jié)果判決;根據(jù)步驟三中得到的計算結(jié)果和可疑網(wǎng)頁Ps與目標網(wǎng)頁Pi的域名,判斷Ps是否為釣魚網(wǎng)頁。
【專利說明】一種釣魚網(wǎng)頁檢測方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明提供一種釣魚網(wǎng)頁檢測方法,它具體涉及一種基于網(wǎng)頁樣式相似度的釣魚 網(wǎng)頁檢測方法,屬于計算機互聯(lián)網(wǎng)(Web)安全領(lǐng)域。
【背景技術(shù)】
[0002] 釣魚網(wǎng)頁通過仿冒真實網(wǎng)頁的統(tǒng)一資源定位符(Uniform Resource Locator, URL)和頁面特征,構(gòu)造在視覺效果上與真實網(wǎng)頁相似的頁面,或者利用真實網(wǎng)頁的服務(wù)器 漏洞注入危險的超文本標記語言(Hyper Text Markup Language,即HTML)代碼,以騙取用 戶個人信息(如信用卡賬號、密碼和身份證號碼等),達到獲取經(jīng)濟利益的目的。近年來,釣 魚網(wǎng)頁數(shù)量持續(xù)高速增長,每年給用戶造成巨大的經(jīng)濟損失,已成為互聯(lián)網(wǎng)的主要安全威 脅之一。釣魚網(wǎng)頁的檢測與識別是Web安全領(lǐng)域的重要研究內(nèi)容。
[0003] 主流的釣魚網(wǎng)頁檢測技術(shù)可分為基于URL和基于頁面相似度的兩類方法。URL是 互聯(lián)網(wǎng)上可以訪問的資源的唯一標識。傳統(tǒng)的釣魚網(wǎng)頁檢測方法主要基于URL建立釣魚網(wǎng) 頁黑名單或者從統(tǒng)計學(xué)的角度對URL的語義和結(jié)構(gòu)進行分析。但是很多釣魚網(wǎng)頁將URL隱 藏在多層iframe下,檢測引擎需要對其進行連續(xù)追蹤下載才能獲取釣魚網(wǎng)頁的真實URL, 增加了檢測難度。判斷一個網(wǎng)頁是否是釣魚網(wǎng)頁,最準確的方法就是判斷這個網(wǎng)頁在視覺 效果或網(wǎng)頁內(nèi)容上與真實的合法網(wǎng)頁是否具有相似性。一些方案采用檢測頁面內(nèi)容關(guān)鍵 字和網(wǎng)頁徽標的方法,根據(jù)頁面內(nèi)容關(guān)鍵字詞頻和網(wǎng)頁徽標的匹配識別釣魚網(wǎng)頁。這種方 法準確度難以保證,攻擊者可以通過替代關(guān)鍵字和對網(wǎng)頁徽標做出微小修改的方式躲避檢 測。一些方案使用頁面內(nèi)容布局作為相似度檢測的依據(jù),將頁面中的元素按內(nèi)容劃分為小 方塊,通過檢測小方塊的面積和位置的相似度識別釣魚網(wǎng)頁。攻擊者可以通過改變網(wǎng)頁樣 式影響小方塊的劃分,或者通過改變網(wǎng)頁布局、不改變網(wǎng)頁內(nèi)容的方法躲避檢測。還有一些 機制使用圖像分析的方法,比較可疑網(wǎng)頁的頁面截圖與目標網(wǎng)頁截圖的相似度。這種方案 的缺點是計算復(fù)雜、效率不高、難以應(yīng)用。因此,如何實現(xiàn)快速、便捷、準確地檢測釣魚網(wǎng)頁 稱為Web安全領(lǐng)域研究的熱點和難點。
[0004] 標記語言(Markup Language,如HTML、XHTML和XML等)是一種將文本和與文本相 關(guān)的信息展現(xiàn)出文檔結(jié)構(gòu)的計算機文字編碼,被廣泛應(yīng)用與網(wǎng)頁的制作。層疊樣式表(即 Cascading Style Sheet,縮寫為CSS),是一種用于為由標記語言編寫的結(jié)構(gòu)化文檔添加樣 式(字體、間距和顏色等)的語言,在很大程度上決定了網(wǎng)頁的視覺效果。如今,幾乎所有的 網(wǎng)頁都使用CSS來修改網(wǎng)頁的樣式。每條CSS語句就是一條規(guī)定網(wǎng)頁樣式的CSS規(guī)則,由 選擇器和聲明兩部分組成。選擇器是該CSS規(guī)則所作用網(wǎng)頁元素的索引。聲明包含該CSS 規(guī)則所修改或定義的屬性名稱和相應(yīng)的值。
【發(fā)明內(nèi)容】
[0005] (1)發(fā)明目的
[0006] 針對上述問題,本發(fā)明的目的在于提供一種釣魚網(wǎng)頁檢測方法,涉及一種基于網(wǎng) 頁樣式相似度的釣魚網(wǎng)頁檢測方法。本發(fā)明通過比對可疑網(wǎng)頁與目標網(wǎng)頁的層疊樣式表等 網(wǎng)頁樣式特征,計算網(wǎng)頁外觀、樣式的相似度,作為判斷可疑網(wǎng)頁是否在視覺效果上相似于 目標網(wǎng)頁的依據(jù),支持在客戶端實現(xiàn)快速、精準的釣魚網(wǎng)頁檢測。
[0007] (2)技術(shù)方案
[0008] 本發(fā)明的步驟涉及以下三個核心操作:1)網(wǎng)頁樣式特征提??;2)網(wǎng)頁樣式特征篩 選;3)網(wǎng)頁樣式相似度計算。下面對這三個核心操作做出說明。
[0009] 1)網(wǎng)頁樣式特征提取
[0010] 網(wǎng)頁樣式特征包括兩部分,網(wǎng)頁可視部分的文檔樹結(jié)構(gòu)和網(wǎng)頁的css文本。
[0011] a)文檔樹提取
[0012] 網(wǎng)頁可視部分是指網(wǎng)頁的HTML文檔中能在瀏覽器主窗體內(nèi)顯示的元素,均位于 HTML文檔的<bodyX/body>標簽內(nèi)。提取HTML文檔樹中以<bodyX/body>元素為根節(jié)點 的部分。
[0013] b)CSS文本提取
[0014] CSS文本在網(wǎng)頁中一般以四種形式存在:內(nèi)聯(lián)樣式表、內(nèi)嵌樣式表、夕卜部樣式表和 輸入樣式表。分別從網(wǎng)頁中的上述四種樣式表中提取所有的CSS文本,并將其合并到一個 文件中。
[0015] 2)網(wǎng)頁樣式特征篩選
[0016] 該操作通過篩選已提取的文檔樹中的元素,篩除在網(wǎng)頁中不顯示或?qū)W(wǎng)頁樣式影 響較小的元素,并用篩選后的文檔樹過濾CSS規(guī)則,刪除無用CSS規(guī)則,簡化相似度計算。
[0017] a)文檔樹元素篩選
[0018] 已提取的文檔樹中,并非所有元素都對網(wǎng)頁的樣式有影響:部分元素的顯示屬性 被設(shè)置為隱藏,即不在網(wǎng)頁中顯示;部分元素在網(wǎng)頁中的面積為〇,對網(wǎng)頁樣式無影響;部 分元素被其子元素覆蓋,只能顯示面積很小的一部分;部分元素在網(wǎng)頁中的面積很小,對網(wǎng) 頁樣式的影響可以忽略。綜合上述原因,對文檔樹中的元素進行篩選,篩除對網(wǎng)頁樣式?jīng)]有 影響或影響很小的元素,減少CSS相似度的計算量。被篩除的元素不參與CSS相似度計算, 即作用于該元素的所有CSS規(guī)則不參與相似度計算。使用以下五條規(guī)則對文檔樹元素進行 篩選:
[0019] 1.若元素面積占網(wǎng)頁總面積的比例小于預(yù)設(shè)閾值,該元素不參加相似度計算。
[0020] 2.若所有子元素面積總和占父元素面積比例超過預(yù)設(shè)閾值,父元素不參加相似度 計算。
[0021] 3.若子元素所有邊框與父元素邊框的距離小于預(yù)設(shè)閾值,父元素不參加相似度計 算。
[0022] 4.若元素的visibility屬性值為hidden,該元素不參加相似度計算。
[0023] 5.若元素的display屬性為none,該元素不參加相似度計算。
[0024] b)CSS規(guī)則篩選
[0025] 為了便于篩選,利用解析器將CSS文本解析為CSS規(guī)則對象集合。CSS規(guī)則對象集 合為屬性-值-選擇器結(jié)構(gòu),包括CSS屬性名稱、該屬性的值和該規(guī)則對象作用的網(wǎng)頁元素 索引。每個CSS規(guī)則對象只包含一個屬性、一個值和一個元素。復(fù)合形式的CSS屬性在解 析時會自動被拆分成單一屬性的CSS規(guī)則對象。
[0026] 將集合中每個CSS規(guī)則對象的選擇器在篩選后的文檔樹中遍歷,尋找匹配元素。 若匹配元素不存在或匹配元素不參與相似度計算,則該CSS規(guī)則對象不參加相似度計算。 若匹配元素參與相似度計算,則該CSS規(guī)則對象也參加相似度計算。
[0027] 3)網(wǎng)頁樣式相似度計算
[0028] 對于兩個網(wǎng)頁X和Y,分別計算其網(wǎng)頁樣式復(fù)雜度C(X)、C(Y)和網(wǎng)頁樣式匹配度 Μ (X,Y),并利用Jaccard系數(shù)計算網(wǎng)頁X和網(wǎng)頁Y的網(wǎng)頁樣式相似度S (X,Y)。
[0029] a)網(wǎng)頁樣式復(fù)雜度計算
[0030] 對于一個網(wǎng)頁P,用公式(1)計算其網(wǎng)頁樣式復(fù)雜度C(P)。
【權(quán)利要求】
與目標網(wǎng)頁Pi的網(wǎng)頁樣式相似度S(Ps,Pi); 步驟四:結(jié)果判決;根據(jù)步驟三中得到的計算結(jié)果和可疑網(wǎng)頁Ps與目標網(wǎng)頁Pi的域 名,判斷Ps是否為釣魚網(wǎng)頁; 步驟4. 1 :網(wǎng)頁樣式復(fù)雜度判決;若C(PS)小于預(yù)設(shè)閾值,則認為可疑網(wǎng)頁的網(wǎng)頁樣式 復(fù)雜度過低,該頁面可能采用圖片或表單形式來模仿某個網(wǎng)頁樣式復(fù)雜度較高的頁面,此 時需提醒用戶:PS存在釣魚的風(fēng)險;若C(p s)大于預(yù)設(shè)閾值,說明Ps的網(wǎng)頁結(jié)構(gòu)正常,使用 網(wǎng)頁樣式相似度s (Ps,Pi)來判斷Ps的安全性; 步驟4. 2 :網(wǎng)頁樣式相似度判決;當S(Ps,Pi)大于預(yù)設(shè)閾值且匕與?1的域名相同時,Ps 為非法釣魚網(wǎng)頁,其它情況下,Ps為合法的真實網(wǎng)頁。
【文檔編號】G06F17/30GK104092667SQ201410282730
【公開日】2014年10月8日 申請日期:2014年6月23日 優(yōu)先權(quán)日:2014年6月23日
【發(fā)明者】毛劍, 李佩, 李騰, 陳岳, 馬寒軍, 劉建偉 申請人:北京航空航天大學(xué)