[發明專利]一種基于機器學習的DNS服務器軟件指紋識別系統和方法在審
| 申請號: | 201710093763.9 | 申請日: | 2017-02-21 |
| 公開(公告)號: | CN106899586A | 公開(公告)日: | 2017-06-27 |
| 發明(設計)人: | 鄒福泰;周江林;裴蓓;潘理;李建華 | 申請(專利權)人: | 上海交通大學;公安部第三研究所 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L29/12;G06F9/44;G06K9/00;G06K9/62 |
| 代理公司: | 上海旭誠知識產權代理有限公司31220 | 代理人: | 鄭立 |
| 地址: | 200240 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 機器 學習 dns 服務器 軟件 指紋識別 系統 方法 | ||
技術領域
本發明涉及域名系統安全管理領域,具體涉及一種基于機器學習的DNS服務器軟件版本信息識別的系統與方法。
背景技術
域名系統(DNS)是一種分層結構的分布式命名管理系統,是因特網的核心元素之一,主要工作是負責將方便人類記憶的域名地址(如www.baidu.com)映射到因特網路由選擇的IP地址,絕大部分的互聯網應用功能都需要以域名系統作為基礎來實現,一旦域名系統發生故障,無法提供正常的域名解析服務,那么,相當多數的互聯網功能將隨之失效,給用戶帶來不便和難以估計的損失,因此域名系統的安全性相當重要,引起了眾多專家學者和運營商的關注和研究。
不幸的是,域名系統一直以來遭受著大量的攻擊,這些攻擊問題主要來自于執行錯誤、DNS協議漏洞、偽造的DNS查詢請求等原因。據中國互聯網絡信息中心(CNNIC)與國家域名安全聯盟發布的《中國域名服務安全現狀與態勢分布報告(2014)》顯示,我國頂級域名服務器普遍采用了Linux/Unix操作系統,兩者占比達到98%以上,同時,在所采用的DNS服務軟件方面,ISC BIND(Berkeley Internet Name Domain)依然是絕大部分頂級域名服務器首選的DNS服務軟件,比例占到了81.8%,但其中相當一大部分的BIND服務器依然使用的是較低版本,特別是其中32.6%的BIND服務軟件開啟了版本應答功能,這為域名服務器帶來一定的安全隱患。因此,在網絡安全政策允許下,特定DNS解析服務軟件的bug或者弱點應該被準確識別和控制。
網絡掃描和遠程應用檢測通常被用來獲取目標信息,指紋識別(fingerprint)技術將這一目標具象化。在DNS服務器軟件指紋識別方面,大多數現有方法是主動方式,通過發送請求然后根據響應返回包特征判斷。另外有研究學者提出了一種被動指紋識別技術,通過人工提取DNS服務器軟件版本特征用到流量分析中去。這些方法存在著局部失效或者人工工作量大、特征信息更新緩慢的缺點。
因此,本領域的技術人員致力于開發一種基于機器學習的DNS服務器軟件指紋識別系統和方法,采用機器學習的方式,檢測和識別DNS服務器軟件版本信息,提高DNS服務器的安全性。
發明內容
有鑒于現有的DNS服務器軟件指紋識別方法的缺陷,本發明提出了一種基于機器學習的檢測識別DNS服務器軟件版本信息系統和方法,利用開發人員先期在本地訓練生成的決策樹模塊作為核心分類模塊,以用戶目標DNS服務器域名作為輸入,程序化抽取該域名的查詢/響應報文特征記錄,作為決策樹模塊的輸入特征,經過決策樹模塊決策分類得到最終的目標DNS服務器域名的版本信息。
為了解決上述技術缺陷,本發明所述的一種基于機器學習的DNS服務器軟件指紋識別系統,包括輸入模塊、特征提取模塊、決策樹分類模塊和輸出模塊,其中,所述輸入模塊、特征提取模塊、決策樹分類模塊和輸出模塊依次連接,所述特征提取模塊被配置為在向特定的DNS服務器進行的查詢和響應中抽取特征;所述決策樹分類模塊被配置為在本地訓練生成,且產生DNS服務器的所述軟件指紋以及相對應的版本信息。
本發明還提供了一種基于機器學習檢測DNS服務器軟件指紋識別方法,其特征在于,包括以下步驟:
第1步、建立DNS服務器軟件版本信息數據集;
第2步、根據第1步中的所述數據集轉化抽取特征訓練集;
第3步、根據第2步中的所述訓練集獲得決策樹分類模塊;
第4步、將第3步中得到的所述決策樹分類模塊集成到識別系統中,用于對于用戶輸入的目標域名的DNS服務器軟件指紋和軟件版本信息的輸出。
進一步地,第1步中,建立DNS服務器軟件版本信息數據集的步驟包括:
(1.1)在本地虛擬機上安裝不同版本DNS服務器軟件;
(1.2)對于域名進行基于DNS查詢包的查詢請求;
(1.3)利用tcpdump/tshark截取DNS通信流量得到pcap流量包;所述pcap流量包即DNS服務器軟件版本信息數據集。
進一步地,第2步中,轉化抽取特征訓練集的步驟包括:
(2.1)以第1步得到的所述軟件版本信息數據集作為輸入,使用Python語言解析所述pcap流量包,得到每條查詢/響應的記錄;
(2.2)在所述記錄的內容中抽取出特征字段,匯總成特征訓練集備用。
進一步地,第3步中,獲得決策樹分類模塊的步驟包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海交通大學;公安部第三研究所,未經上海交通大學;公安部第三研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710093763.9/2.html,轉載請聲明來源鉆瓜專利網。





