国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      域名解析控制、響應(yīng)方法及相應(yīng)的裝置制造方法

      文檔序號:7823967閱讀:206來源:國知局
      域名解析控制、響應(yīng)方法及相應(yīng)的裝置制造方法
      【專利摘要】本發(fā)明涉及一種域名解析控制方法,包括以下步驟:監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù);加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址;接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù);解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。還公開一種域名解析響應(yīng)方法,包括如下步驟:接收加密的域名解析請求數(shù)據(jù)并將之解密;向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址;加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。相應(yīng)的,本發(fā)明還公開了相應(yīng)的裝置。以本發(fā)明所構(gòu)造的DNS客戶端和服務(wù)器的通信更為安全。
      【專利說明】域名解析控制、響應(yīng)方法及相應(yīng)的裝置

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及互聯(lián)網(wǎng)安全技術(shù),一方面,涉及一種域名解析控制方法和裝置,另一方面,涉及一種域名解析響應(yīng)方法和裝置。

      【背景技術(shù)】
      [0002]DNS是域名系統(tǒng)(Domain Name System)的縮寫,是因特網(wǎng)(Internet) —項(xiàng)核心服務(wù),它作為可以將域名和IP地址相互映射的一個分布式數(shù)據(jù)庫,能夠使人更方便的訪問互聯(lián)網(wǎng),而不用去記住能夠被機(jī)器直接讀取的IP數(shù)串。
      [0003]Internet主機(jī)域名的一般結(jié)構(gòu)為:主機(jī)名.三級域名.二級域名.頂級域名。Internet的頂級域名由Internet網(wǎng)絡(luò)協(xié)會域名注冊查詢負(fù)責(zé)網(wǎng)絡(luò)地址分配的委員會進(jìn)行登記和管理,它還為Internet的每一臺主機(jī)分配唯一的IP地址。
      [0004]其中,DNS根服務(wù)器是DNS樹型域名空間的“根”,負(fù)責(zé)DNS的解析,對于域名解析起著極其關(guān)鍵的作用。從理論上說,任何形式的標(biāo)準(zhǔn)域名要想被實(shí)現(xiàn)解析,按照技術(shù)流程,都必須經(jīng)過全球“層級式”域名解析體系的工作才能完成。
      [0005]由于域名系統(tǒng)(DNS:Domain Name System)設(shè)計上的先天不足,如果遭遇DNS污染,用戶在瀏覽器里輸入域名以后,瀏覽器就可能接收到DNS服務(wù)器返回的錯誤IP地址,進(jìn)而訪問不當(dāng)?shù)木W(wǎng)絡(luò)對象,進(jìn)一步造成安全問題。
      [0006]針對這類問題,IETF在二十幾年前便開始研宄DNS的安全擴(kuò)展(DNSSEC)。Kaminsky的發(fā)現(xiàn)極大地推動了 DNSSEC的發(fā)展。DNSSEC利用公開密鑰加密技術(shù),對DNS數(shù)據(jù)進(jìn)行數(shù)字簽名,據(jù)此能夠驗(yàn)證DNS數(shù)據(jù)來源合法性,以及驗(yàn)證傳輸過程中DNS數(shù)據(jù)是否被篡改,但是DNSSEC并不保證DNS數(shù)據(jù)的機(jī)密性。由于DNS數(shù)據(jù)本身并沒有被加密,并且DNS采用階層式模式,利用這一特點(diǎn),一些機(jī)構(gòu)監(jiān)視或者控制網(wǎng)絡(luò)等。典型的例子就是不能訪問一些海外的網(wǎng)站。DNSSEC由于數(shù)字簽名、簽名驗(yàn)證和信任鏈機(jī)制,需要額外的數(shù)據(jù)運(yùn)算,反而更容易受到攻擊。
      [0007]因此,基于DNS協(xié)議的既有缺陷,目前用戶通過終端訪問互聯(lián)網(wǎng)的安全問題依然尚未得到完善的克服,這一安全問題尤其容易出現(xiàn)在終端與DNS服務(wù)器的交互過程中,有鑒于此,DNS服務(wù)及其數(shù)據(jù)的安全性,仍有較大提升空間。


      【發(fā)明內(nèi)容】

      [0008]有鑒于上述至少一個方面的問題,本發(fā)明的目的在于提供一種域名解析控制方法和相應(yīng)的裝置。
      [0009]作為前一目的的不同側(cè)面,本發(fā)明的第二目的在于提供一種域名解析響應(yīng)方法以及相應(yīng)的裝置。
      [0010]為實(shí)現(xiàn)本發(fā)明的目的,本發(fā)明采取如下技術(shù)方案:
      [0011]本發(fā)明提供的一種域名解析控制方法,包括以下步驟:
      [0012]監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù);
      [0013]加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址;
      [0014]接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù);
      [0015]解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。
      [0016]進(jìn)一步,本機(jī)用于為其提供DNS解析服務(wù)的網(wǎng)絡(luò)地址被設(shè)置為本機(jī)地址。本機(jī)地址的表現(xiàn)形式為如下IP地址形式任意之一:127.0.0.1,或本機(jī)接入局域網(wǎng)或公網(wǎng)所屬的固定IP地址。
      [0017]較佳的,通過UDP協(xié)議的53端口實(shí)施所述的監(jiān)聽,以獲取所述域名解析請求數(shù)據(jù)。
      [0018]較佳的,采用非對稱加密算法對所述域名解析請求數(shù)據(jù)進(jìn)行加密、對域名解析結(jié)果數(shù)據(jù)進(jìn)行解密。
      [0019]進(jìn)一步,所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù),其密文中包含有隨機(jī)碼。
      [0020]具體的,所述的加密、解密的過程中,基于網(wǎng)絡(luò)協(xié)議中的鏈路層,分別對所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù)相應(yīng)實(shí)施數(shù)據(jù)包級別的加密、解密。
      [0021]可選的,當(dāng)未能成功解密所述域名解析結(jié)果數(shù)據(jù)時,丟棄相應(yīng)的數(shù)據(jù)包。
      [0022]進(jìn)一步,以所述解密后的域名解析結(jié)果數(shù)據(jù)對所述域名解析請求數(shù)據(jù)的應(yīng)答,導(dǎo)致本機(jī)的用戶界面的至少部分顯示內(nèi)容的改變。
      [0023]較佳的,當(dāng)監(jiān)聽到產(chǎn)生所述的域名解析請求數(shù)據(jù)時,優(yōu)先依據(jù)域名從緩存數(shù)據(jù)表中檢索相對應(yīng)的IP地址,當(dāng)存在對應(yīng)的IP地址時,直接以該IP地址為域名解析結(jié)果數(shù)據(jù)應(yīng)答所述域名解析請求數(shù)據(jù);所述緩存數(shù)據(jù)表存儲有從解密后的域名解析結(jié)果數(shù)據(jù)中提取出的域名和對應(yīng)的IP地址。
      [0024]較佳的,本方法由獨(dú)立的系統(tǒng)服務(wù)進(jìn)程運(yùn)行于本機(jī)操作系統(tǒng)中加以實(shí)施。
      [0025]可選的,本機(jī)為個人計算機(jī)或移動終端。
      [0026]本發(fā)明提供的一種域名解析控制裝置,包括:
      [0027]監(jiān)聽單元,用于監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù);
      [0028]加密單元,用于加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址;
      [0029]接收單元,用于接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù);
      [0030]解密單元,用于解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。
      [0031]進(jìn)一步,本機(jī)用于為其提供DNS解析服務(wù)的網(wǎng)絡(luò)地址被設(shè)置為本機(jī)地址。本機(jī)地址的表現(xiàn)形式為如下IP地址形式任意之一:127.0.0.1,或本機(jī)接入局域網(wǎng)或公網(wǎng)所屬的固定IP地址。
      [0032]較佳的,所述的監(jiān)聽單元被配置為通過UDP協(xié)議的53端口實(shí)施所述的監(jiān)聽,以獲取所述域名解析請求數(shù)據(jù)。
      [0033]較佳的,所述加密單元和解密單元分別被配置為采用非對稱加密算法對所述域名解析請求數(shù)據(jù)進(jìn)行加密、對域名解析結(jié)果數(shù)據(jù)進(jìn)行解密。
      [0034]進(jìn)一步,所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù),其密文中包含有隨機(jī)碼。
      [0035]具體的,所述加密單元和解密單元,被配置為基于網(wǎng)絡(luò)協(xié)議中的鏈路層,分別對所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù)相應(yīng)實(shí)施數(shù)據(jù)包級別的加密、解密。
      [0036]較佳的,所述解密單元被配置為當(dāng)未能成功解密所述域名解析結(jié)果數(shù)據(jù)時,丟棄相應(yīng)的數(shù)據(jù)包。
      [0037]進(jìn)一步,所述解密單元以所述解密后的域名解析結(jié)果數(shù)據(jù)對所述域名解析請求數(shù)據(jù)的應(yīng)答,導(dǎo)致本機(jī)的用戶界面的至少部分顯示內(nèi)容的改變。
      [0038]較佳的,所述監(jiān)控單元被配置為當(dāng)監(jiān)聽到產(chǎn)生所述的域名解析請求數(shù)據(jù)時,優(yōu)先依據(jù)域名從緩存數(shù)據(jù)表中檢索相對應(yīng)的IP地址,當(dāng)存在對應(yīng)的IP地址時,直接以該IP地址為域名解析結(jié)果數(shù)據(jù)應(yīng)答所述域名解析請求數(shù)據(jù);所述緩存數(shù)據(jù)表存儲有從解密后的域名解析結(jié)果數(shù)據(jù)中提取出的域名和對應(yīng)的IP地址。
      [0039]較佳的,本裝置被實(shí)現(xiàn)為由獨(dú)立的系統(tǒng)服務(wù)進(jìn)程運(yùn)行于本機(jī)操作系統(tǒng)中加以實(shí)施。
      [0040]可選的,本機(jī)為個人計算機(jī)或移動終端。
      [0041]本發(fā)明的一種域名解析響應(yīng)方法,包括如下步驟:
      [0042]接收加密的域名解析請求數(shù)據(jù)并將之解密;
      [0043]向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址;
      [0044]加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。
      [0045]較佳的,采用非對稱加密算法對所述域名解析請求數(shù)據(jù)進(jìn)行解密、對域名解析結(jié)果數(shù)據(jù)進(jìn)行加密。
      [0046]進(jìn)一步,所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù),其密文中包含有隨機(jī)碼。
      [0047]進(jìn)一步,所述的解密、加密的過程中,基于網(wǎng)絡(luò)協(xié)議中的鏈路層,分別對所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù)相應(yīng)實(shí)施數(shù)據(jù)包級別的解密、加密。
      [0048]較佳的,當(dāng)未能成功解密所述域名解析請求數(shù)據(jù)時,丟棄相應(yīng)的數(shù)據(jù)包。
      [0049]本發(fā)明提供的一種域名解析響應(yīng)裝置,包括:
      [0050]解密單元,用于接收加密的域名解析請求數(shù)據(jù)并將之解密;
      [0051]查詢單元,用于向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址;
      [0052]加密單元,用于加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。
      [0053]較佳的,所述解密單元和加密單元,被配置為采用非對稱加密算法分別對所述域名解析請求數(shù)據(jù)進(jìn)行解密、對域名解析結(jié)果數(shù)據(jù)進(jìn)行加密。
      [0054]進(jìn)一步,所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù),其密文中包含有隨機(jī)碼。
      [0055]具體的,所述的解密單元、加密單元,被配置為基于網(wǎng)絡(luò)協(xié)議中的鏈路層,分別對所述域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù)相應(yīng)實(shí)施數(shù)據(jù)包級別的解密、加密。
      [0056]較佳的,所述的解密單元被配置為當(dāng)未能成功解密所述域名解析請求數(shù)據(jù)時,丟棄相應(yīng)的數(shù)據(jù)包。
      [0057]相較于現(xiàn)有技術(shù),本發(fā)明至少具有如下優(yōu)點(diǎn):
      [0058]1、本發(fā)明的域名解析控制方法及其裝置與本發(fā)明的域名解析響應(yīng)方法及其裝置之間存在相應(yīng)性,前者可以構(gòu)造為客戶端,后者可以構(gòu)造為服務(wù)器,無論是客戶端還是服務(wù)器,依其在本發(fā)明中實(shí)現(xiàn)的功能而言,均能通過加密確保DNS查詢通信過程的安全,并且通過解密手段獲得相應(yīng)的正確數(shù)據(jù)。
      [0059]2、本發(fā)明的域名解析控制方法及相應(yīng)的裝置,能夠起到代理解析域名的作用,依據(jù)其與DNS服務(wù)器(通過預(yù)設(shè)的網(wǎng)絡(luò)地址識別)之間的協(xié)議,確??蛻襞cDNS服務(wù)器之間DNS數(shù)據(jù)的傳輸安全,側(cè)重于客戶端和第一級DNS服務(wù)器之間的通信安全,并且在必要時還能實(shí)現(xiàn)緩存解析結(jié)果以備后用,當(dāng)出現(xiàn)異常情況時,例如DDos攻擊等,啟動相關(guān)安全聯(lián)動措施,僅對正常域名進(jìn)行解答服務(wù)。
      [0060]3、在客戶端與服務(wù)端之間,均實(shí)現(xiàn)了與DNS相關(guān)的數(shù)據(jù)的加密,并且是以鏈路層級別進(jìn)行的加密,因此,本發(fā)明通過加密DNS流量,無論是在客戶端對請求數(shù)據(jù)進(jìn)行的加密,還是在服務(wù)端對結(jié)果數(shù)據(jù)進(jìn)行的加密,均可阻止常見的DNS攻擊,如重放攻擊、觀察攻擊、時序攻擊、中間人攻擊和解析偽造攻擊,防止DNS污染。相對于DNSSEC,本發(fā)明還進(jìn)一步結(jié)合公鑰加密算法和隨機(jī)碼對DNS數(shù)據(jù)進(jìn)行了加密,能為DNS數(shù)據(jù)包提供機(jī)密性和完整性保護(hù),這種保護(hù)是鏈路級的,這樣更有效率,可以負(fù)擔(dān)起每條查詢都單獨(dú)加密,且只需要維護(hù)客戶端到服務(wù)器間的通道,從而也進(jìn)一步體現(xiàn)其安全性。
      [0061]4、實(shí)現(xiàn)了本發(fā)明方法和裝置的客戶端和服務(wù)器,均可以抵御放大攻擊,收到響應(yīng)包時,客戶端或服務(wù)器會使用根據(jù)解密信息嘗試解密,如果失敗則直接丟棄。該過程速度很快,能夠抵御此類攻擊。針對ID猜測和預(yù)測查詢攻擊,攻擊者雖然構(gòu)造了滿足傳輸協(xié)議參數(shù)的數(shù)據(jù)包,但是卻沒有用于加密的由客戶端和服務(wù)器共享的密碼信息,客戶端或服務(wù)器收到偽造的數(shù)據(jù)包后解密失敗直接將其丟棄。
      [0062]5、實(shí)現(xiàn)了本發(fā)明方法和裝置的客戶端和服務(wù)器,可對預(yù)設(shè)的重點(diǎn)域/域名進(jìn)行重點(diǎn)保護(hù);并對域名的對遞歸解析結(jié)果進(jìn)行監(jiān)控。
      [0063]6、實(shí)現(xiàn)了本發(fā)明方法和裝置的客戶端和服務(wù)器,可防域名投毒和域名劫持;
      [0064]概括而言,本發(fā)明所實(shí)現(xiàn)的相關(guān)方法和裝置,能滿足DNS數(shù)據(jù)的隱私性需求并可防止第三方篡改DNS數(shù)據(jù)以保證數(shù)據(jù)完整性,分別為DNS客戶端和DNS服務(wù)器提供了相應(yīng)的易于實(shí)現(xiàn)的技術(shù)方案。
      [0065]本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過本發(fā)明的實(shí)踐了解到。

      【專利附圖】

      【附圖說明】
      [0066]本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對實(shí)施例的描述中將變得明顯和容易理解,其中:
      [0067]圖1是本發(fā)明的域名解析控制方法的流程示意圖;
      [0068]圖2是本發(fā)明的域名解析控制裝置的原理框圖;
      [0069]圖3是本發(fā)明的域名解析響應(yīng)方法的流程示意圖;
      [0070]圖4是本發(fā)明的域名解析響應(yīng)裝置的原理框圖。

      【具體實(shí)施方式】
      [0071]下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。
      [0072]本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,除非特意聲明,這里使用的單數(shù)形式“一”、“一個”、“所述”和“該”也可包括復(fù)數(shù)形式。應(yīng)該進(jìn)一步理解的是,本發(fā)明的說明書中使用的措辭“包括”是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加一個或多個其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應(yīng)該理解,當(dāng)我們稱元件被“連接”或“耦接”到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這里使用的“連接”或“耦接”可以包括無線連接或無線耦接。這里使用的措辭“和/或”包括一個或更多個相關(guān)聯(lián)的列出項(xiàng)的全部或任一單元和全部組合。
      [0073]本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,除非另外定義,這里使用的所有術(shù)語(包括技術(shù)術(shù)語和科學(xué)術(shù)語),具有與本發(fā)明所屬領(lǐng)域中的普通技術(shù)人員的一般理解相同的意義。還應(yīng)該理解的是,諸如通用字典中定義的那些術(shù)語,應(yīng)該被理解為具有與現(xiàn)有技術(shù)的上下文中的意義一致的意義,并且除非像這里一樣被特定定義,否則不會用理想化或過于正式的含義來解釋。
      [0074]本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,這里所使用的“終端”、“終端設(shè)備”既包括無線信號接收器的設(shè)備,其僅具備無發(fā)射能力的無線信號接收器的設(shè)備,又包括接收和發(fā)射硬件的設(shè)備,其具有能夠在雙向通信鏈路上,執(zhí)行雙向通信的接收和發(fā)射硬件的設(shè)備。這種設(shè)備可以包括:蜂窩或其他通信設(shè)備,其具有單線路顯示器或多線路顯示器或沒有多線路顯示器的蜂窩或其他通信設(shè)備;PCS (Personal Communicat1ns Service,個人通信系統(tǒng)),其可以組合語音、數(shù)據(jù)處理、傳真和/或數(shù)據(jù)通信能力;PDA (Personal Digital Assistant,個人數(shù)字助理),其可以包括射頻接收器、尋呼機(jī)、互聯(lián)網(wǎng)/內(nèi)聯(lián)網(wǎng)訪問、網(wǎng)絡(luò)瀏覽器、記事本、日歷和/或GPS (Global Posit1ning System,全球定位系統(tǒng))接收器;常規(guī)膝上型和/或掌上型計算機(jī)或其他設(shè)備,其具有和/或包括射頻接收器的常規(guī)膝上型和/或掌上型計算機(jī)或其他設(shè)備。這里所使用的“終端”、“終端設(shè)備”可以是便攜式、可運(yùn)輸、安裝在交通工具(航空、海運(yùn)和/或陸地)中的,或者適合于和/或配置為在本地運(yùn)行,和/或以分布形式,運(yùn)行在地球和/或空間的任何其他位置運(yùn)行。這里所使用的“終端”、“終端設(shè)備”還可以是通信終端、上網(wǎng)終端、音樂/視頻播放終端,例如可以是PDA、MID(Mobile Internet Device,移動互聯(lián)網(wǎng)設(shè)備)和/或具有音樂/視頻播放功能的移動電話,也可以是智能電視、機(jī)頂盒等設(shè)備。
      [0075]本【技術(shù)領(lǐng)域】技術(shù)人員可以理解,這里所使用的服務(wù)器、云端、遠(yuǎn)端網(wǎng)絡(luò)設(shè)備等概念,具有等同效果,其包括但不限于計算機(jī)、網(wǎng)絡(luò)主機(jī)、單個網(wǎng)絡(luò)服務(wù)器、多個網(wǎng)絡(luò)服務(wù)器集或多個服務(wù)器構(gòu)成的云。在此,云由基于云計算(Cloud Computing)的大量計算機(jī)或網(wǎng)絡(luò)服務(wù)器構(gòu)成,其中,云計算是分布式計算的一種,由一群松散耦合的計算機(jī)集組成的一個超級虛擬計算機(jī)。本發(fā)明的實(shí)施例中,遠(yuǎn)端網(wǎng)絡(luò)設(shè)備、終端設(shè)備與WNS服務(wù)器之間可通過任何通信方式實(shí)現(xiàn)通信,包括但不限于,基于3GPP、LTE、WIMAX的移動通信、基于TCP/IP、UDP協(xié)議的計算機(jī)網(wǎng)絡(luò)通信以及基于藍(lán)牙、紅外傳輸標(biāo)準(zhǔn)的近距無線傳輸方式。
      [0076]本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明所稱的“應(yīng)用”、“應(yīng)用程序”、“應(yīng)用軟件”以及類似表述的概念,是業(yè)內(nèi)技術(shù)人員所公知的相同概念,是指由一系列計算機(jī)指令及相關(guān)數(shù)據(jù)資源有機(jī)構(gòu)造的適于電子運(yùn)行的計算機(jī)軟件。除非特別指定,這種命名本身不受編程語言種類、級別,也不受其賴以運(yùn)行的操作系統(tǒng)或平臺所限制。理所當(dāng)然地,此類概念也不受任何形式的終端所限制。
      [0077]本發(fā)明的方法及其裝置,可以通過編程實(shí)現(xiàn)為軟件,安裝到計算機(jī)、移動終端等設(shè)備中進(jìn)行運(yùn)行,這些設(shè)備,依其所實(shí)現(xiàn)的具體方法和裝置的不同,而表現(xiàn)為客戶端、服務(wù)端等形式。具體而言,本發(fā)明的域名解析控制方法及相應(yīng)的裝置,適宜配置在個人計算機(jī)與手機(jī)、平板電腦等移動終端設(shè)備中,以此構(gòu)造客戶端。本發(fā)明的域名解析響應(yīng)方法及相應(yīng)原裝置,適宜配置在具有服務(wù)器能力的計算機(jī)設(shè)備中,接入互聯(lián)網(wǎng)開放其服務(wù),而構(gòu)造出一臺本地DNS服務(wù)器,與所述的客戶端共同構(gòu)成一個基于C/S架構(gòu)的DNS系統(tǒng)。
      [0078]圖1通過步驟流程的形式揭示了本發(fā)明的一個實(shí)施例,該實(shí)施例屬于對本發(fā)明的域名解析控制方法的具體實(shí)現(xiàn),具體而言,實(shí)現(xiàn)為一個可以安裝于諸如Windows系列操作系統(tǒng)(包括但不限于 Windows XP, Window 7, Windows 8, Windows Phone 等)或者 Unix 系列操作系統(tǒng)(包括但不限于Unix、Android、Linux、1S、Ubuntu等)的軟件,由該軟件的運(yùn)行,而實(shí)現(xiàn)相應(yīng)的具體步驟。這些步驟包括:
      [0079]步驟S11、監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù)。
      [0080]這里所稱的本機(jī),即是安裝有該軟件的計算機(jī)設(shè)備,或手機(jī)、平板等移動終端設(shè)備。本步驟的實(shí)質(zhì)是要實(shí)現(xiàn)對本機(jī)自身所設(shè)置的DNS服務(wù)器的接管,因此,本步驟可以通過指令將本機(jī)所設(shè)置的,用于為本機(jī)提供DNS解析服務(wù)的網(wǎng)絡(luò)地址修改為本機(jī)地址。這里所稱的指令,因應(yīng)操作系統(tǒng)的不同而不同,例如,在Windows操作系統(tǒng)中,便可通過調(diào)用以下格式的DOS指令來修改:
      [0081]netsh interface ip set dns"網(wǎng)絡(luò)連接"static 114.114.114.114
      [0082]當(dāng)然也可直接以程序代碼來實(shí)現(xiàn)。由于本領(lǐng)域技術(shù)人員熟知各種操作系統(tǒng)中的多種用于修改DNS地址的指令或程序的實(shí)現(xiàn)方式,故而恕不對此加以贅述。所稱的網(wǎng)絡(luò)地址,即本機(jī)原來設(shè)置的DNS服務(wù)器地址,或者來自于DHCP自動獲取,或者來源于用戶的手工設(shè)置,均在本步驟中被修改為指向本機(jī)自身。而本機(jī)地址的表現(xiàn)形式,也表現(xiàn)出多種靈活的設(shè)置方式,例如,IP地址127.0.0.1即是指向本機(jī)的默認(rèn)IP地址;通過DHCP獲取本機(jī)的局域網(wǎng)IP地址后,這個IP地址也便是本機(jī)地址;同理,假設(shè)用戶將本機(jī)的IP地址設(shè)置為192.168.88.100,則本機(jī)地址即指192.168.88.100。甚至某些情況下,本機(jī)如果接入公網(wǎng),也可以其公網(wǎng)IP地址指代自身。修改了本機(jī)所指向的DNS服務(wù)器的地址后,可以在本機(jī)的相關(guān)設(shè)置頁面中直觀的獲知這一設(shè)置結(jié)果,例如,在Windows操作系統(tǒng)中,可以通過查看網(wǎng)卡屬性中的TCP/IP協(xié)議的高級屬性,從其中的首選DNS服務(wù)器和/或備選DNS服務(wù)器項(xiàng)中直觀地看到。本領(lǐng)域技術(shù)人員可以根據(jù)這些方式,察看IP地址的變化,而直觀地確定是否對本機(jī)原來所設(shè)置的DNS服務(wù)器地址做出了修改,恕不贅述。
      [0083]由于DNS協(xié)議是通過UDP協(xié)議的53號端口進(jìn)行通信的,并且已經(jīng)將本機(jī)的DNS服務(wù)器地址指向本機(jī),因此,本發(fā)明進(jìn)一步便在UDP的53號端口監(jiān)聽本機(jī)發(fā)起的DNS解析請求。一旦用戶通過瀏覽器發(fā)起基于域名的網(wǎng)頁訪問,便會生成DNS解析請求,該請求便能被本發(fā)明接收,從而獲得一個域名解析請求數(shù)據(jù)。為了后續(xù)更易于理解,以下以一個網(wǎng)頁訪問為例,說明其工作機(jī)理:
      [0084]I)數(shù)據(jù)從應(yīng)用層產(chǎn)生(HTTP協(xié)議)
      [0085]2)數(shù)據(jù)被從應(yīng)用層送到傳輸層,這時候必須包含端口信息以便構(gòu)造傳輸層的TCP協(xié)議的頭部。由于是WEB應(yīng)用,目標(biāo)端口就是80,本地端口由操作系統(tǒng)自動產(chǎn)生。
      [0086]3)數(shù)據(jù)被送到IP層。IP層要求應(yīng)用提供源和目的端的IP地址。由于用戶輸入的是域名,這時候,請求DNS應(yīng)用,即計算機(jī)上的DNS應(yīng)用需要向DNS服務(wù)器發(fā)出一個DNS請求。
      [0087]4)從應(yīng)用層(DNS協(xié)議)產(chǎn)生DNS請求包,送入傳輸層(UDP),加上UDP頭部后,送入IP層,加上IP頭部后(此時,本機(jī)和DNS的IP都已知,可以構(gòu)成IP頭)。送入鏈路層。
      [0088]5)鏈路層構(gòu)造頭部需要加上本機(jī)及網(wǎng)關(guān)的MAC地址。此時,需發(fā)送ARP請求。
      [0089]6)所以,計算機(jī)首先會發(fā)出ARP請求包(這是鏈路層的工作)
      [0090]7)收到ARP應(yīng)答后,就立即發(fā)出DNS請求包。
      [0091]8)收到DNS應(yīng)答后,就可以啟動TCP協(xié)議,進(jìn)行三次握手,進(jìn)行連接。
      [0092]9)TCP建立連接后,HTTP協(xié)議就可以發(fā)送,HTTP的請求,這時,應(yīng)用層之間就可以互相進(jìn)行通訊了。
      [0093]由以上過程可以看出,在步驟4)之后,在鏈路層中,已經(jīng)完成了 UDP頭部的封裝,在步驟7)之后,會立刻發(fā)出最終的DNS請求包,等候DNS服務(wù)器反饋應(yīng)答數(shù)據(jù)。本機(jī)由于實(shí)現(xiàn)了監(jiān)聽功能,因此將通過UDP協(xié)議的53號端口收到相應(yīng)的域名解析請求數(shù)據(jù),這一數(shù)據(jù)的不論其在網(wǎng)絡(luò)協(xié)議的不同層次中如何變化,在本質(zhì)上均是基于一個域名發(fā)起的一個要求DNS服務(wù)器解析該域名的IP地址的請求。
      [0094]誠然,除上述的實(shí)現(xiàn)方式,也可通過類似DNS劫持的方式,來實(shí)現(xiàn)這種對本機(jī)的域名解析請求數(shù)據(jù)的監(jiān)聽和獲取。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)知曉這一變通,對本步驟的理解不應(yīng)受限于上述特例。
      [0095]通過以上的方式獲取本機(jī)發(fā)起的域名解析請求數(shù)據(jù)后,本發(fā)明將可做進(jìn)一步處理。
      [0096]步驟S12、加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址。
      [0097]實(shí)現(xiàn)了本方法的軟件,只是起到代理解析的作用,因此本身記載有為自身提供DNS解析服務(wù)的服務(wù)器的網(wǎng)絡(luò)地址,當(dāng)其接收到本機(jī)發(fā)起的域名解析請求(數(shù)據(jù))時,便通過該網(wǎng)絡(luò)地址向所述服務(wù)器進(jìn)一步發(fā)起DNS解析請求,后續(xù)當(dāng)獲取服務(wù)器的應(yīng)答后,再應(yīng)答該域名解析請求數(shù)據(jù)。
      [0098]本發(fā)明為了進(jìn)一步加強(qiáng)DNS請求的安全性,尤其是其中的數(shù)據(jù)的安全性,如前所述,避免承受各種攻擊,避免被篡改等,在本步驟中對域名解析請求數(shù)據(jù)進(jìn)行鏈路級的加密,也就是在鏈路層對相應(yīng)的請求包進(jìn)行加密。需要注意,提出鏈路級加密同理只是本發(fā)明的一個特例,本領(lǐng)域技術(shù)人員同理不應(yīng)受此限制,而可依據(jù)加密效果的要求,靈活選用其他公知的加密層級和相適應(yīng)的加密方法。
      [0099]本發(fā)明優(yōu)先推薦采用非對稱加密算法,也即公鑰算法,對本機(jī)產(chǎn)生的域名解析請求數(shù)據(jù)進(jìn)行加密,并且,也可結(jié)合隨機(jī)碼進(jìn)行。理論上,只要客戶端(本機(jī))與DNS服務(wù)器之間存在可以互相理解的加密協(xié)議,便不影響本發(fā)明的實(shí)施。但本發(fā)明采用非對稱加密算法而實(shí)現(xiàn)的加密方案,顯然能夠體現(xiàn)出更高的保密效果,實(shí)現(xiàn)更安全的通信。
      [0100]進(jìn)一步,為了進(jìn)一步加強(qiáng)安全性,可以考慮在非對稱加密之前,加入隨機(jī)碼,藉由該隨機(jī)碼進(jìn)一步確保來源合法性。
      [0101]非對稱加密算法與隨機(jī)碼,可以由本領(lǐng)域技術(shù)人員靈活結(jié)合運(yùn)用,不僅可以用于本發(fā)明的域名解析請求數(shù)據(jù)的加解密,也可以用于本發(fā)明的域名解析結(jié)果數(shù)據(jù)的加解密。以下給出一個對全文進(jìn)行保護(hù)的方法供本領(lǐng)域技術(shù)人員參照實(shí)施:
      [0102]1、加密過程概述:
      [0103]I)抽取全文數(shù)據(jù)(域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù)等)的消息摘要;
      [0104]2)利用消息摘要算法對隨機(jī)生成的擾動串(隨機(jī)碼)和所述消息摘要進(jìn)行散列運(yùn)算,得到數(shù)字簽名;
      [0105]3)將非對稱加密后的擾動串、數(shù)字簽名及全文數(shù)據(jù)組合成加密后的加密數(shù)據(jù)發(fā)放給目標(biāo)地址(預(yù)設(shè)的網(wǎng)絡(luò)地址所指向的DNS服務(wù)器、客戶端本機(jī)等)。
      [0106]2、解密過程概述:
      [0107]I)接收含有加密的擾動串、數(shù)字簽名及全文數(shù)據(jù)的加密數(shù)據(jù),以約定的非對稱加密算法的密鑰解密所述擾動串;
      [0108]2)按與發(fā)送加密數(shù)據(jù)方約定的方法抽取所接收的全文數(shù)據(jù)的消息摘要;
      [0109]3)利用消息摘要算法對解密后的擾動串和所述消息摘要進(jìn)行散列運(yùn)算,得到數(shù)字簽名;
      [0110]4)將該數(shù)字簽名與加密數(shù)據(jù)中的數(shù)字簽名進(jìn)行比較,在比較結(jié)果相同時,確認(rèn)全文數(shù)據(jù)合法。
      [0111]通過上述提供的一種適于本發(fā)明的結(jié)合了非對稱加密技術(shù)和隨機(jī)碼加密技術(shù)的方法,本領(lǐng)域技術(shù)人員顯然能進(jìn)一步變化出更多的加密方案,從而在本發(fā)明的思維的引領(lǐng)下,輕易地設(shè)計出本發(fā)明的更多的同理變例。
      [0112]前述所稱的預(yù)設(shè)的網(wǎng)絡(luò)地址,一般通過實(shí)現(xiàn)了本發(fā)明的軟件提供的用戶界面進(jìn)行設(shè)置,或者,在軟件出廠時便已經(jīng)實(shí)現(xiàn)了這種默認(rèn)設(shè)置,甚至,也可通過默認(rèn)地址從云端中下載實(shí)現(xiàn)這種預(yù)設(shè)。因此,該網(wǎng)絡(luò)地址的預(yù)設(shè),應(yīng)當(dāng)理解為更廣泛的提供一個與本機(jī)存在協(xié)議默契的網(wǎng)絡(luò)中的本地DNS服務(wù)器的多種靈活的提供方式任意之一,只是其在本發(fā)明所實(shí)現(xiàn)的客戶端軟件中,將表現(xiàn)為一個網(wǎng)絡(luò)地址,一般是表現(xiàn)為一個IP地址,而該客戶端軟件,則將其所有加密后的域名解析請求數(shù)據(jù)通過該網(wǎng)絡(luò)地址發(fā)送給該網(wǎng)絡(luò)地址所指向的DNS服務(wù)器。本實(shí)施例的DNS解析記DNS的解析記錄通常包括:該域名對應(yīng)的IP地址(、該域名對應(yīng)的別名記錄(cname記錄)、郵件交換記錄(Mail Exchanger,MX記錄)。
      [0113]本發(fā)明實(shí)施例中,在對域名信息的解析的過程中,會訪問到域名空間所有層次的節(jié)點(diǎn),本發(fā)明實(shí)施例能夠?qū)⑦@些節(jié)點(diǎn)信息的授權(quán)記錄備份下來,根據(jù)記錄的相互關(guān)系,組成一個備份的域名層次空間,稱為"授權(quán)信息數(shù)據(jù)庫"。這個授權(quán)數(shù)據(jù)庫對應(yīng)域名空間的每一級,并且數(shù)據(jù)信息是實(shí)時更新。即,本發(fā)明實(shí)施例能夠?qū)ⅰ笆跈?quán)信息數(shù)據(jù)庫”變成了一個互聯(lián)網(wǎng)域名層次的鏡像。由于數(shù)據(jù)庫擁有全部的授權(quán)信息記錄,本發(fā)明實(shí)施例可以在根節(jié)點(diǎn)甚至是任何一級的域名節(jié)點(diǎn)服務(wù)器出現(xiàn)故障時,替代這一級的服務(wù)器進(jìn)行授權(quán)解析服務(wù)。因此,本發(fā)明實(shí)施例能夠制止域名信息的遞歸操作,進(jìn)而阻止域名信息繼續(xù)被劫持。進(jìn)而,本發(fā)明實(shí)施例能夠保證更加及時修復(fù)被投毒和/或被劫持的域名信息,方便用戶繼續(xù)瀏覽或者使用等。而對于重要等級較低的域名信息,本發(fā)明實(shí)施例能夠?qū)τ蛎畔⑦M(jìn)行監(jiān)控,以及時發(fā)現(xiàn)域名信息的異常,并提示用戶瀏覽當(dāng)前域名信息對應(yīng)的響應(yīng)結(jié)果可能存在安全性風(fēng)險。
      [0114]通過執(zhí)行本步驟,便已經(jīng)將本機(jī)的域名解析請求數(shù)據(jù)真正提交給了互聯(lián)網(wǎng)上的本地DNS服務(wù)器,后續(xù)將予以詳細(xì)揭示其由本發(fā)明實(shí)現(xiàn)的實(shí)現(xiàn)方式和工作原理。對于本方法而言,表現(xiàn)在客戶端軟件的運(yùn)行過程中,一旦發(fā)送出該域名解析請求數(shù)據(jù),將等候相應(yīng)的反饋,也即等候所述網(wǎng)絡(luò)地址所指向的DNS服務(wù)器的應(yīng)答數(shù)據(jù)。
      [0115]步驟S13、接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù)。
      [0116]DNS服務(wù)器與客戶端的通信是非常迅速的,因此,本發(fā)明的客戶端軟件將迅速地接收到由該網(wǎng)絡(luò)地址所指向的DNS服務(wù)器的域名解析結(jié)果數(shù)據(jù)。需要注意的是,DNS服務(wù)器也采用前述所揭示的加密方法對所述域名解析結(jié)果數(shù)據(jù)進(jìn)行了加密,因此,本步驟接收到的是加密后的域名解析結(jié)果數(shù)據(jù)。顯然,對于這種加密的域名解析結(jié)果數(shù)據(jù),需要由本發(fā)明的客戶端軟件進(jìn)行解密后,才能提供用以正常應(yīng)答本機(jī)發(fā)起的DNS解析請求。
      [0117]步驟S14、解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。
      [0118]對該域名解析結(jié)果數(shù)據(jù)進(jìn)行解密,實(shí)質(zhì)上是前述加密方法的逆過程,也一并在前述的解密過程中予以揭示。將該域名解析結(jié)果數(shù)據(jù)進(jìn)行解密后,將得到可以被DNS協(xié)議正確識別的反饋數(shù)據(jù),依據(jù)本發(fā)明所實(shí)現(xiàn)的客戶端軟件服務(wù)進(jìn)程便可以將解密后的這種域名解析結(jié)果數(shù)據(jù)作為反饋數(shù)據(jù),用于應(yīng)答發(fā)起域名解析請求的進(jìn)程,也就是應(yīng)答本機(jī)發(fā)起的所述域名解析請求數(shù)據(jù),例如前述的用于訪問網(wǎng)頁的瀏覽器。
      [0119]為了避免放大攻擊(DDOS),客戶端實(shí)施解密時,會根據(jù)解密信息(例如私鑰)嘗試解密,如果不能順利解密所述加密的域名解析結(jié)果數(shù)據(jù),則直接將之丟棄。該過程速度很快,能夠抵御此類攻擊。針對ID猜測和預(yù)測查詢攻擊,攻擊者雖然構(gòu)造了滿足傳輸協(xié)議參數(shù)的數(shù)據(jù)包,但是卻沒有用于加密的由本發(fā)明的客戶端和DNS服務(wù)器共享的密碼信息,客戶端收到偽造的數(shù)據(jù)包后解密失敗直接將其丟棄,因此這類攻擊將無法得逞。
      [0120]實(shí)施本發(fā)明后,在某些應(yīng)用場景下,例如前述的瀏覽器,按照前述所揭示的網(wǎng)頁訪問流程,當(dāng)其接收到DNS解析數(shù)據(jù)時,便可進(jìn)一步據(jù)此訪問網(wǎng)頁,網(wǎng)頁被下載到本地后,在瀏覽器上便會呈現(xiàn)至少一部分顯示內(nèi)容的改變,反映在用戶界面上,自然也做出了變化。當(dāng)然,一些默認(rèn)場景下,可能是靜默進(jìn)行的。不管如何,本領(lǐng)域技術(shù)人員均可通過對數(shù)據(jù)包的分析來確定本步驟是否得以實(shí)施。
      [0121]本發(fā)明的客戶端軟件,適宜通過向系統(tǒng)注冊一個服務(wù),以該服務(wù)運(yùn)行時的進(jìn)程來執(zhí)行前述各步驟,當(dāng)然,還可以實(shí)現(xiàn)一些用戶界面,以便提供給用戶實(shí)施一些諸如預(yù)設(shè)的網(wǎng)絡(luò)地址之類的設(shè)定,并提供查詢服務(wù),并返回告警信息等,以上告警信息也可以結(jié)合安全廠商預(yù)先采集的非法DNSIP和合法的DNS IP地址白名單列表地址確定,例如預(yù)先收集的惡意DNSIP地址列表可以是由安全廠商預(yù)先收集的一組非法DNS IP地址,該預(yù)先收集的惡意DNS IP地址列表可以為客戶端數(shù)據(jù)庫中預(yù)先收集的惡意DNSIP地址列表,或者也可以為從網(wǎng)站上下載至客戶端數(shù)據(jù)庫中的惡意DNSIP地址列表。該預(yù)先設(shè)置的合法的DNS IP地址白名單列表可以預(yù)先存儲在客戶端數(shù)據(jù)庫中,也可以從網(wǎng)站的服務(wù)器(例如:云安全服務(wù)器)上下載;
      [0122]在具體實(shí)現(xiàn)中,主要的安全等級包括“危險”、“警告”和“安全”,其中,安全等級為“危險”的表示對用戶的威脅最大,為“警告”的次之,為“安全”的最弱。界面上提示也可以據(jù)此進(jìn)行。
      [0123]進(jìn)一步,可以借助緩存技術(shù)使本發(fā)明的運(yùn)行更為高效,從而提供另一進(jìn)一步完善的實(shí)施例。具體而言,在步驟S14中,可以從解密后的域名解析結(jié)果數(shù)據(jù)中提取出域名和相對應(yīng)的IP地址,作為一條記錄將其存儲于一個緩存數(shù)據(jù)表中,如有必要,還可為每條記錄賦予一個生命周期,在該生命周期內(nèi),該記錄有效,超過該生命周期,則可由本方法予以刪除或者忽略。而在步驟Sll中,當(dāng)其監(jiān)聽到所述的域名解析請求數(shù)據(jù)時,在免于執(zhí)行后續(xù)步驟的情況下,優(yōu)先依據(jù)請求數(shù)據(jù)中的域名,檢索所述的緩存數(shù)據(jù)表,找到相應(yīng)的有效的記錄,獲得相應(yīng)的IP地址,然后由客戶端軟件服務(wù)進(jìn)程自行以這一解析結(jié)果應(yīng)答該請求數(shù)據(jù)。當(dāng)然,如果超過所述的生命周期,或者緩存數(shù)據(jù)表中不存在相應(yīng)的記錄,則可繼續(xù)本方法的各步驟。由于同一個終端設(shè)備一般由同一用戶使用,其上網(wǎng)行為表現(xiàn)出一定的慣性,貫于訪問部分特定網(wǎng)站,因此,通過這一緩存數(shù)據(jù)表及其相關(guān)技術(shù),可以為用戶提高更高效更快速的DNS解析服務(wù),并且可以節(jié)省一些移動終端設(shè)備的流量消耗。
      [0124]在詳細(xì)揭示了本發(fā)明的上述方法的多種實(shí)施形式之后,以下結(jié)合模塊化思維,揭示利用本發(fā)明的域名解析控制方法進(jìn)一步實(shí)現(xiàn)的相應(yīng)的裝置的實(shí)施例,以便本領(lǐng)域技術(shù)人員更透徹地理解本發(fā)明。需要注意的是,本方法所采用的概念及原理,同理適用于本發(fā)明的相應(yīng)的裝置,故以下的描述將簡化部分說明。
      [0125]請參閱圖2,本發(fā)明的域名解析控制裝置,配置于一臺計算機(jī)設(shè)備或者移動終端中,包括監(jiān)聽單元11、加密單元12、接收單元13以及解密單元14。
      [0126]監(jiān)聽單元11,用于監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù)。
      [0127]這里所稱的本機(jī),即是安裝有該軟件的計算機(jī)設(shè)備,或手機(jī)、平板等移動終端設(shè)備。本監(jiān)聽單元11的實(shí)質(zhì)是要實(shí)現(xiàn)對本機(jī)自身所設(shè)置的DNS服務(wù)器的接管,因此,本監(jiān)聽單元11可以通過指令將本機(jī)所設(shè)置的,用于為本機(jī)提供DNS解析服務(wù)的網(wǎng)絡(luò)地址修改為本機(jī)地址。這里所稱的指令,因應(yīng)操作系統(tǒng)的不同而不同,例如,在Windows操作系統(tǒng)中,便可通過調(diào)用以下格式的DOS指令來修改:
      [0128]netsh interface ip set dns"網(wǎng)絡(luò)連接"static 114.114.114.114
      [0129]當(dāng)然也可直接以程序代碼來實(shí)現(xiàn)。由于本領(lǐng)域技術(shù)人員熟知各種操作系統(tǒng)中的多種用于修改DNS地址的指令或程序的實(shí)現(xiàn)方式,故而恕不對此加以贅述。所稱的網(wǎng)絡(luò)地址,即本機(jī)原來設(shè)置的DNS服務(wù)器地址,或者來自于DHCP自動獲取,或者來源于用戶的手工設(shè)置,均在本監(jiān)控單元的作用下被修改為指向本機(jī)自身。而本機(jī)地址的表現(xiàn)形式,也表現(xiàn)出多種靈活的設(shè)置方式,例如,IP地址127.0.0.1即是指向本機(jī)的默認(rèn)IP地址;通過DHCP獲取本機(jī)的局域網(wǎng)IP地址后,這個IP地址也便是本機(jī)地址;同理,假設(shè)用戶將本機(jī)的IP地址設(shè)置為192.168.88.100,則本機(jī)地址即指192.168.88.100。甚至某些情況下,本機(jī)如果接入公網(wǎng),也可以其公網(wǎng)IP地址指代自身。修改了本機(jī)所指向的DNS服務(wù)器的地址后,可以在本機(jī)的相關(guān)設(shè)置頁面中直觀的獲知這一設(shè)置結(jié)果,例如,在Windows操作系統(tǒng)中,可以通過查看網(wǎng)卡屬性中的TCP/IP協(xié)議的高級屬性,從其中的首選DNS服務(wù)器和/或備選DNS服務(wù)器項(xiàng)中直觀地看到。本領(lǐng)域技術(shù)人員可以根據(jù)這些方式,察看IP地址的變化,而直觀地確定是否對本機(jī)原來所設(shè)置的DNS服務(wù)器地址做出了修改,恕不贅述。
      [0130]由于DNS協(xié)議是通過UDP協(xié)議的53號端口進(jìn)行通信的,并且已經(jīng)將本機(jī)的DNS服務(wù)器地址指向本機(jī),因此,本發(fā)明進(jìn)一步便在UDP的53號端口監(jiān)聽本機(jī)發(fā)起的DNS解析請求。一旦用戶通過瀏覽器發(fā)起基于域名的網(wǎng)頁訪問,便會生成DNS解析請求,該請求便能被本發(fā)明接收,從而獲得一個域名解析請求數(shù)據(jù)。為了后續(xù)更易于理解,以下以一個網(wǎng)頁訪問為例,說明其工作機(jī)理:
      [0131]I)數(shù)據(jù)從應(yīng)用層產(chǎn)生(HTTP協(xié)議)
      [0132]2)數(shù)據(jù)被從應(yīng)用層送到傳輸層,這時候必須包含端口信息以便構(gòu)造傳輸層的TCP協(xié)議的頭部。由于是WEB應(yīng)用,目標(biāo)端口就是80,本地端口由操作系統(tǒng)自動產(chǎn)生。
      [0133]3)數(shù)據(jù)被送到IP層。IP層要求應(yīng)用提供源和目的端的IP地址。由于用戶輸入的是域名,這時候,請求DNS應(yīng)用,即計算機(jī)上的DNS應(yīng)用需要向DNS服務(wù)器發(fā)出一個DNS請求。
      [0134]4)從應(yīng)用層(DNS協(xié)議)產(chǎn)生DNS請求包,送入傳輸層(UDP),加上UDP頭部后,送入IP層,加上IP頭部后(此時,本機(jī)和DNS的IP都已知,可以構(gòu)成IP頭)。送入鏈路層。
      [0135]5)鏈路層構(gòu)造頭部需要加上本機(jī)及網(wǎng)關(guān)的MAC地址。此時,需發(fā)送ARP請求。
      [0136]6)所以,計算機(jī)首先會發(fā)出ARP請求包(這是鏈路層的工作)
      [0137]7)收到ARP應(yīng)答后,就立即發(fā)出DNS請求包。
      [0138]8)收到DNS應(yīng)答后,就可以啟動TCP協(xié)議,進(jìn)行三次握手,進(jìn)行連接。
      [0139]9)TCP建立連接后,HTTP協(xié)議就可以發(fā)送,HTTP的請求,這時,應(yīng)用層之間就可以互相進(jìn)行通訊了。
      [0140]由以上過程可以看出,在步驟4)之后,在鏈路層中,已經(jīng)完成了 UDP頭部的封裝,在步驟7)之后,會立刻發(fā)出最終的DNS請求包,等候DNS服務(wù)器反饋應(yīng)答數(shù)據(jù)。本機(jī)由于實(shí)現(xiàn)了監(jiān)聽功能,因此將通過UDP協(xié)議的53號端口收到相應(yīng)的域名解析請求數(shù)據(jù),這一數(shù)據(jù)的不論其在網(wǎng)絡(luò)協(xié)議的不同層次中如何變化,在本質(zhì)上均是基于一個域名發(fā)起的一個要求DNS服務(wù)器解析該域名的IP地址的請求。
      [0141]誠然,除上述的實(shí)現(xiàn)方式,也可通過類似DNS劫持的方式,來實(shí)現(xiàn)這種對本機(jī)的域名解析請求數(shù)據(jù)的監(jiān)聽和獲取。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)知曉這一變通,對本監(jiān)控單元的理解不應(yīng)受限于上述特例。
      [0142]通過以上的方式獲取本機(jī)發(fā)起的域名解析請求數(shù)據(jù)后,本發(fā)明將可做進(jìn)一步處理。
      [0143]加密單元12,用于加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址。
      [0144]實(shí)現(xiàn)了本裝置的軟件,只是起到代理解析的作用,因此本身記載有為自身提供DNS解析服務(wù)的服務(wù)器的網(wǎng)絡(luò)地址,當(dāng)其接收到本機(jī)發(fā)起的域名解析請求(數(shù)據(jù))時,便通過該網(wǎng)絡(luò)地址向所述服務(wù)器進(jìn)一步發(fā)起DNS解析請求,后續(xù)當(dāng)獲取服務(wù)器的應(yīng)答后,再應(yīng)答該域名解析請求數(shù)據(jù)。
      [0145]本發(fā)明為了進(jìn)一步加強(qiáng)DNS請求的安全性,尤其是其中的數(shù)據(jù)的安全性,如前所述,避免承受各種攻擊,避免被篡改等,在本加密單元12作用下對域名解析請求數(shù)據(jù)進(jìn)行鏈路級的加密,也就是在鏈路層對相應(yīng)的請求包進(jìn)行加密。需要注意,提出鏈路級加密同理只是本發(fā)明的一個特例,本領(lǐng)域技術(shù)人員同理不應(yīng)受此限制,而可依據(jù)加密效果的要求,靈活選用其他公知的加密層級和相適應(yīng)的加密方法。
      [0146]本發(fā)明優(yōu)先推薦采用非對稱加密算法,也即公鑰算法,對本機(jī)產(chǎn)生的域名解析請求數(shù)據(jù)進(jìn)行加密,并且,也可結(jié)合隨機(jī)碼進(jìn)行。理論上,只要客戶端(本機(jī))與DNS服務(wù)器之間存在可以互相理解的加密協(xié)議,便不影響本發(fā)明的實(shí)施。但本發(fā)明采用非對稱加密算法而實(shí)現(xiàn)的加密方案,顯然能夠體現(xiàn)出更高的保密效果,實(shí)現(xiàn)更安全的通信。
      [0147]進(jìn)一步,為了進(jìn)一步加強(qiáng)安全性,可以考慮在非對稱加密之前,加入隨機(jī)碼,藉由該隨機(jī)碼進(jìn)一步確保來源合法性。
      [0148]非對稱加密算法與隨機(jī)碼,可以由本領(lǐng)域技術(shù)人員靈活結(jié)合運(yùn)用,不僅可以用于本發(fā)明的域名解析請求數(shù)據(jù)的加解密,也可以用于本發(fā)明的域名解析結(jié)果數(shù)據(jù)的加解密。以下給出一個對全文進(jìn)行保護(hù)的方法供本領(lǐng)域技術(shù)人員參照實(shí)施:
      [0149]1、加密過程概述:
      [0150]I)抽取全文數(shù)據(jù)(域名解析請求數(shù)據(jù)、域名解析結(jié)果數(shù)據(jù)等)的消息摘要;
      [0151]2)利用消息摘要算法對隨機(jī)生成的擾動串(隨機(jī)碼)和所述消息摘要進(jìn)行散列運(yùn)算,得到數(shù)字簽名;
      [0152]3)將非對稱加密后的擾動串、數(shù)字簽名及全文數(shù)據(jù)組合成加密后的加密數(shù)據(jù)發(fā)放給目標(biāo)地址(預(yù)設(shè)的網(wǎng)絡(luò)地址所指向的DNS服務(wù)器、客戶端本機(jī)等)。
      [0153]2、解密過程概述:
      [0154]I)接收含有加密的擾動串、數(shù)字簽名及全文數(shù)據(jù)的加密數(shù)據(jù),以約定的非對稱加密算法的密鑰解密所述擾動串;
      [0155]2)按與發(fā)送加密數(shù)據(jù)方約定的方法抽取所接收的全文數(shù)據(jù)的消息摘要;
      [0156]3)利用消息摘要算法對解密后的擾動串和所述消息摘要進(jìn)行散列運(yùn)算,得到數(shù)字簽名;
      [0157]4)將該數(shù)字簽名與加密數(shù)據(jù)中的數(shù)字簽名進(jìn)行比較,在比較結(jié)果相同時,確認(rèn)全文數(shù)據(jù)合法。
      [0158]通過上述提供的一種適于本發(fā)明的結(jié)合了非對稱加密技術(shù)和隨機(jī)碼加密技術(shù)的方法,本領(lǐng)域技術(shù)人員顯然能進(jìn)一步變化出更多的加密方案,從而在本發(fā)明的思維的引領(lǐng)下,輕易地設(shè)計出本發(fā)明的更多的同理變例。
      [0159]前述所稱的預(yù)設(shè)的網(wǎng)絡(luò)地址,一般通過實(shí)現(xiàn)了本發(fā)明的軟件提供的用戶界面進(jìn)行設(shè)置,或者,在軟件出廠時便已經(jīng)實(shí)現(xiàn)了這種默認(rèn)設(shè)置,甚至,也可通過默認(rèn)地址從云端中下載實(shí)現(xiàn)這種預(yù)設(shè)。因此,該網(wǎng)絡(luò)地址的預(yù)設(shè),應(yīng)當(dāng)理解為更廣泛的提供一個與本機(jī)存在協(xié)議默契的網(wǎng)絡(luò)中的本地DNS服務(wù)器的多種靈活的提供方式任意之一,只是其在本發(fā)明所實(shí)現(xiàn)的客戶端軟件中,將表現(xiàn)為一個網(wǎng)絡(luò)地址,一般是表現(xiàn)為一個IP地址,而該客戶端軟件,則將其所有加密后的域名解析請求數(shù)據(jù)通過該網(wǎng)絡(luò)地址發(fā)送給該網(wǎng)絡(luò)地址所指向的DNS服務(wù)器。
      [0160]通過執(zhí)行本加密單元12,便已經(jīng)將本機(jī)的域名解析請求數(shù)據(jù)真正提交給了互聯(lián)網(wǎng)上的本地DNS服務(wù)器,后續(xù)將予以詳細(xì)揭示其由本發(fā)明實(shí)現(xiàn)的實(shí)現(xiàn)方式和工作原理。對于本裝置而言,表現(xiàn)在客戶端軟件的運(yùn)行過程中,一旦發(fā)送出該域名解析請求數(shù)據(jù),將等候相應(yīng)的反饋,也即等候所述網(wǎng)絡(luò)地址所指向的DNS服務(wù)器的應(yīng)答數(shù)據(jù)。
      [0161]接收單元13,用于接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù)。
      [0162]DNS服務(wù)器與客戶端的通信是非常迅速的,因此,本發(fā)明的客戶端軟件將迅速地接收到由該網(wǎng)絡(luò)地址所指向的DNS服務(wù)器的域名解析結(jié)果數(shù)據(jù)。需要注意的是,DNS服務(wù)器也采用前述所揭示的加密方法對所述域名解析結(jié)果數(shù)據(jù)進(jìn)行了加密,因此,本接收單元13接收到的是加密后的域名解析結(jié)果數(shù)據(jù)。顯然,對于這種加密的域名解析結(jié)果數(shù)據(jù),需要由本發(fā)明的客戶端軟件進(jìn)行解密后,才能提供用以正常應(yīng)答本機(jī)發(fā)起的DNS解析請求。
      [0163]解密單元14,用于解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。
      [0164]對該域名解析結(jié)果數(shù)據(jù)進(jìn)行解密,實(shí)質(zhì)上是前述加密方法的逆過程,也一并在前述的解密過程中予以揭示。將該域名解析結(jié)果數(shù)據(jù)進(jìn)行解密后,將得到可以被DNS協(xié)議正確識別的反饋數(shù)據(jù),依據(jù)本發(fā)明所實(shí)現(xiàn)的客戶端軟件服務(wù)進(jìn)程便可以將解密后的這種域名解析結(jié)果數(shù)據(jù)作為反饋數(shù)據(jù),用于應(yīng)答發(fā)起域名解析請求的進(jìn)程,也就是應(yīng)答本機(jī)發(fā)起的所述域名解析請求數(shù)據(jù),例如前述的用于訪問網(wǎng)頁的瀏覽器。
      [0165]為了避免放大攻擊(DDOS),客戶端實(shí)施解密時,會根據(jù)解密信息(例如私鑰)嘗試解密,如果不能順利解密所述加密的域名解析結(jié)果數(shù)據(jù),則直接將之丟棄。該過程速度很快,能夠抵御此類攻擊。針對ID猜測和預(yù)測查詢攻擊,攻擊者雖然構(gòu)造了滿足傳輸協(xié)議參數(shù)的數(shù)據(jù)包,但是卻沒有用于加密的由本發(fā)明的客戶端和DNS服務(wù)器共享的密碼信息,客戶端收到偽造的數(shù)據(jù)包后解密失敗直接將其丟棄,因此這類攻擊將無法得逞。
      [0166]在本發(fā)明的一種實(shí)施例中,對于接收的每個網(wǎng)絡(luò)數(shù)據(jù)包,應(yīng)判斷出該網(wǎng)絡(luò)數(shù)據(jù)包對應(yīng)的DNS行為類型,并根據(jù)確定的DNS行為類型確定對該網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行處理的處理主體,進(jìn)而將該網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)至確定的處理主體進(jìn)行處理。在本發(fā)明實(shí)施例中,處理主體可以由兩層組成,分別是內(nèi)核層、應(yīng)用層。內(nèi)核層包括網(wǎng)絡(luò)層、驅(qū)動層等,可以實(shí)現(xiàn)高速緩存、攻擊防護(hù)等功能,而應(yīng)用層可以對網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行基本解析,包括域名解析后的地址、數(shù)據(jù)存儲地址的獲取等。與現(xiàn)有技術(shù)中的DNS行為的處理方法相比較,將網(wǎng)絡(luò)數(shù)據(jù)包分別劃分至內(nèi)核層和應(yīng)用層處理,可以將DNS請求根據(jù)實(shí)際請求處理,若遇到一秒幾百萬次的DNS請求攻擊,也可以由處理能力較強(qiáng)的內(nèi)核對其進(jìn)行處理,而遇見時效性要求相對較低的DNS請求,則可以由應(yīng)用層處理。采用內(nèi)核和應(yīng)用層分別處理DNS請求,考慮到內(nèi)核的巨大的處理能力,能夠?qū)崿F(xiàn)大流量的DNS查詢。并且,因DNS請求所導(dǎo)致的修改或啟動導(dǎo)致加載時,因內(nèi)核和應(yīng)用層是分別處理的,因此可以利用其中之一處理當(dāng)前DNS請求,另一繼續(xù)對外提供服務(wù)。因此,本發(fā)明實(shí)施例提高了單機(jī)的業(yè)務(wù)處理能力,大大提高系統(tǒng)的處理能力和安全防護(hù)能力的同時,還能實(shí)現(xiàn)快速域名動態(tài)管理和配置,進(jìn)而實(shí)現(xiàn)很多定制化的復(fù)雜功能需求。
      [0167]當(dāng)DNS行為類型確定為攻擊行為時,那么,可以確定處理主體為內(nèi)核,而當(dāng)DNS行為類型為域名解析行為時,可以確定處理主體為應(yīng)用層。為了提升域名解析服務(wù)的響應(yīng)速度、處理性能及安全防護(hù)能力,根據(jù)DNS的解析原理,在內(nèi)核模塊中可以實(shí)現(xiàn)高速緩存和安全防護(hù),正常情況內(nèi)核模塊能高效、穩(wěn)定地處理98%的解析請求和絕大部分的攻擊防護(hù)。而處理邏輯相對復(fù)雜,對性能要求并不是那么高的基礎(chǔ)解析和管理功能放在應(yīng)用層實(shí)現(xiàn)。
      [0168]因此,處理主體為內(nèi)核時,由內(nèi)核檢測所述網(wǎng)絡(luò)數(shù)據(jù)包,過濾將網(wǎng)絡(luò)數(shù)據(jù)包中攜帶的DNS攻擊行為;以及,將過濾后的網(wǎng)絡(luò)數(shù)據(jù)包轉(zhuǎn)發(fā)至應(yīng)用層進(jìn)行處理。內(nèi)核檢測網(wǎng)絡(luò)數(shù)據(jù)包時,可以啟動防DDOS攻擊策略、IP限速策略、域名限速策略等策略,相應(yīng)的,可以在內(nèi)核中為每個策略設(shè)置獨(dú)立的內(nèi)部模塊,用于實(shí)現(xiàn)不同策略。
      [0169]此處需要說明的是,每個網(wǎng)絡(luò)數(shù)據(jù)包都具備一個特征碼,且每個特征碼是獨(dú)一無二的,因此,可以根據(jù)特征碼判斷網(wǎng)絡(luò)數(shù)據(jù)包的DNS請求的屬性,識破偽裝成正常數(shù)據(jù)包的DNS攻擊操作?,F(xiàn)根據(jù)如下步驟判斷所述網(wǎng)絡(luò)數(shù)據(jù)包中是否攜帶有DNS攻擊行為:
      [0170]步驟A、計算網(wǎng)絡(luò)數(shù)據(jù)包的特征碼;
      [0171]步驟B、判斷特征碼是否是DNS攻擊行為的特征碼,若是,執(zhí)行步驟C,若否,執(zhí)行步驟D ;
      [0172]步驟C、若是,則確定網(wǎng)絡(luò)數(shù)據(jù)包中攜帶有DNS攻擊行為;
      [0173]步驟D、若否,則確定網(wǎng)絡(luò)數(shù)據(jù)包中未攜帶有DNS攻擊行為。
      [0174]其中,數(shù)據(jù)庫中通常存儲有已知DNS攻擊行為的特征碼的集合,當(dāng)需要校驗(yàn)時,將步驟A中計算出的特征碼與數(shù)據(jù)庫的集合進(jìn)行匹配,若步驟A計算出的特征碼存在所述集合中,則是DNS攻擊行為,反之則不是。
      [0175]其中,特征碼可以根據(jù)IP或域名等域名信息確定,例如,計算指定時間內(nèi)接收的來自同一 IP的網(wǎng)絡(luò)數(shù)據(jù)包數(shù)得到特征碼,和/或計算指定時間內(nèi)接收的來自同一域名的網(wǎng)絡(luò)數(shù)據(jù)包數(shù)。若I秒內(nèi)從同一 IP或同一域名接收的網(wǎng)絡(luò)數(shù)據(jù)包數(shù)遠(yuǎn)遠(yuǎn)大于應(yīng)該接收的包數(shù),就證明該IP地址或域名已被變成攻擊源。這也是IP限速策略、域名限速策略的基本原理。被證明變?yōu)楣粼吹腎P地址或域名,之后再接收到來自這一源頭的網(wǎng)絡(luò)數(shù)據(jù)包,可以直接舍棄或過濾掉,避免被其攻擊,提高系統(tǒng)安全性能及處理效率。
      [0176]內(nèi)核對攻擊行為進(jìn)行過濾之后,將網(wǎng)絡(luò)數(shù)據(jù)包發(fā)至應(yīng)用層進(jìn)行處理。應(yīng)用層可以對網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行解析,獲取域名對應(yīng)的地址信息,從而獲取相關(guān)數(shù)據(jù)反饋給客戶端。以及,應(yīng)用層可以對域名信息等數(shù)據(jù)進(jìn)行管理,實(shí)現(xiàn)數(shù)據(jù)管理功能。
      [0177]實(shí)施本發(fā)明后,在某些應(yīng)用場景下,例如前述的瀏覽器,按照前述所揭示的網(wǎng)頁訪問流程,當(dāng)其接收到DNS解析數(shù)據(jù)時,便可進(jìn)一步據(jù)此訪問網(wǎng)頁,網(wǎng)頁被下載到本地后,在瀏覽器上便會呈現(xiàn)至少一部分顯示內(nèi)容的改變,反映在用戶界面上,自然也做出了變化。當(dāng)然,一些默認(rèn)場景下,可能是靜默進(jìn)行的。不管如何,本領(lǐng)域技術(shù)人員均可通過對數(shù)據(jù)包的分析來確定本解密單元14是否得以構(gòu)造。
      [0178]本發(fā)明的客戶端軟件,適宜通過向系統(tǒng)注冊一個服務(wù),以該服務(wù)運(yùn)行時的進(jìn)程來執(zhí)行前述各單元,當(dāng)然,還可以實(shí)現(xiàn)一些用戶界面,以便提供給用戶實(shí)施一些諸如預(yù)設(shè)的網(wǎng)絡(luò)地址之類的設(shè)定。
      [0179]進(jìn)一步,可以借助緩存技術(shù)使本發(fā)明的運(yùn)行更為高效,從而提供另一進(jìn)一步完善的實(shí)施例。具體而言,在解密單元14中,可以從解密后的域名解析結(jié)果數(shù)據(jù)中提取出域名和相對應(yīng)的IP地址,作為一條記錄將其存儲于一個緩存數(shù)據(jù)表中,如有必要,還可為每條記錄賦予一個生命周期,在該生命周期內(nèi),該記錄有效,超過該生命周期,則可由本裝置予以刪除或者忽略。而在監(jiān)聽單元11中,當(dāng)其監(jiān)聽到所述的域名解析請求數(shù)據(jù)時,在免于執(zhí)行其他單元的情況下,優(yōu)先依據(jù)請求數(shù)據(jù)中的域名,檢索所述的緩存數(shù)據(jù)表,找到相應(yīng)的有效的記錄,獲得相應(yīng)的IP地址,然后由客戶端軟件服務(wù)進(jìn)程自行以這一解析結(jié)果應(yīng)答該請求數(shù)據(jù)。當(dāng)然,如果超過所述的生命周期,或者緩存數(shù)據(jù)表中不存在相應(yīng)的記錄,則可繼續(xù)本裝置的其他單元。
      [0180]例如,本發(fā)明實(shí)施例能夠根據(jù)域名信息為惡意攻擊類型的域名信息設(shè)置對緩存信息的預(yù)設(shè)規(guī)則為,每隔五分鐘對緩存信息進(jìn)行更新,接收到針對該緩存信息的客戶端請求超過三次之后,對緩存信息進(jìn)行更新。再例如,本發(fā)明實(shí)施例能夠根據(jù)域名信息的重要級別和/或?qū)τ蛎畔⒃L問數(shù)量的統(tǒng)計對域名信息進(jìn)行分類。如對域名信息訪問數(shù)量統(tǒng)計并排序之后,獲取訪問數(shù)量為前100名的域名信息作為同一類別的域名信息,并對該類別的域名信息設(shè)置如下更新的預(yù)設(shè)規(guī)則:在生存時間(Time To Live,以下簡稱TTL)過期的前五秒鐘,對該類域名信息對應(yīng)的緩存信息進(jìn)行更新。其中,TTL表示記錄在數(shù)據(jù)庫上緩存時間。
      [0181]由于同一個終端設(shè)備一般由同一用戶使用,其上網(wǎng)行為表現(xiàn)出一定的慣性,貫于訪問部分特定網(wǎng)站,因此,通過這一緩存數(shù)據(jù)表及其相關(guān)技術(shù),可以為用戶提高更高效更快速的DNS解析服務(wù),并且可以節(jié)省一些移動終端設(shè)備的流量消耗。
      [0182]以上詳細(xì)揭示了本發(fā)明的域名解析控制方法及其相應(yīng)的裝置的實(shí)現(xiàn)方式,如下,進(jìn)一步揭示與本發(fā)明的前述所實(shí)現(xiàn)的客戶端構(gòu)成系統(tǒng)的服務(wù)器的具體實(shí)現(xiàn)方式。該服務(wù)器的實(shí)現(xiàn),主要表現(xiàn)為用于執(zhí)行本發(fā)明所提供一種域名解析響應(yīng)方法或其相應(yīng)的裝置。該服務(wù)器一般作為本地DNS服務(wù)器接入互聯(lián)網(wǎng),在一網(wǎng)絡(luò)業(yè)務(wù)邏輯的一側(cè)為客戶端提供DNS解析服務(wù),而在另一側(cè)向網(wǎng)絡(luò)中的各級DNS服務(wù)器通過遞歸查詢的方式獲得具有公信力的DNS解析結(jié)果,并將這一結(jié)果傳輸給所述的客戶端。由于本地DNS服務(wù)向各級DNS服務(wù)器遞歸查詢獲取與請求解析的域名相對應(yīng)的IP地址的技術(shù)是遵守DNS協(xié)議的公知技術(shù),不影響本發(fā)明的實(shí)現(xiàn),因此,在本發(fā)明中將不再涉及,敬請諒解。
      [0183]請參閱圖3,本發(fā)明的域名解析響應(yīng)方法,同理實(shí)現(xiàn)適宜實(shí)現(xiàn)為軟件,配置于一服務(wù)器中,使之成為本地DNS服務(wù)器,接入公網(wǎng)進(jìn)行工作。由于服務(wù)器與前述的客戶端之間有數(shù)據(jù)通信上的相應(yīng)性,因此,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)可以從兩者的揭示內(nèi)容中,獲得互補(bǔ)的內(nèi)容,而不應(yīng)受以下描述的省略所限制。具體而言,本方法包括如下步驟:
      [0184]步驟S21、接收加密的域名解析請求數(shù)據(jù)并將之解密。
      [0185]前文述及的客戶端,在將本機(jī)發(fā)起的域名解析請求進(jìn)行加密之后,將通過一個網(wǎng)絡(luò)地址發(fā)送給DNS服務(wù)器,即本方法中所實(shí)現(xiàn)的本地DNS服務(wù)器。因此,本步驟將負(fù)責(zé)接收該加密的域名解析請求數(shù)據(jù),并且,利用如前所揭示的解密過程,對所述域名解析請求數(shù)據(jù)進(jìn)行逆向解密,由此便能獲取其中的明文,進(jìn)一步可以獲得其中待解析的域名。
      [0186]步驟S22、向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址。
      [0187]如前所述,解密之后的域名解析請求數(shù)據(jù)中,包含有待查詢的域名,本步驟將該域名提取出來,向預(yù)設(shè)的域名服務(wù)器,自頂級域名根節(jié)點(diǎn)伊始,按域名層次逐級實(shí)施遞歸查詢,最終獲得與該域名相對應(yīng)的IP地址,便構(gòu)成了所述的域名解析結(jié)果數(shù)據(jù)。所述的域名解析結(jié)果數(shù)據(jù)顯然不僅包括所述的IP地址,而可以是依照服務(wù)器與客戶端協(xié)議而實(shí)現(xiàn)的一種封裝格式,也可以是標(biāo)準(zhǔn)的DNS應(yīng)答格式,具體可由本領(lǐng)域技術(shù)人員靈活實(shí)現(xiàn)。
      [0188]步驟S23、加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。
      [0189]同理,服務(wù)器在傳送域名解析結(jié)果數(shù)據(jù)之前,利用前述所揭示的與客戶端約定的加密過程,對域名解析結(jié)果數(shù)據(jù)實(shí)施非對稱加密,以便如前所述在客戶端處被參照所述的解密過程逆向解密。而由于本服務(wù)器與客戶端之間是一種協(xié)議關(guān)系,因此,加密后的域名解析結(jié)果數(shù)據(jù)直接被用于應(yīng)答所述加密的域名解析請求數(shù)據(jù),而發(fā)送給所述的客戶端。
      [0190]應(yīng)當(dāng)理解,適用于前述客戶端的加密、解密方法及其細(xì)節(jié),顯然也適用于此處所稱的服務(wù)器中,因此需要強(qiáng)調(diào),此處的省略不應(yīng)被本領(lǐng)域技術(shù)人員理解為未公開。
      [0191]同理,為了避免對服務(wù)器的攻擊,本步驟中,當(dāng)未能成功解密所述域名解析請求數(shù)據(jù)時,將直接丟棄相應(yīng)的數(shù)據(jù)包,不對其作為應(yīng)答。由此可以減輕服務(wù)器的負(fù)荷,避免放大攻擊,使服務(wù)器更為安全。
      [0192]請參閱圖4,同理,利用模塊化思維,以下將本發(fā)明的域名解析響應(yīng)方法演化為一種域名解析響應(yīng)裝置,該裝置具體包括解密單元21、查詢單元22以及加密單元23。
      [0193]所述的解密單元21,用于接收加密的域名解析請求數(shù)據(jù)并將之解密。
      [0194]前文述及的客戶端,在將本機(jī)發(fā)起的域名解析請求進(jìn)行加密之后,將通過一個網(wǎng)絡(luò)地址發(fā)送給DNS服務(wù)器,即構(gòu)造有本裝置的本地DNS服務(wù)器。因此,本解密單元21將負(fù)責(zé)接收該加密的域名解析請求數(shù)據(jù),并且,利用如前所揭示的解密過程,對所述域名解析請求數(shù)據(jù)進(jìn)行逆向解密,由此便能獲取其中的明文,進(jìn)一步可以獲得其中待解析的域名。
      [0195]所述的查詢單元22,用于向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址。
      [0196]如前所述,解密之后的域名解析請求數(shù)據(jù)中,包含有待查詢的域名,本查詢單元22將該域名提取出來,向預(yù)設(shè)的域名服務(wù)器,自頂級域名根節(jié)點(diǎn)伊始,按域名層次逐級實(shí)施遞歸查詢,最終獲得與該域名相對應(yīng)的IP地址,便構(gòu)成了所述的域名解析結(jié)果數(shù)據(jù)。所述的域名解析結(jié)果數(shù)據(jù)顯然不僅包括所述的IP地址,而可以是依照服務(wù)器與客戶端協(xié)議而實(shí)現(xiàn)的一種封裝格式,也可以是標(biāo)準(zhǔn)的DNS應(yīng)答格式,具體可由本領(lǐng)域技術(shù)人員靈活實(shí)現(xiàn)。
      [0197]所述的加密單元23,用于加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。
      [0198]同理,服務(wù)器在傳送域名解析結(jié)果數(shù)據(jù)之前,利用前述所揭示的與客戶端約定的加密過程,對域名解析結(jié)果數(shù)據(jù)實(shí)施非對稱加密,以便如前所述在客戶端處被參照所述的解密過程逆向解密。而由于本服務(wù)器與客戶端之間是一種協(xié)議關(guān)系,因此,加密后的域名解析結(jié)果數(shù)據(jù)直接被用于應(yīng)答所述加密的域名解析請求數(shù)據(jù),而發(fā)送給所述的客戶端。
      [0199]應(yīng)當(dāng)理解,適用于前述客戶端的加密、解密方法及其細(xì)節(jié),顯然也適用于此處所稱的服務(wù)器中,因此需要強(qiáng)調(diào),此處的省略不應(yīng)被本領(lǐng)域技術(shù)人員理解為未公開。
      [0200]同理,為了避免對服務(wù)器的攻擊,本裝置的解密單元21中,當(dāng)未能成功解密所述域名解析請求數(shù)據(jù)時,將直接丟棄相應(yīng)的數(shù)據(jù)包,不對其作為應(yīng)答。由此可以減輕服務(wù)器的負(fù)荷,避免放大攻擊,使服務(wù)器更為安全。
      [0201]綜上所述,通過以上對本發(fā)明的域名解析控制方法及其相應(yīng)的裝置,以及對本發(fā)明的域名解析響應(yīng)方法及其相應(yīng)的裝置的多個實(shí)施例的詳細(xì)揭示,可以相應(yīng)地構(gòu)造出客戶端和服務(wù)器,用于實(shí)現(xiàn)一個更為安全的DNS解析系統(tǒng),這一系統(tǒng)的應(yīng)用,將使DNS解析服務(wù)更為安全可靠。依據(jù)本發(fā)明所實(shí)現(xiàn)的客戶端和服務(wù)器,還可以結(jié)合虛擬根節(jié)點(diǎn)等提供安全服務(wù),當(dāng)根節(jié)點(diǎn)出現(xiàn)DNS解析故障時,虛擬根節(jié)點(diǎn)能夠代替根節(jié)點(diǎn)實(shí)現(xiàn)DNS解析功能。為實(shí)現(xiàn)虛擬根節(jié)點(diǎn)這一功能,授權(quán)信息數(shù)據(jù)庫中必須存儲有足夠的信息,即,授權(quán)信息數(shù)據(jù)庫中存儲指定區(qū)域內(nèi)的所有DNS請求及對應(yīng)的授權(quán)信息,這樣虛擬根節(jié)點(diǎn)才能夠有足夠的資源對DNS請求進(jìn)行應(yīng)答。因此,虛擬根節(jié)點(diǎn)的實(shí)現(xiàn)是在授權(quán)信息數(shù)據(jù)庫的基礎(chǔ)上實(shí)現(xiàn)的。結(jié)合新增的授權(quán)信息數(shù)據(jù)庫以及虛擬根節(jié)點(diǎn),能夠在根節(jié)點(diǎn)解析故障的時候?yàn)榭蛻舳颂峁〥NS解析功能,能夠降低DNS單點(diǎn)故障和提高DNS防御攻擊能力,同時還可以對虛擬根節(jié)點(diǎn)設(shè)置訪問權(quán)限控制,屏蔽DNS的攻擊數(shù)據(jù),提高DNS解析的安全性及穩(wěn)定性。對于危險DNS攻擊,從授權(quán)信息數(shù)據(jù)庫中查詢不到具體的授權(quán)信息,則虛擬根節(jié)點(diǎn)不會為其提供解析服務(wù)等。
      [0202]應(yīng)當(dāng)注意,在此提供的算法和公式不與任何特定計算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示例一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
      [0203]在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
      [0204]類似地,應(yīng)當(dāng)理解,為了精簡本發(fā)明并幫助理解本發(fā)明各個方面中的一個或多個,在上面對本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實(shí)施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法和裝置解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如權(quán)利要求書所反映,發(fā)明方面在于少于前面公開的單個實(shí)施例的所有特征。因此,遵循【具體實(shí)施方式】的權(quán)利要求書由此明確地并入該【具體實(shí)施方式】,其中每個權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
      [0205]本領(lǐng)域那些技術(shù)人員可以理解,可以對實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們設(shè)置在與該實(shí)施例不同的一個或多個設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
      [0206]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。。
      [0207]本發(fā)明的各個部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個或者多個處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的網(wǎng)站安全檢測設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機(jī)程序和計算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲在計算機(jī)可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
      [0208]以上所述僅是本發(fā)明的部分實(shí)施方式,應(yīng)當(dāng)指出,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
      【權(quán)利要求】
      1.一種域名解析控制方法,其特征在于,包括以下步驟: 監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù); 加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址; 接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù); 解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。
      2.根據(jù)權(quán)利要求1所述的域名解析控制方法,其特征在于:本機(jī)用于為其提供DNS解析服務(wù)的網(wǎng)絡(luò)地址被設(shè)置為本機(jī)地址。
      3.根據(jù)權(quán)利要求1所述的域名解析控制方法,其特征在于,采用非對稱加密算法對所述域名解析請求數(shù)據(jù)進(jìn)行加密、對域名解析結(jié)果數(shù)據(jù)進(jìn)行解密。
      4.根據(jù)權(quán)利要求1所述的域名解析控制方法,其特在于,當(dāng)未能成功解密所述域名解析結(jié)果數(shù)據(jù)時,丟棄相應(yīng)的數(shù)據(jù)包。
      5.根據(jù)權(quán)利要求1所述的域名解析控制方法,其特征在于,當(dāng)監(jiān)聽到產(chǎn)生所述的域名解析請求數(shù)據(jù)時,優(yōu)先依據(jù)域名從緩存數(shù)據(jù)表中檢索相對應(yīng)的IP地址,當(dāng)存在對應(yīng)的IP地址時,不執(zhí)行本方法的其他步驟;所述緩存數(shù)據(jù)表存儲有從解密后的域名解析結(jié)果數(shù)據(jù)中提取出的域名和對應(yīng)的IP地址。
      6.一種域名解析控制裝置,其特征在于,包括: 監(jiān)聽單元,用于監(jiān)聽并接收本機(jī)的域名解析請求數(shù)據(jù); 加密單元,用于加密該域名解析請求數(shù)據(jù)并發(fā)送給預(yù)設(shè)的網(wǎng)絡(luò)地址; 接收單元,用于接收由所述網(wǎng)絡(luò)地址反饋的經(jīng)加密的域名解析結(jié)果數(shù)據(jù); 解密單元,用于解密該域名解析結(jié)果數(shù)據(jù)并據(jù)以應(yīng)答本機(jī)的所述域名解析請求數(shù)據(jù)。
      7.—種域名解析響應(yīng)方法,其特征在于,包括如下步驟: 接收加密的域名解析請求數(shù)據(jù)并將之解密; 向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址; 加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。
      8.根據(jù)權(quán)利要求7所述的域名解析響應(yīng)方法,其特征在于,采用非對稱加密算法對所述域名解析請求數(shù)據(jù)進(jìn)行解密、對域名解析結(jié)果數(shù)據(jù)進(jìn)行加密。
      9.根據(jù)權(quán)利要求7所述的域名解析響應(yīng)方法,其特在于,當(dāng)未能成功解密所述域名解析請求數(shù)據(jù)時,丟棄相應(yīng)的數(shù)據(jù)包。
      10.一種域名解析響應(yīng)裝置,其特征在于,包括: 解密單元,用于接收加密的域名解析請求數(shù)據(jù)并將之解密; 查詢單元,用于向預(yù)設(shè)的域名服務(wù)器查詢所述請求數(shù)據(jù)所包含的域名以獲取對應(yīng)的域名解析結(jié)果數(shù)據(jù),該數(shù)據(jù)包含對應(yīng)于該域名的IP地址; 加密單元,用于加密所述域名解析結(jié)果數(shù)據(jù),以加密后的域名解析結(jié)果數(shù)據(jù)應(yīng)答所述加密的域名解析請求數(shù)據(jù)。
      【文檔編號】H04L29/12GK104468865SQ201410823153
      【公開日】2015年3月25日 申請日期:2014年12月25日 優(yōu)先權(quán)日:2014年12月25日
      【發(fā)明者】濮燦, 周鴻祎, 譚曉生 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1