一種實現惡意域名識別的方法及裝置的制造方法
【技術領域】
[0001] 本發(fā)明涉及信息安全領域,尤指一種實現惡意域名識別的方法及裝置。
【背景技術】
[0002] 域名系統(DNS)及其配套技術,DNS已成為互聯網不可或缺的技術,是極大多數用 戶與應用系統的互聯網入口,具有使IP與域名解耦的功能和可以靈活配置的特點,近年來 隨著Round-robinDNS、內容分發(fā)網絡(CDN,ContentDistributionNetwork)等技術逐漸 普及,DNS技術在負載均衡、高可靠性網絡架構設計等方面獲得了廣泛應用。
[0003] 但隨之而來的是,DNS技術的應用也受到了黑客的關注,DNS技術已經成為黑客的 一種保護屏障。由于這道屏障建立成本很低,并且效果較好,當前流形的僵尸網絡往往都會 利用DNS技術將命令與控制(C&C)服務器進行隱藏,其中常用技術主要包括DomainFlux和 IPFastFlux(又稱為FFSN,FastFluxServiceNetworks)兩類。
[0004] 帶有惡意域名系統的僵尸網絡大致包括多臺C&C服務器(或稱為mothership)、多 臺C&C代理服務器、以及多臺被控主機(或稱肉雞)。一個惡意域名,指向多臺C&C代理服務 器,當一個肉雞獲取命令時,通過該域名獲取到一個C&C代理服務器的IP。當某個C&C代 理服務器被破壞時,某個肉雞被"升級"為C&C代理服務器,填補空缺位置。在整個過程中, C&C服務器的IP都沒有暴露,其IP只有C&C代理服務器知道,通過監(jiān)聽肉雞和C&C代理服 務器間的通信無法得知,因此黑客容易掌握FFSN的運作原理,通過使用C&C服務器隱藏自 身IP,對于黑客而言,這種網絡結構具備極高的可用性。
[0005] FFSNDNS在間斷請求過程中,通常會體現出一些動態(tài)特征,這些特性可作為鑒別 FFSNDNS的依據,比如域名不存在狀態(tài)NXDomain返回頻率,IP切換頻率,生存時間(TTL) 時間長度等。值得注意的是,這些特征并非非常明顯,大量情況會使得惡意DNS與正常DNS 的動態(tài)特征十分相似,如:一些國際性大站,往往采用了CDN技術;一些關閉的站點;無效的 對等計算(P2P)資源服務器等,因此,FFSNDNS技術使惡意域名并不容易被發(fā)現。
[0006] 另一種惡意域名相關的技術是Domain Flux,該技術一般利用泛域名解析等技術, 將多個完整域名(FQDN,Full Qualified Domain Name)對應到一個惡意IP,該惡意IP對 目標主機的危害行為被邏輯地分散到多個FQDN,或者結合FFSN技術,每個惡意代理被控主 機一個FQDN,使得針對FQDN域名的統計值失效。另一種可能的作用是,結合FFSN技術,當 FFSN的C&C服務器暴露時,黑客會建立新的C&C服務器,沒死掉的代理服務器(agent)基于 動態(tài)生成算法(DGA,Dynamic Generate Algorithm)技術主動連入新的C&C服務器,重新接 管僵尸網絡。
[0007] 目前,基于靜態(tài)特征的惡意域名識別方法具有性能高、實時響應的特點,這里靜態(tài) 特征一般指域名的構詞特征(如特殊字符的占比,域名長度等)。但是,該方法存在準確率與 召回率都不理想的問題。動態(tài)特征的惡意域名識別方法一般建立在、以主動探測DNS記錄 為途徑的原始數據之上,雖然識別效果較好,但其無法實時響應,且應用條件苛刻。
[0008] DNS技術成為黑客的保護屏障,采用域名作為僵尸網絡的通信基礎,使僵尸網絡的 魯棒性大為提升,且C&C服務器更加難以進行物理位置定位,僅采用動態(tài)惡意域名識別方 法和僅采用靜態(tài)惡意域名識別方法,無法對惡意域名進行有效的識別。
【發(fā)明內容】
[0009] 為了解決上述技術問題,本發(fā)明提供一種實現惡意域名識別的方法及裝置,能夠 對DNS域名進行有效識別時以區(qū)分惡意域名和正常域名,提高惡意域名的識別效率。
[0010] 為了達到上述發(fā)明目的,本發(fā)明公開了一種實現惡意域名識別的方法,包括:
[0011] 提取域名系統DNS域名的動態(tài)特征集合,通過動態(tài)特征的惡意域名可信判斷模型 對動態(tài)特征集合進行動態(tài)特征的惡意域名高可信判斷;
[0012] 根據動態(tài)特征集合的惡意域名高可信判斷結果,確定DNS域名是否為惡意域名, 并將是否為惡意域名確定的結果存到相應的黑名單、或白名單中;
[0013] 所述動態(tài)特征集合至少包含:與IP相關的特征、和/或權威DNS服務器主域名一 致率。
[0014] 進一步地,與IP相關的特征至少包含:IP信息熵、和/或IP國家分布變化次數。
[0015] 進一步地,與IP相關的特征包含有IP信息熵時,IP信息熵為:
DNS惡意域名確定的結果的次數,I?I算子表示集合的基,即元素個數;
[0018] 拳) 4?,?,4,?]為算子從IP中以"?,,分割,提取4個字節(jié);
[0019] 其中,//f為第i次DNS請求的返回的第k個IP,IPSet為返回的IP的集合,用公 式表示為:IPSet=UPlil,IPli2,IP2il,…,IPN,k};
[0020] 與IP相關的特征包含有IP國家分布變化次數時,所述IP國家分布變化次數為:
[0024] CountryOfIP(IPiik)為算子,提取IPiik 所屬國家;
[0025] 其中,//f為第i次DNS請求的返回的第k個IP,IPSet為返回的IP的集合,用公 式表示為:IPSet=UPlil,IPli2,IP2il,…,IPN,k};
[0026] 動態(tài)特征集合包含有權威DNS服務器主域名一致率時,權威DNS服務器主域名一 致率為:權威服務器的主域域名的最高頻度與權威服務器的主域域名總頻度的比率。
[0027] 進一步地,對動態(tài)特征集合進行動態(tài)特征的惡意域名高可信判斷之前,該方法還 包括:根據預先設置的靜態(tài)特征過濾黑名單,將白名單與過濾后的黑名單通過支持向量機 SVM建立動態(tài)特征的惡意域名可信判斷模型。
[0028] 進一步地,根據預先設置的靜態(tài)特征過濾黑名單包括:預先設置靜態(tài)特征數字比 例小于0. 5、和/或數字和字母切換比例大于0. 3、和/或域名長度大于10對黑名單進行過 濾。
[0029] 進一步地,動態(tài)特征集合還包括:IP-致度、和/或IP變化次數、和/或查詢失敗 的頻度、和/或生存時間最小值TTL_MIN、和/或生存時間最大值TTL_MAX、和/或生存時間 平均值TTL_AVG、和/或生存時間標準差TTL_STD、和/或別名個數。
[0030] 進一步地,該方法之前還包括:對靜態(tài)特征集合的惡意域名進行高可信判斷和處 理,具體的包括:
[0031] 解析防護目標網絡的DNS域名,對解析的DNS域名進行黑名單和白名單過濾;
[0032] 當黑名單和白名單過濾未命中時,提取DNS域名的靜態(tài)特征集合,通過惡意域名 可信判斷模型對靜態(tài)特征集合進行惡意域名高可信判斷;
[0033] 當根據靜態(tài)特征集合進行惡意域名高可信判斷的域名為高可信判斷結果確定DNS 域名是否為惡意域名,并將確定是否為惡意域名的結果存到相應的黑名單、或白名單中;[0034] 當根據靜態(tài)特征集合進行惡意域名高可信判斷的域名為低可信判斷結果時,提取 DNS域名的動態(tài)特征集合,通過動態(tài)特征的惡意域名可信判斷模型對動態(tài)特征集合進行動 態(tài)特征的惡意域名高可信判斷。
[0035] 進一步地,靜態(tài)特征集合至少包含域名長度、和/或數字比例、和/或數字和字母 切換比例、和/或站點名和主域名長度比例、和/或連接符的數量、和/或最大詞長度、和/ 或國家頂級域名的類型、和/或國際頂級域名的類型、和/或二級國際頂級域名的類型;
[0036] 進一步地,在進行靜態(tài)特征集合的惡意域名高可信判斷之前,該方法還包括:將白 名單與黑名單通過支持向量機SVM建立靜態(tài)特征集合的惡意域名可信判斷模型。
[0037] 進一步地,白名單包括:取Alexa列表中排名靠前的域名作為白名單;
[0038] 黑名單包括:從掛馬舉報平臺通過爬蟲獲取被掛過木馬的域名;或利用公開的垃 圾郵件數據庫,提取其中的域名;
[0039]Alexa列表包括:從top.chinaz.com、或www.alexa.cn網站通過爬蟲獲取的列表。
[0040] 進一步地,取Alexa列表中排名靠前的域名包括:取Alexa列表中排名靠前2000 的域名。
[0041] 另一方面,本申請還提供一種實現惡意域名識別的裝置,包括:動態(tài)判斷單元和判 斷結果單元;其中,
[0042] 動態(tài)判斷單元,用于提取域名系統DNS域名的動態(tài)特征集合,通過動態(tài)特征的惡 意域名可信判斷模型對動態(tài)特征集合進行動態(tài)特征的惡意域名高可信判斷;
[0043] 判斷結果單元,用于根據動態(tài)特征集合的惡意域名高可信判斷結果,確定DNS域 名是否為惡意域名,并將是否為惡意域名確定的結果存到相應的黑名單、或白名單中;
[0044] 動態(tài)特征集合至少包含:與IP相關的特征、和/或權威DNS服務器主域名一致率。
[0045] 進一步地,與IP相關的特征至少包含:IP信息熵、和/或IP國家分布變化次數。
[0046] 進一步地,與IP相關的特征包含有IP信息熵時,IP信息熵為:
DNS惡意域名確定的結果的次數,I?I算子表示集合的基,即元素個數;
[0049] 功翁(禪"(/?) = !;?,?,為算子從IP中以"?,,分割,提取4個字節(jié);
[0050] 其中,//f為第i次DNS請求的返回的第k個IP,IPSet為返回的IP的集合,用公 式表示為:IPSet=UPlil,IPli2,IP2il,…,IPN,k};
[0051] 所述與IP相關的特征包含有IP國家分布變化次數時,所述IP國家分布變化次數 為:
[0055] CountryOfIP(IPiik)為算子,提取IPiik 所屬國家;
[0056] 其中,i/f為第i次DNS請求的返回的第k個IP,IPSet為返回的IP的集合,用公 式表示為IPSetUPhl,IP1,2,IP2,:,…,IPN,k};
[0057] 動態(tài)特征集合包含有權威DNS服務器主域名一致率時,權威DNS服務器主域名