亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于視覺特征的仿冒域名輕量級檢測技術(shù)

        2020-09-04 10:00:42寧振虎周藝華
        計算機應(yīng)用 2020年8期
        關(guān)鍵詞:字符串域名字符

        朱 怡,寧振虎,周藝華

        (北京工業(yè)大學信息學部,北京100124)

        0 引言

        作為互聯(lián)網(wǎng)的基礎(chǔ),域名系統(tǒng)(Domain Name System,DNS)的重要性不言而喻,但近年來DNS卻頻繁遭受惡意攻擊或因故障癱瘓,傳播惡意軟件、促進命令和控制服務(wù)器[1]通信、發(fā)送垃圾郵件、網(wǎng)絡(luò)釣魚網(wǎng)頁[2]等給網(wǎng)絡(luò)安全造成了極大沖擊。DNS 的安全性之所以難以保證主要原因有:首先,DNS的服務(wù)角色決定了DNS 具有穩(wěn)定性和公開性,而且緩存的影響使得地址不會頻繁地更改,因此在DNS 服務(wù)器遭受攻擊時無法替換和隱藏IP 地址;其次,DNS 的集中性,在正常情況下,DNS服務(wù)器為多個網(wǎng)站或者用戶提供服務(wù),攻擊服務(wù)器具有很大的影響范圍,大大提高了攻擊的效率;最后,DNS 的匿名性,DNS 服務(wù)使用用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol,UDP),黑客可以很好地隱藏自己的蹤跡以免被追蹤。

        在DNS 遭受的網(wǎng)絡(luò)攻擊中,仿冒域名因攻擊成本低、危害范圍廣、盈利手段多樣化等特點,已經(jīng)成為威脅互聯(lián)網(wǎng)安全運行的重要問題之一[3]。仿冒域名是網(wǎng)絡(luò)蟑螂的一種形式,是一種域名搶注行為,指搶先注冊網(wǎng)絡(luò)使用者因輸入錯誤而訪問的域名,以期望用戶訪問仿冒域名而非目標網(wǎng)站域名。仿冒域名通常是與流行的知名域名非常相似的域名,大量的仿冒域名站點被攻擊者用來顯示廣告、將流量重定向到第三方頁面、部署釣魚網(wǎng)站或提供惡意軟件而從中獲利[4]。例如,攻擊者可以注冊facebo0k.com、microsolt.com 等域名,當網(wǎng)絡(luò)使用者不小心錯誤輸入或者被釣魚郵件視覺迷惑時,就會訪問這些網(wǎng)站,攻擊者由此牟取非法利益或?qū)崿F(xiàn)非法目的[5]。

        仿冒域名網(wǎng)絡(luò)攻擊如今已成為國內(nèi)外安全社區(qū)和相關(guān)機構(gòu)的重點防護對象,提前防范仿冒域名攻擊對于保障互聯(lián)網(wǎng)正常運行具有重要意義?;诖耍疚娜媪私釪NS 所面臨的威脅,對仿冒域名行為進行重點研究,提出了一種基于視覺特征的仿冒域名輕量級檢測方法,在仿冒域名檢測和保護網(wǎng)絡(luò)終端免受仿冒域名侵害和攻擊上有顯著效果。

        1 相關(guān)工作

        本章首先對仿冒域名進行概述,研究仿冒域名的構(gòu)造特點;接著對當前主要的仿冒域名檢測技術(shù)進行分類研究,主要劃分為主動檢測和被動檢測,并針對這兩大類檢測技術(shù)的原理和不足之處作詳細分析;最后介紹本文主要工作。

        1.1 仿冒域名特征

        仿冒域名屬于典型的搶注域名[6],仿冒域名的數(shù)目隨域名注冊數(shù)目的不斷增多而不斷上漲,在實際應(yīng)用中,用戶經(jīng)常會因為錯誤拼寫域名而被鏈接到仿冒域名網(wǎng)站[7]。此外,計算機硬件錯誤也會導致用戶訪問仿冒域名網(wǎng)站[8]。仿冒域名的構(gòu)造方式極其簡單,非法者通常能通過選擇目標域名快速注冊大量的仿冒域名。

        為了解仿冒域名的構(gòu)造特點,從以下三方面進行研究:

        1)編輯距離或手指距離。手指距離是通過結(jié)合鍵盤上字符的排列特征對編輯距離進行的一種改進,即利用鍵盤上相鄰位置的字符將一字符串轉(zhuǎn)換為另一字符串的最小插入、刪除、替換操作數(shù))。Moore 等[9]從 Alexa[10]排名前 6 000 的域名中選取了3 264個域名作為目標域名,構(gòu)造了編輯距離和手指距離小于3(1 和2)的191 738 個注冊域名作為候選仿冒域名集。實驗結(jié)果顯示,與目標域名的編輯距離為1 和手指距離為1 的候選仿冒域名集中,仿冒域名所占比例都高達90%以上,但在編輯距離為2 和手指距離為2 的候選仿冒域名集中,仿冒域名所占比例相對較低,分別低于60%和80%。

        2)目標域名的Alexa 排名。早期非法注冊者主要針對Alexa排名靠前的域名來注冊對應(yīng)仿冒域名。后來,隨著域名數(shù)目的增長,非法者在注冊仿冒域名時選擇的目標域名范圍也隨之不斷擴大。Szurdi 等[11]針對 Alexa 排名前 100 萬的域名,選取長度大于5 的域名作為目標域名,利用手指距離操作構(gòu)造生成候選仿冒域名集,通過比較目標域名的Alexa排名情況,發(fā)現(xiàn)Alexa排名靠前的域名對應(yīng)的仿冒域名數(shù)量更多。

        3)目標域名長度。早期,Banerjee 等[12]研究認為目標域名長度是影響仿冒域名數(shù)量的一個重要因素,非法者通常會針對長度較短的目標域名注冊仿冒域名。隨后,Moore 等[9]針對不同長度的目標域名分別統(tǒng)計對應(yīng)的仿冒域名的注冊情況,發(fā)現(xiàn)只有當目標域名長度小于5 時,對應(yīng)的仿冒域名的注冊比重稍低,除此之外,域名長度對仿冒域名的注冊影響很小。此后,Agten等[13]再次指明,非法者在注冊仿冒域名時,不再過多關(guān)注對應(yīng)目標域名的長度。

        1.2 仿冒域名檢測技術(shù)

        仿冒域名吸引了眾多研究者的關(guān)注,他們通過檢測仿冒域名和測量仿冒域名現(xiàn)象以分析背后的盈利策略。Moore等[9]通過手動檢查2 195個候選仿冒域名樣本,發(fā)現(xiàn)編輯距離為1或2的域名基本都是仿冒域名。Kintis等[14]對域名中的品牌名稱和其他關(guān)鍵詞進行了組合研究,結(jié)果表明,仿冒域名被廣泛用于執(zhí)行各種類型的攻擊,包括網(wǎng)絡(luò)釣魚、社會工程攻擊、分支濫用、商標濫用和惡意軟件。為了探索哪些統(tǒng)一資源定位符(Uniform Resource Locator,URL)相對其他URL更易受到仿冒域名攻擊,Tahir等[15]使用不同的URL和DNS數(shù)據(jù)集定量測量了每個URL 的仿冒現(xiàn)象,交叉驗證了域名中存在的某些語義特征使其更容易受到仿冒域名攻擊。Agten等[13]對仿冒域名的相關(guān)信息進行了持續(xù)跟蹤,發(fā)現(xiàn)仿冒域名在用戶和搶注者之間具有流通性,搶注者可以通過變換網(wǎng)頁類型改變盈利策略。Spaulding等[16]量化了不同域名仿冒方式在欺騙用戶方面的有效性,發(fā)現(xiàn)用戶通常能夠識別在域名中添加或刪除字符的仿冒域名,欺騙用戶最有效的仿冒方式是字符的替換。

        通過對已有的仿冒檢測技術(shù)進行研究,可將其相關(guān)檢測方法分為主動檢測和被動檢測兩類[17]。主動檢測方法[16,18-21]的基本工作原理為:首先確定一個受保護目標集合,然后按照一些構(gòu)造策略得到所有可能的仿冒域名列表,針對這些構(gòu)造的域名,收集Whois 注冊信息、DNS 解析信息、網(wǎng)頁信息,主動分析并發(fā)現(xiàn)識別可能已由搶注者注冊的仿冒域名。常見的構(gòu)造策略有缺少點、缺少字符、字符換位、字符替換、字符重復(fù)、頂級域替換等[12,18],常見的字符拼寫錯誤原因如鍵盤上鄰近字符擊打錯誤[9]、視覺錯誤[22-23]、聽覺錯誤[24]、字符的比特位錯誤[25]等也會體現(xiàn)在構(gòu)造策略里。被動檢測方法是在網(wǎng)絡(luò)環(huán)境下進行的,通過分析流量中仿冒域名的方式并發(fā)現(xiàn)與受保護集合中元素編輯距離不超過2的域名,將之判斷為仿冒域名。

        顯然,主動檢測方法需要收集域名的相關(guān)信息進行判定,低級DNS 通信提供了有關(guān)DNS 請求和響應(yīng)的足夠詳細信息,使對惡意域名進行更全面的搜索和分類成為可能[26-27],但這也限制了這些類型的檢測方法的應(yīng)用場景,因為它們必須具有監(jiān)視DNS 服務(wù)器流量的權(quán)限,例如在大型互聯(lián)網(wǎng)服務(wù)提供商(Internet Service Provider,ISP)或?qū)W?;蚬镜木W(wǎng)絡(luò)中心中,此外,訪問DNS 服務(wù)器可能會導致隱私問題。主動仿冒域名檢測方法存在存儲和計算開銷較大、隱私權(quán)限等問題,不適于在線檢測。被動檢測方法為了克服主動檢測方法的這些不足,試圖僅利用域名本身的特點進行檢測,即其算法的輸入僅僅是域名。研究[28-31]表明,良性域名和惡意域名在長度、后綴分布和有意義字數(shù)比等方面存在差異,可以作為檢測的特征。被動仿冒域名檢測方法大都以計算域名對之間的編輯距離為基礎(chǔ),但是對短域名的檢測易產(chǎn)生大量假陽性結(jié)果,即對于頂級域名相同且二級域名字符串長度為2 的域名來說,其編輯距離永遠不會超過2。以檢測京東的域名“jd.com”的仿冒域名為例,所有權(quán)威域長度為2 的.com 域名(如“qq.com”)與“jd.com”的編輯距離都不會超過2,按照基于編輯距離的方法就會將其判定為仿冒域名,由此帶來大量錯誤。Liu等[22]基于編輯距離算法提出了一種反向查找方法TypoPegging,可以快速準確地獲得給定域中最相似的熱門網(wǎng)站,但是沒有很好地處理域名視覺模仿的問題。

        可見,已有的主動、被動仿冒檢測技術(shù)都存在一定的缺陷。基于此,本文設(shè)計了基于視覺特征的仿冒域名輕量級檢測方法,并在真實數(shù)據(jù)集上驗證了該方法的有效性,主要工作包括以下幾點:

        1)采用僅基于域名字符串的輕量級檢測策略進行仿冒域名檢測,降低了計算和存儲開銷,適合應(yīng)用在大規(guī)模DNS 應(yīng)用環(huán)境下的場景檢測。

        2)提出了域名視覺相似度的計算方法。一方面,結(jié)合域名視覺相似度構(gòu)建仿冒域名檢測模型能解決傳統(tǒng)編輯距離在仿冒域名檢測上帶來的假陽性問題;另一方面,從視覺角度檢測仿冒域名可以很好地處理域名視覺模仿的情況。

        3)在真實數(shù)據(jù)集上進行了大量實驗,驗證了檢測效果。

        2 視覺特征測量

        本章主要介紹域名的視覺特征測量方法,通過對傳統(tǒng)編輯距離算法的改進并結(jié)合域名的視覺相似度來構(gòu)建仿冒域名檢測模型。

        編輯距離是對兩個給定字符串間差異程度的量化測量,編輯距離越小,兩字符串越相似,當兩字符串相等時,編輯距離為0。測量的方式是看至少需要多少次的操作把一個字符串轉(zhuǎn)變成另一個字符串,其中,許可的變換操作包括:插入、刪除和替換。

        對于兩個給定的字符串P 和Q,記其長度分別為m 和n,那么字符串 P 和 Q 之間的編輯距離記作 DP,Q(i,j),遞歸公式為:

        其中:1 ≤ i ≤ m,1 ≤ j ≤ n。編輯距離算法偽代碼見算法1,其空間復(fù)雜度和時間復(fù)雜度均為O(m*n)。

        算法1 編輯距離。

        function Edit_Distance(string P,string Q)

        m<-length(string P);n<-length(string Q)

        創(chuàng)建一個距離矩陣G[x + 1,y + 1]

        #初始化

        for(i = 0;i ≤ m;i + +)

        G[i,0]= i

        for(i = 0;i ≤ n;i + +)

        G[0,i]= i

        #遞歸

        for(i = 1;i ≤ m;i + +)

        for(j = 1;j ≤ n;j + +)

        if(P[i - 1]== Q[ j - 1])

        G[i,j]= G[i - 1,j - 1]

        else G[i,j]= min(G[i,j - 1],G[i - 1,j],G[i - 1,j - 1]) + 1

        #輸出

        return G[m,n]

        傳統(tǒng)編輯距離算法中并沒有考慮域名字符的位置、字符相似度、操作類型(插入、刪除、替換)等因素,統(tǒng)一賦值為相同的權(quán)重(設(shè)置為1)。從機器的角度考慮,編輯距離能夠測量兩個字符串的相似度。但是,在面對域名時,人的視覺卻與機器的“視覺”不同,字符的位置、字符相似度、操作種類都可能影響該域名是否是仿冒域名的判斷。

        鑒于此,提出了基于視覺特征的仿冒域名輕量級檢測方法,主要考慮字符的位置、字符相似度、操作種類對字符串相似度的影響,具體說明如下。

        字符的位置:對于一個給定域名,分別改變其首字符和靠后位置的字符形成新域名,通常人們更容易察覺出改變首字符的那個域名的不同。 比如域名“nicrosoft. com”和“microsolt. com”與正常域名“microsoft. com”的編輯距離相同(編輯距離都為1),但是,對于“nicrosoft. com”和“microsolt.com”,人們更容易察覺出“nicrosoft.com”與“microsoft.com”的不同。這說明域名字符的位置對人視覺的影響不同,應(yīng)對不同位置的字符賦予不同的權(quán)重。

        字符相似度:字符不同,對人的影響也不同。比如域名“arnazon. com”(ARNAZON)與 正 常 域 名“amazon. com”(AMAZON)的編輯距離為2,“akazon.com”(AKAZON)與正常域 名“amazon. com”(AMAZON)的 編 輯 距 離 為 1。 即 使“arnazon. com”(ARNAZON)與 正 常 域 名“amazon. com”(AMAZON)的編輯距離更大,但是,卻更難察覺“arnazon.com”與“amazon.com”的不同。因此,應(yīng)對不同的字符賦予不同的權(quán)重。

        操作種類:操作種類不同,人的視覺反應(yīng)也不同。比如,對于“日本之窗”的域名“jpwindow.com”,當刪除其第二和第五個字符時會變換為“jwidow.com”;當替換其第二和第五個字符為其他字符時會變換成“jqwimdow.com”。顯然,“jpwindow.com”和“jwidow.com”容易區(qū)分開,而“jqwimdow.com”和“jpwindow.com”卻相對困難;但事實上,“jwidow.com”和“jqwimdow.com”都與正常域名“jpwindow.com”有相同的編輯距離(編輯距離為2)。因此,應(yīng)對不同的操作賦予不同的權(quán)重。

        域名視覺特征的測量基于對編輯距離的完善,在編輯距離中加入了對字符位置、字符相似度、操作種類的考慮,將加權(quán)編輯距離定義為:

        其中:1 ≤ i ≤ m,1 ≤ j ≤ n,? 表示空字符;Pi表示字符串P 的第 i 個字符,Qj表示字符串 Q 的第 j 個字符;sub 函數(shù)的計算公式如式(3)所示,其中,α 反映字符位置的影響,M 值反映字符相似度和操作種類的影響。

        其中:c1、c2表示字符串中的某兩個字符;l1、l2表示此兩個字符在對應(yīng)字符串中的位置。從式(3)可以發(fā)現(xiàn),原編輯距離式(1)本質(zhì)上是加權(quán)編輯距離的一種特殊情況,如式(4)所示:

        3 字符相似距離測量

        本章主要介紹字符相似距離的測量方法,即計算M 值。對于字符“0”(零)和“o”(字母o),對應(yīng)的M 值計算方法如圖1所示。

        兩個字符的視覺相似距離計算過程描述如下:

        1)將字符轉(zhuǎn)換為黑白二值圖片。

        2)將字符二值圖片轉(zhuǎn)換為一維向量,轉(zhuǎn)換方式如圖1所示:

        3)計算兩個向量直接的視覺距離,向量v1和v2的視覺距離為:

        關(guān)于字符相似度,考慮以下幾方面:

        1)單字符與單字符間的相似度。這涉及到“0~9”“a~z”“-”(連字符)“.”(點字符)共計38 個單字符,因為域名字符串中只允許使用此38 個字符,且不區(qū)分大小寫。此方面能排除相似單字符帶來的視覺干擾,例如“0”(數(shù)字零)與“o”(字母o)、“1”(數(shù)字1)與“l(fā)”(小寫字母 L)、“2”與“z”、“i”與“l(fā)”、“c”與“o”、“h”與“n”等。

        2)兩個“窄”字符與一個“寬”字符間的相似度?!罢弊址小?”“-”“.”、“i”“j”“l(fā)”等,除此之外,其余都是“寬”字符。此方面是考慮到了兩個“窄”字符與某個“寬”字符相似的情況,例如“ii”與“n”相似等。

        3)兩個“寬”字符與一個“寬”字符間的相似度。此方面考慮到了某兩個“寬”字符與某個“寬”字符相似時帶來的視覺干擾現(xiàn)象,例如“nn”(兩個小寫的字母N)與“m”、“vv”(兩個小寫的字母V)與“w”、“rn”(小寫的R和N)與“m”相似等。

        4)一個“窄”字符加上一個“寬”字符與其他“寬”字符間的相似度,例如“cl”(小寫的C和L)與“d”相似等。

        5)兩個“寬”字符與兩個“寬”字符間的相似度,例如“nm”與“mn”、“hn”與“nh”相似等。

        圖1 字符相似距離的計算過程示意圖Fig. 1 Schematic diagram of computation process of character similarity distance

        綜上,綜合考慮字符位置、字符相似度和操作種類對仿冒域名檢測的判斷影響,基于視覺特征的編輯距離算法偽代碼見算法2。

        算法2 基于視覺特征的編輯距離。

        function Compound_Edit_Distance(string P,string Q)

        刪除string P,string Q 對應(yīng)位置相同的字符得到string P1,string Q1

        m<-length(string P1);n<-length(string Q1)

        構(gòu)造4個list,list1保存單字符間的相似值M1,list2保存單字符與

        雙字符的相似值M2,list3 保存雙字符與單字符的相似值M3,

        list4保存雙字符與雙字符的相似值M4

        構(gòu)造兩個一維數(shù)組V0[n + 1],V1[n + 1]

        for(i = 0;i ≤ n;i + +)

        V0[i]= position_weighti

        for(i = 0;i ≤ m;i + +)

        V1[0]= i

        for (j = 1;j ≤ n;j + +)

        if(string P[i - 1]==string Q[ j - 1]):

        V1[ j]= V0[ j - 1]

        else if 當前比較的兩個字符in list1:

        V1[ j]= min(V0[ j]+ position_weight,V1[ j - 1]+

        position_weight,V0[ j - 1]+ position_weight*M1)

        else if 當前比較的兩個字符in list2:

        V1[ j]= min(V0[ j]+ position_weight,V1[ j - 1]+

        position_weight,V0[ j - 1]+

        position_weight*M1,V0[ j]+

        position_weight*M2)

        else if 當前比較的兩個字符in list3:

        V1[ j]= min(V0[ j]+ position_weight,V1[ j - 1]+

        position_weight,V0[ j - 1]+

        position_weight*M1,V0[ j]+

        position_weight*M3)

        else if 當前比較的兩個字符in list4:

        V1[ j]= min(V0[ j]+ position_weight,V1[ j - 1]+

        position_weight,V0[ j - 1]+

        position_weight*M1,V0[ j]+

        position_weight*M4)

        for(j = 0;j <= n;j + +)

        V0[ j]= V1[ j]

        #輸出

        return V1[n]

        4 實驗與結(jié)果分析

        本章利用所提出的策略構(gòu)建了一個仿冒域名檢測的原型系統(tǒng),并且在真實數(shù)據(jù)集上進行測試。實驗環(huán)境為Windows 10 主機,8 GB 內(nèi)存,512 GB 固態(tài)硬盤(Solid State Disk,SSD),編程軟件為JetBrains PyCharm,編程語言為Python。所選用的實驗對比方案采用了目前最常用的基于編輯距離的判定方案。

        4.1 評價標準

        所有實驗都在真實的數(shù)據(jù)集上進行,且對所有技術(shù)都給出了性能評價,評價的指標包括精確率、召回率和F1值。

        精確率針對預(yù)測結(jié)果而言,它表示預(yù)測為正的樣本中有多少是真正的正樣本?!邦A(yù)測為正”有兩種可能,其一是把正類預(yù)測為正類,其二是把負類預(yù)測為正類,精確率即是第一種情況所占的比重。召回率針對原來的樣本集而言,它表示的是樣本中的正例有多少被預(yù)測正確了。預(yù)測時也有兩種可能,其一是把原來的正類預(yù)測為正類,其二是把原來的正類預(yù)測為負類,召回率即是第一種情況所占的比重。精確率和召回率取值在0~1,數(shù)值越接近1,評價結(jié)果就越高。但研究表明,精確率與召回率兩者基本存在一種“互補”的關(guān)系,即其中一個的值必隨另一個值的增高而降低。所以需要一個調(diào)和的度量標準,F(xiàn)1值即為精確率和召回率的調(diào)和平均值,它可以綜合這兩個指標,直接被用來評價被評估對象的整體水平。對分類器的精確率P(Precision)、召回率R(Recall)和F1值的定義如下:

        其中:真正例TP(True Positive)表示樣本為正類,預(yù)測結(jié)果也為正類的個數(shù),即分類器能夠正確地檢測出仿冒域名;真負例TN(True Negative)表示樣本為負類,預(yù)測結(jié)果也為負類的個數(shù),即分類器能夠正確地檢測出正常域名;假正例FP(False Positive)表示樣本為負類,預(yù)測結(jié)果為正類的個數(shù),即分類器不能正確地檢測出仿冒域名;假負例FN(False Negative)表示樣本為正類,預(yù)測結(jié)果為負類的個數(shù),即分類器不能正確地檢測出正常域名。

        4.2 數(shù)據(jù)集

        實驗的數(shù)據(jù)來源于真實數(shù)據(jù)。其中目標域名來自Python編程爬取Alexa 排名靠前的域名,由于Alexa 根據(jù)域名三個月累積的訪問信息為排名依據(jù),因此使用這些數(shù)據(jù)作為白名單比較合理。實驗數(shù)據(jù)集的規(guī)模為33 412,其中正樣本數(shù)為16 273,負樣本數(shù)為17 139。

        正樣本數(shù)據(jù)構(gòu)造:對于Alexa 排名前500 的域名,利用NCC Group 在 GitHub 上開源的 typofinder 工具[32]獲得其仿冒域名列表。該工具基于常見的仿冒域名構(gòu)造策略對給定域名構(gòu)建可能的候選仿冒域名列表,并主動獲取每個候選域名的相關(guān)信息來判定其是否為真實的仿冒域名,因而精確率相對較高。對這500個域名,限制域名長度不大于20,總計獲取了16 273個仿冒域名,構(gòu)成了實驗數(shù)據(jù)的正樣本。

        負樣本數(shù)據(jù)構(gòu)造:基于爬取出的目標域名構(gòu)造了17 139個仿冒域名,這17 139 個域名是除去了上述500 個域名后從Alexa 排名前50 000 的域名中隨機選擇的目標域名構(gòu)造產(chǎn)生的,域名長度同樣限制為不超過20,為了更好地觀察在短域名上的檢測效果,限制域名對的編輯距離不超過3,排除了那500 個,所以這其中的任何一個域名都不會是另外一個網(wǎng)站的仿冒域名,由此構(gòu)成了實驗數(shù)據(jù)的負樣本。

        此外,typofinder工具的構(gòu)造策略包含:

        刪減字符:原始“abc”,構(gòu)造:“ab”“ac”“bc”;

        復(fù)制字符:原始“abc”,構(gòu)造:“aabc”“abbc”“abcc”;

        轉(zhuǎn)置字符(交換兩個字符的位置):原始“abc”,構(gòu)造:“acb”“bac”;

        按照鍵盤上該字符的附近位置的字符替換原字符:原始“abc”,構(gòu)造:“abd”“abf”“abv”“abx”“afc”“agc”“ahc”“anc”“avc”“qbc”“sbc”“wbc”“xbc”“zbc”;

        鍵入錯誤的序列:原始“aabcc”,構(gòu)造:“aabdd”“aabff”“aabvv”“aabxx”“qqbcc”“ssbcc”“wwbcc”“xxbcc”“zzbcc”;

        按照鍵盤上該字符的附近位置的字符插入字符:原始“abc”,構(gòu) 造 :“abcd”“abcf”“abcv”“abcx”“abfc”“abgc”“abhc”“abnc”“abvc”“aqbc”。

        4.3 結(jié)果分析

        對于判定一個域名是否為另一個域名的仿冒域名問題,將本文基于視覺特征的仿冒域名輕量級檢測方法與基于編輯距離的判定方法進行了對比?;诰庉嬀嚯x的方法需要計算兩個域名間的編輯距離,如果編輯距離小于或等于設(shè)定的閾值θ,則認為前一個域名為后一個域名的仿冒域名,在實際應(yīng)用中,編輯距離的閾值θ通常取1或2。一共做了10組對比實驗,同組對比實驗使用同樣的數(shù)據(jù)集,組與組之間使用不同的數(shù)據(jù)集,這10 組對比實驗的數(shù)據(jù)集都是基于4.2 節(jié)中提到的方法構(gòu)造的正、負樣本分別為16 273、17 139,總規(guī)模為33 412的數(shù)據(jù)集。表2 為基于編輯距離的判定方法在θ取值分別為1、2 和3 時的實驗結(jié)果。對這10 次實驗結(jié)果取平均可以看到,在基于編輯距離的判定方法中,當閾值θ= 1 時,F(xiàn)1值最大,為 0.904 9,但是隨著閾值θ的增大,F(xiàn)1值會驟減;當θ= 2時,F(xiàn)1值降至0.844 5;當θ= 3時,F(xiàn)1值更是下降到0.521 2,所以用基于編輯距離的方法進行仿冒域名判定時,閾值θ設(shè)定為1,即當編輯距離小于1 時,就認為該域名為比對域名的仿冒域名。

        此外,由表1 可以看到,基于編輯距離的方法在θ= 2 時精確率較低,這是由于存在這樣的實際情況:對于“jd.com”和“qq.com”這樣的域名對,此兩個域名之間的編輯距離為2,在閾值(θ= 2)范圍內(nèi),所以會被判定為仿冒域名,但事實上這兩個域名都屬于知名域名,并不存在仿冒現(xiàn)象。

        在應(yīng)用本文方法基于視覺特征的仿冒域名輕量級檢測方法進行實驗時,字符位置的權(quán)重α是這樣設(shè)計的:從域名的首字符開始,權(quán)重設(shè)定為α的等比遞減數(shù)值(α,α2,α3,…,αn),這樣比較符合域名首字符的影響較大的現(xiàn)實情況。不同α取值得到的實驗結(jié)果如圖2所示,可以看到當α= 0.95時的效果最好,所以設(shè)定字符位置的權(quán)重定為0.95 的等比遞減值(0.95,0.952,0.953,…,0.95n)。

        圖2 字符位置權(quán)重α不同取值下的評價結(jié)果Fig. 2 Evaluation results under different values of character position weight α

        表1 基于編輯距離判定方法的實驗結(jié)果Tab. 1 Experimental results of determination method based on edit distance

        實驗過程中,不再手動設(shè)置閾值θ,而是將閾值θ設(shè)定在(0,2)的區(qū)間內(nèi),從0開始每次遞增0.01得到對應(yīng)的F1值,讓程序輸出選擇最大的F1值,同樣進行10 次實驗,每次實驗所用的數(shù)據(jù)集都分別與上述基于編輯距離的判定方法的10 次實驗的數(shù)據(jù)集保持一致。本文基于視覺特征的仿冒域名輕量級檢測結(jié)果如表2所示。

        表2 基于視覺特征的仿冒域名輕量級判定方法的實驗結(jié)果Tab. 2 Experimental results of lightweight detection method for typosquatting based on visual features

        對于基于編輯距離的判定方法和本文方法在仿冒域名檢測上的效果可以通過F1值進行比對,分別對基于編輯距離判定方法在θ分別取1、2、3的10次結(jié)果和本文方法的10次結(jié)果的F1值取平均,可以得到圖3的檢測效果對比。

        圖3 兩種仿冒域名檢測方法效果對比Fig. 3 Comparison of two detection methods for typosquatting

        從圖3 可以得到,本文基于視覺特征的仿冒域名輕量級檢測方法相較基于編輯距離的判定方法在閾值θ= 1 和θ= 2時,F(xiàn)1值分別提高了5.98%和13.56%,由此可見,本文方法對于仿冒域名檢測有更高的檢測精確率和召回率,從字符的位置、字符相似度、操作種類三個方面改進傳統(tǒng)編輯距離算法能解決域名視覺模仿的情況,使得仿冒域名的檢測效果更好,準確度更高。

        4.4 性能分析

        在相同的實驗環(huán)境下分別構(gòu)造文獻[26-27,33]中的模型、基于傳統(tǒng)編輯距離算法的仿冒域名檢測模型和本文基于視覺特征的仿冒域名檢測模型,它們的性能比較結(jié)果如表4所示。

        表3 各方法的性能比較Tab. 3 Performance comparison of various algorithms

        由表4 可以看出,文獻[26-27,33]中提出的檢測方法的內(nèi)存開銷較大,這是因為這些算法均需要收集域名的相關(guān)特征信息如Whois 注冊信息、DNS 解析信息、網(wǎng)頁信息、流量等進行檢測判斷。與文獻[26-27,33]中的方法相比,基于編輯距離的方法和本文方法內(nèi)存開銷較小,這是因為其算法輸入僅是域名字符串,不需要利用DNS 解析信息等額外特征信息,能大幅減小存儲開銷,本文算法的“輕量級”也正是體現(xiàn)在此,算法僅利用域名的字符串進行判斷。此外,相比原編輯距離算法(算法1),本文方法(算法2)在空間復(fù)雜度和時間效率上進行了優(yōu)化,通過對算法結(jié)構(gòu)的調(diào)整,將二維數(shù)組改為兩個一維數(shù)組,其空間復(fù)雜度由O(m*n)減小到了O(min(m,n));通過刪除字符串中相對應(yīng)位置相同的字符后進行計算,使得計算量減小,所占內(nèi)存減少,提高了計算效率,時間復(fù)雜度降為O(m1*n1)(m1≤m,n1≤n)。由表3 也可看出,本文方法在內(nèi)存開銷、計算時間和F1這幾個指標上都優(yōu)于原編輯距離算法。綜合考慮算法內(nèi)存開銷、計算時間和F1值等可知,本文提出的基于視覺特征的仿冒域名檢測方法性能更優(yōu)。

        5 結(jié)語

        本文針對仿冒域名的檢測問題,提出了一種輕量級的基于域名字符串的檢測方法,通過綜合考慮域名字符位置、字符相似度、操作種類對域名視覺的影響,提高了仿冒域名的檢測效率。實驗結(jié)果表明本文方法具有良好的檢測效果,對于防范仿冒域名攻擊具有重要意義。

        猜你喜歡
        字符串域名字符
        尋找更強的字符映射管理器
        字符代表幾
        一種USB接口字符液晶控制器設(shè)計
        電子制作(2019年19期)2019-11-23 08:41:50
        消失的殖民村莊和神秘字符
        如何購買WordPress網(wǎng)站域名及綁定域名
        騰訊八百萬美元收購域名
        一種新的基于對稱性的字符串相似性處理算法
        依據(jù)字符串匹配的中文分詞模型研究
        頂級域名爭奪戰(zhàn):ICANN放出1930個通用頂級域名,申請者有上千家
        一種針對Java中字符串的內(nèi)存管理方案
        国产乱人伦av在线无码| 精品视频在线观看日韩| 国产又猛又黄又爽| 国内精品久久久久久中文字幕| 亚洲高潮喷水中文字幕| 美腿丝袜网址亚洲av| 亚洲成av人片在www鸭子| 国产精品9999久久久久| 乱子伦av无码中文字幕| 白白白色视频在线观看播放| 精品人伦一区二区三区蜜桃91| 无码av天堂一区二区三区| 欧美成人久久久| 丰满少妇又爽又紧又丰满动态视频| 色婷婷精品久久二区二区蜜桃| 老妇女性较大毛片| 国产系列丝袜熟女精品视频| 亚洲福利视频一区二区三区| 久久久99精品成人片| 国产精品白丝喷水在线观看| 亚洲区偷拍自拍29p| 久久免费精品日本久久中文字幕| 亚州国产av一区二区三区伊在| 六月丁香婷婷色狠狠久久| 无遮挡很爽视频在线观看 | 97超碰国产成人在线| 中文字幕av免费专区| 黄色毛片视频免费| 国产视频一区二区三区在线看| 亚洲av无码国产精品色软件| 免费a级毛片出奶水| 午夜无码亚| 亚洲av色图一区二区三区| 国产精品久久久久久久妇| 亚洲国产成人AV人片久久网站| 一区二区三区四区免费国产视频| 日产精品99久久久久久| 亚洲爱婷婷色婷婷五月| 特黄三级一区二区三区| 国产亚洲精品97在线视频一| 亚洲а∨天堂久久精品2021|