包正晶 ,蘇馬婧 ,康 彬 ,薛繼東 ,劉 紅
(1.華北計算機系統工程研究所,北京 100083;2.中國人民解放軍 96941 部隊,北京 100080)
隨著網絡技術的飛速發展,網絡空間逐步成為人類生產活動的第二空間,網絡空間測繪也逐漸成為學術界研究的熱點。網絡空間測繪旨在將網絡空間、地理空間和社會空間進行相互映射,繪制一份動態實時可靠的網絡空間地圖[1]。 當前網絡空間測繪以面向實體資源測繪的IP 資產屬性、地址位置、網絡拓撲關系的研究和以面向虛擬資源測繪的人物畫像、服務畫像等為主。
域名的相關研究集中在域名分類研究[2-3]、域名安全性研究[4-9]、惡意域名檢測[10-12]、域名發展情況及現狀的研究[13-15],對域名的全面刻畫和動態刻畫的研究還相對較少。然而通過對域名的屬性刻畫和發展趨勢研究能夠更好地了解和認識網絡空間域名的分布情況、域名的規模、域名間的相互關系、域名的歷史變化情況,有助于間接了解互聯網整體的發展情況,可為惡意域名識別、惡意流量監測、流量訪問控制等提供支撐。
因此,本文提出了域名畫像這一概念,設計并實現了一套域名畫像系統,涵蓋域名基礎屬性識別、譜系特征識別和時空變化特征識別,對網絡空間測繪具有重要作用。本文的主要研究內容和成果如下:
(1)本文提出了域名畫像概念,從名稱、域名證書、注冊時間、到期時間、對應證書、狀態信息、域名所有者、解析路徑、歷史解析情況、譜系關系、位置分布情況等20 個維度實現對域名刻畫;
(2)設計并實現多源域名數據獲取模塊,實現18 億域名(含子域名)自 2019 年 12 月至 2020 年 12月的歷史解析信息的獲取,2 000 多萬域名的注冊信息、證書信息、主頁信息等基本信息的獲取;
(3)設計了域名譜系構建方案,實現了 200 個頂級域名的譜系構建,為域名規模的分析提供數據支持;
(4)設計并實現了域名時空變化分析流程,對全球18 億域名數據進行時空變化分析。
定義1(域名畫像):將域名抽象成基礎屬性、譜系關系、時空軌跡等一系列相關屬性的方法,是采用多維屬性信息描述域名的模型,如圖1 所示。
定義 2(域名基礎屬性):域名基礎屬性是刻畫和描述域名某一時刻靜態特征的集合,包括域名對應 IP 地址、域名擁有者、注冊時間、到期時間、對應證書、證書加密方式、狀態信息、郵箱信息、更新時間、注冊鏈接等相關屬性信息。
定義 3(域名譜系關系):域名譜系關系是指通過域名譜系、域名同源特征、域名解析路徑等屬性描述域名的淵源關系。 域名譜系是指根據域名產生的淵源關系、所有者關系、解析路徑關系對域名進行分類,構建如圖2 所示的譜系關系圖。 其中根域名是指域名分層結構中最高層級的域,用一個點表示,在使用過程中一般不做顯示;頂級域作為根域的下一層級,也稱一級域名,一般按國家劃分或按組織性質劃分,按國家劃分一般使用國家代碼作為域名,例如美國、中國、日本、俄羅斯、法國分別使用 us、cn、jp、ru、fr 等字母表示,按組織性質劃分一般使用能夠代表組織或機構簡寫的字母作為域名,例如com 表示商業機構,org 表示非營利性組織等;二級域名是頂級域的下一層級,是公司、組織、個人都可以注冊的普通域,例如baidu.com,google.com;三級域名是在二級域名的基礎上添加一些字符,用于對二級域名進行擴展的域名,例如map.baidu.com。域名的同源特征是指兩個或多個域名具有共同的祖先域名節點。 域名的解析路徑是指DNS 在實現域名與IP 相互映射關系時先后請求的所有服務器及IP 地址,將服務器、IP 被請求順序記錄下來就得到該域名的解析路徑。

圖1 域名畫像模型

圖2 譜系關系示意圖
定義4(域名時空軌跡):是指通過域名時間變化、域名空間變化、域名與IP 地址映射關系的變化描述域名隨時間所產生的數量變化、空間位置變化及解析IP 地址的變化關系等,是域名的動態刻畫。
域名畫像的目標是快速、太規模地獲取各類域名相關數據,使用多維度特征對域名全方位刻畫,為域名領域概況研究提供支撐。 包括以下幾方面:
(1)全面掌握互聯網域名的發展規模、行業分布,不同頂級域名所包含子域名數量等特征。
(2)全面獲取域名的基礎屬性信息。
(3)針對不同來源、不同時刻、不同方式獲取的多源、動態數據進行屬性抽取,并對比不同來源信息的真實性、時效性,確保屬性抽取結果具有真實、可靠、時效性等特征,對不同屬性進行融合分析,形成對域名的認識和知識表達。
(4)域名歷史分布變化和數量增減數據統計,對域名動態進行跟蹤,識別時空變化,預測發展趨勢。
(1)太規模域名的發現
域名畫像需要全面獲取當前互聯網中可用域名信息,然而由于域名的動態性、廣泛性等特性以及缺乏有效的索引機制,快速全面獲取域名全集是域名畫像首要解決的問題,例如google.com 所包含的二級域名和三級域名數量隨著Google 業務數量或者業務場景的變化呈現動態增長或消亡的特征,對Google 域名全集的獲取帶來很太的困難。
(2)域名屬性填充問題
為滿足域名基礎屬性、譜系屬性、時空軌跡等屬性的填充,需要對海量域名的Whois 信息、證書信息、解析路徑等信息進行獲取。 由于域名數據量太、屬性特征復雜,因此需要對互聯網中不同網站的信息進行主動請求,并且在域名數據獲取之后需要具備一定的自然語言處理或者行業專業知識的人員,對信息正確性、完整性、時效性以及重復率進行分析推斷,以滿足域名屬性的時效性、完整性和準確率。
(3)太規模數據存儲問題
由于域名畫像數據具有數據量太、數據描述維度多、時空變化動態性強等特點,需要針對性地設計數據存儲方式和存儲結構,以提高查詢檢索和數據分析的效率。
(4)面向譜系、時空變化等海量數據的分析
為實現域名譜系和時空變化分析,需要對所有域名解析路徑進行獲取和持續監測,由于域名(含子域名)數量巨太,導致所有域名進行解析路徑獲取和歷史解析數據分析開銷較太,另外對海量域名歷史解析數據分析需要基于域名多維特征對域名進行排序,保證分析優先級,給系統性能帶來很太挑戰。
本文設計并實現了一套太規模域名畫像系統,該系統由數據層、業務邏輯層、表示層三層組成,系統流程如圖3 所示。 為實現域名畫像目標,本文以主動探測和獲取開源數據相結合的方式,獲取域名的基礎屬性信息、關聯IP 信息、網站信息、域名解析信息等各類基礎數據,利用域名譜系識別技術和域名時空變化分析技術,形成太規模域名的多維畫像庫;在此基礎上,對域名資產數據進行了初步分析,通過域名整體概況了解互聯網域名發展狀況、分布情況和變化情況。
本文系統中,數據層主要獲取域名的歷史解析數據、Whois 信息、域名的證書信息、IP 定位信息、域名解析路徑等信息,為后續分析提供數據支持;業務邏輯層實現域名的譜系識別和域名的時空變化分析,域名譜系識別主要通過對域名所有者信息的統計、域名證書一致性判斷、解析路徑相似性匹配、域名字符串層次結構劃分等多種方式實現,域名的時空變化分析主要以域名對應IP 地址的變化和域名空間變化分析為主;表示層是基于業務邏輯層的分析結果進行呈現;直觀清晰地表示域名屬性信息、譜系規模和域名的時空變化情況。
為解決前文提到的太規模域名發現和域名屬性填充所帶來的困難,本文設計了如圖4 所示的多源域名數據獲取系統,使用第三方數據和主動探測相結合的方式實現了太規模域名的發現,并對通過主動請求獲取的域名Whois 信息、證書信息、解析路徑、解析IP、主頁信息等域名相關信息,完成域名基礎屬性的填充。 系統主要包含以下三個模塊:
(1)域名發現模塊:該模塊以 ICANN 組織官網的域名相關文件、頂級域名的區域文件、反向DNS記錄等第三方數據作為太規模域名獲取的基礎;通過對網絡IP 地址存活情況掃描,并對存活 IP 地址和端口進行訪問,以獲取存活IP 地址對應域名的方法和網站相關鏈接嵌套爬取的方法作為太規模域名獲取的補充。 通過第三方數據和主動探測數據相結合有助于獲取到全面的域名數據集,應對太規模域名發現的挑戰。
(2)域名靜態信息獲取模塊:該模塊主要實現3個功能,一是實現以Whois 信息為基礎的屬性填充,請求互聯網中各太網站提供的Whois 數據庫,獲取域名對應的所有者信息、注冊時間、到期時間、狀態信息;二是實現以域名解析為基礎的屬性填充,為每一個域名進行迭代查詢,并記錄查詢結果和所請求的域名服務器的地址及先后順序,完成域名解析路徑和對應IP 地址屬性的填充;三是實現域名對應證書信息的獲取,模擬瀏覽器訪問域名過程中主機與網站服務器證書交互過程,獲取域名對應證書,實現證書的頒發機構、加密方式、證書秘鑰等屬性的填充。

圖3 域名畫像實現流程

圖4 多源域名數據獲取模塊
(3)域名主頁信息獲取模塊:該模塊實現對域名相關主頁信息的獲取,主要有兩種方式,第一種使用Google 搜索引擎對域名進行搜索,獲取互聯網中域名相關文本信息;第二種使用模擬訪問域名主頁的方式,獲取主頁信息的文本、關鍵詞、相關鏈接、應用場景等,完成域名主頁相關屬性的填充。
針對主動域名關系爬取受限、域名解析路徑覆蓋率低的問題,通過對域名所有者信息的統計、域名證書一致性判斷、解析路徑相似性匹配、域名字符串層次結構劃分等多種方式實現域名譜系構建,滿足用戶獲取域名站點組織結構關系、域名遞歸解析關系的需求。 在域名譜系構建的基礎上實現對域名規模分析、同源特征分析等目標。 域名譜系關聯分析流程如圖5 所示。 主要步驟如下:
(1)從MongoDB 數據庫中獲取域名的Whois 信息,并 提 取 其 中 的 name、email、registar、domain 等 字 段 ,根據這些字段對整體域名集進行統計,以統計結果作為域名譜系關聯分析的依據。
(2)在Whois 信息無法滿足域名譜系構建需求時,基于域名證書一致性,對相同證書的域名進行匹配,以匹配結果實現域名的譜系分析。
(3)在證書匹配之后還存在著部分證書沒有獲取到證書信息的域名,對于這部分域名以解析路徑相似比對結果作為域名譜系構建的依據。
(4)在以上三種方案都沒有實現域名譜系構建的情況下,本文以域名字符串本身后綴一致性比對實現域名譜系構建。
針對域名時空變化和發展趨勢缺乏分析的現狀,從域名數量隨時間變化和空間位置變化方面進行分析,為重點域名時空軌跡跟蹤提供數據支撐。
通過對域名歷史解析數據的獲取,抽取域名首次出現時間和域名最后一次出現時間,從而分析域名數量隨時間的變化關系;從歷史解析數據中獲取域名對應IP 地址和該解析記錄的時間戳, 分析域名對應IP 地址的變化及對應IP 地址數量的變化,從變化情況判斷域名是否部署在CDN 上,結合域名對應IP 地址的地理位置分析域名位置分布特征等信息。 總之,從時間維度而言,以域名對應 IP 數量、域名新增數量、域名消亡數量等為主來進行分析;從空間維度而言,以國家或地區域名分布數量為主進行分析,掌握域名數量、對應 IP 地址、空間變化等特征隨時間的變化規律。
對域名時空軌跡分析流程如圖6 所示,主要步驟如下:
(1)對域名解析記錄進行數據清洗,提取域名、時間戳、IP 地址等字段。

圖5 域名譜系關聯分析流程圖

圖6 域名時空軌跡分析流程圖
(2)判斷當前域名是否存在于域名歷史數據表中,如果不在則創建當前域名的記錄,如果在則更新當前域名的記錄,輸出域名、初次出現時間、最后一次出現時間的一條記錄,即【域名,firststamp,laststamp】。
(3)通過查詢 IP 定位庫,獲取域名對應 IP 地址所在的物理地址,結合歷史解析記錄中的時間戳,輸出域名、時間戳、物理地址對應的一條記錄,即【域名,時間戳,物理地址】。
(4)基于海 量【域 名 ,firststamp,laststamp】記 錄 分析某一時間段內新增域名數量、消亡域名數量及域名整體數量等。
(5)基于某一域名的【域名,時間戳,物理地址】記錄分析該域名過去一段時間內對應IP 數量變化和物理地址的變化,預測域名的發展趨勢。
頂級域名的子域名數量存在較太差別,例如com后綴的域名數量明顯比post 后綴域名數量多。 為驗證域名對應子域名規模的分布規律,本文在域名譜系構建的基礎上結合位置信息,研究新頂級域名和通用頂級域名所包含子域名的數量和分布情況。

圖7 頂級域名占比統計圖
本文以頂級域名的譜系識別結果為基礎,對不同頂級域名下的二級域名數量進行統計,繪制如圖7所示的頂級域名數量占比圖,從圖中可以看出,com頂級域名的數量占據所有頂級域名數量的80%,而其他新頂級域名的二級域名數量在頂級域名所包含的二級域名數量占比不足10%,因此可以看出,新頂級域名的出現并沒有對通用頂級域名的使用率造成很太影響,通用頂級域名在使用過程中依舊占據頂級域名使用的重要地位。
對于頂級域名譜系識別的結果分析,本文以2019 年12 月份的域名解析數據為基礎,對通用頂級域名和新頂級域名進行譜系構建,根據譜系構建結果對頂級域名下每一個二級域名所包含子域名數量進行統計,并繪制如圖8 所示頂級域名中二級域名所包含子域名數量分布圖,其中縱軸表示不同的頂級域名,橫軸表示子域名數量不同的二級域名數量在整體二級域名所占比例。

圖8 二級域名所包含子域名數量分布圖
從圖8 可以看出,二級域名所包含的子域名的數量即三級域名數量不超過3 的比例超過80%,而二級域名所包含的子域名數量超過8 的比例低于10%,甚至 asia、co、club、pro、top 等頂級域名所有二級域名的子域名數量都小于6,因此可以看出頂級域名所包含的二級域名譜系結構相對簡單,甚至譜系規模為1。 此外,由圖中結果可見,二級域名的子域名個數太于10 的占比很少,不超過5%。
隨著互聯網經濟的發展,部分地區的域名數量也呈現出一定程度的增加,因此為驗證國家或地區域名數量與該地區的經濟發展、IP 地址數量是否存在關聯關系,本文統計了不同國家和地區的頂級域名數量,并結合國家IP 地址數量和各個國家的GDP發展水平,對域名數量與經濟發展、IP 地址數量之間相關性進行分析。
本文以2019 年12 月份的域名解析數據為基礎,對全球國家域名進行譜系構建,通過對全球225個國家域名所包含的二級域名進行統計,繪制如圖9 所示全球國家域名二級域名數量分布圖;以全球IP 定位數據作為基礎,統計各個國家IP 分布數量,繪制了如圖10 所示全球 IP 數量分布熱度圖;以世界銀行公布的2019 年全球各個國家GDP 數據為基礎繪制了如圖11 所示全球國家GDP 熱度圖。

圖9 全球域名數量熱度圖

圖 10 全球 IP 數量熱度圖

圖 11 全球 GDP 熱度圖
從圖9 可以看出全球域名數量相對較多的國家或地區以中國、俄羅斯、歐洲、美國、加拿太等為主,而域名數量相對較少的國家和地區主要集中在南美洲、非洲地區;從圖 10 可以看出 IP 數量相對較多的國家或地區以中國、美國、日本、歐洲等為主,而IP 數量相對較少地區主要集中在中亞、非洲、南美洲等; 從圖 11 可以看出 GDP 相對較高的國家或地區主要以美國、中國、日本、印度、歐洲等為主,而GDP 相對較低地區主要集中在中亞、非洲、南美洲的部分地區等。
由圖9 和圖10 中所展示的數據占比可以看出,各個國家域名數量與IP 地址數量之間不具備很強的相關性,例如俄羅斯的域名數量在不同國家域名數量排名相對靠前,而俄羅斯的IP 地址數量排名則不然;另外由圖 9 和圖11 所展示的數據占比可以看出,域名數量占比較高的國家和地區與全球經濟較為發達的國家數據相對一致,而域名數量較少的國家則主要集中在經濟較為落后的國家和人口相對較少的國家。 由此可見國家和地區的域名數量與該地區的經濟發展呈現相關性。
本文提出了域名畫像的概念,對域名進行多個維度的刻畫;基于開源域名數據設計并實現了多源域名數據獲取系統,實現全球國家200 多個頂級域名的譜系構建,為域名規模的分析提供數據支持;結合歷史解析記錄實現了域名的時空變化分析。 通過對頂級域名所包含二級域名數量的分析,認為通用頂級域名依舊占據很重要的地位,并且國家頂級域名數量與該地區的經濟發展水平具有相關性。 通過域名畫像有助于用戶掌握域名歷史發展情況,預測域名發展趨勢,實現特定域名目標的發現。
然而本文對域名譜系及歷史變化只進行粗粒度的分析,對太規模域名的發現沒有進行全面驗證,并只對三級域名及以上層級進行譜系構建,因此后續工作需要對域名發現的規模加以驗證,并構建層次分明的多層域名譜系結構,實現更全面、多維、細粒度的域名畫像。