這篇文章主要介紹“檢測的特征以及BotDAD安裝與使用”,在日常操作中,相信很多人在DNS檢測的特征以及BotDAD安裝與使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”DNS檢測的特征以及BotDAD安裝與使用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
這篇文章主要介紹“檢測的特征以及BotDAD安裝與使用”,在日常操作中,相信很多人在DNS檢測的特征以及BotDAD安裝與使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”DNS檢測的特征以及BotDAD安裝與使用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
一、基于DNS的隱蔽通信
創新互聯是專業的浉河網站建設公司,浉河接單;提供網站設計、成都網站制作,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行浉河網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
企業網絡經常面臨網絡攻擊者竊取有價值和敏感數據的威脅。復雜的攻擊者越來越多地利用DNS通道來泄露數據,以及維護惡意軟件的隧道C&C(命令和控制)通信。這是因為DNS對于幾乎所有應用程序來說都是如此重要的服務,從本地計算機到Internet的任何通信(不包括基于靜態IP的通信)都依賴于DNS服務,限制DNS通信可能會導致合法遠程服務的斷開,因此,企業防火墻通常配置為允許UDP端口53(由DNS使用)上的所有數據包,即DNS流量通常允許通過企業防火墻而無需深度檢查或狀態維護。從攻擊者的角度來看,這使得DNS協議成為數據泄露地隱蔽通信通道。
攻擊者利用DNS的一種方法是注冊域名(例如,fengrou2019.club),以便攻擊者在主機受害者中的惡意軟件可以將有價值的私人信息(例如信用卡號,登錄密碼或知識產權)編碼為形式為arbitrary-string.fengrou2019.club的DNS請求。此DNS請求由全局域名系統中的解析器轉發到fengrou2019.club域的權威(在攻擊者的控制下),后者又向主機受害者發送響應。這為攻擊者在主受害者及其命令和控制中心之間提供了低速但隱蔽的雙向通信信道。如圖所示為Bot在獲取控制命令后回傳竊密信息的流程圖。
DNS這種穿透防火墻的能力為攻擊者提供了一個隱蔽的通道,盡管是低速通道,通過將其他協議(例如,SSH,FTP)隧道傳輸到命令和控制中心,可以通過該通道泄露私有數據并保持與惡意軟件的通信。現代惡意軟件和網絡攻擊在很大程度上依賴于DNS服務,使其活動可靠且難以跟蹤。例如---,2017年發現的遠程訪問木馬DNSMessenger使用DNS查詢和響應在受感染的主機上執行惡意PowerShell命令。二、DNS檢測
監控網絡DNS活動和阻止可疑域已被證明是抵御此類攻擊的有效技術。對于分析DNS流量以識別惡意網絡活動,人們提出了很多檢測方法,比如使用字符頻率分析的DNS隧道檢測方法等。
對于任何組織用以對抗各種安全威脅來說,在企業級水平上的單點Bot檢測至關重要。本文要介紹的DNS檢測工具BotDAD,它就是部署在企業的網絡邊界上進行單點Bot檢測的,它通過觀察主機在一段時間內的DNS指紋,嘗試尋找域正常的主機行為相當不同的異常行為,從而識別受感染的主機。
本文以BotDAD工具為例,將對BotDAD進行DNS檢測的技術分析。1. DNS檢測特征
BotDAD中統計分析了15種DNS的行為特征,如下:
通過對BotDAD工作做源碼解析,找到其核心類與核心函數,其中便對以上15種DNS特征進行了使用。
核心類:BotDAD/DnsAnalyser.py/classs Network
核心函數:BotDAD/DnsAnalyser.py/classs Network/find_anomaly()2.BotDAD安裝與使用
2.1 安裝:
依賴python版本:python2.7
系統環境:windows
預安裝:
2.2 數據集準備:
BotDAD提供了3種預備數據集的方式:
2.2.1 抓包、過濾、切片
(1)使用wireshark抓包
(2) 包過濾命令tshark.exe -r "input.pcap" -F pcap -Y dns -t ad -w"big.pcap" #windows
或tshark -r "input.pcap" -F pcap -Y dns -t ad -w"big.pcap" #linux
(3)切片命令editcap.exe -F pcap -i 3600"big.pcap" "slice.pcap" #windows
或editcap -F pcap -i 3600"big.pcap" "slice.pcap" #linux
2.2.2 直接可用:20160421_150521.pcap
Manmeet Singh(BotDAD論文作者)提供,可直接使用。
鏈接:https://drive.google.com/file/d/14cRY6aEQz_xVsfySBb4Ik6mPYDLoIc88/view?usp=sharing
2.2.3 直接可用:校園DNS網絡流量
數據集由BotDAD論文作者提供。
2016年4月至5月期間,由超過4000個活躍用戶組成的校園DNS網絡流量(在高峰負載時間內)為10個隨機日,可在數據集中的每小時PCAP文件中獲得。
(由于10GB數據限制,目前只能上傳Day0(Full)和Day1(部分)的流量)數據集鏈接為:
https://data.mendeley.com/datasets/zh4wnddzxy/1
2.3 使用前的問題與解決:
2.3.1 包導入問題
下載后,嘗試直接運行main.py,遇到一個問題:
由于問題出現在pcapparser.py,而在BotDAD開源的項目中,公布的是PcapParser.pyc文件,因此需要pyc反編譯,本文使用uncompyle實現反編譯。
通過反編譯得到PcapParser.py,利用python2命令行環境驗證,發現問題就出在這里:
2.3.2 問題解決
查看win-inet-pton的API,發現其中提供的對于inet_ntop的使用方法與代碼中的使用方法不太一樣。
檢索反編譯的PcapParser.py代碼中,inet_ntop出現的地方,發現只有兩處:
一處是文件導入的地方:
另一處的用法其實與win-inet-pton的API中提供的用法是一致的:
所以我這邊嘗試修改PcapParser.py代碼,然后用PcapParser.py替代PcapParser.py用于BotDAD的運行:
修改前,原inet_ntop的導入方式:
修改后,直接導入win_inet_pton即可:
完成替換之后,再運行main.py,如圖,運行成功,問題解決:
一開始運行,首先在main.py的上一級目錄中生成3個文件:
執行到console>的耗時還是挺長的,大概7分鐘。
2.4 BotDAD的使用
BotDAD的使用命令總結如下:
2.4.1l命令
我這里使用l命令,主機列表包含571個主機。
2.4.2 m命令
輸入主機列表中的一個IP地址,無返回,在main.py的同級目錄下生成文件:
2.4.3 p命令
生成圖像,plot DNS query timeline:
2.4.4 d/D命令
主機IP后面出現的數字與主機列表中最后一列的數字對應一致。
D命令是將d展示部分做保存。
用D命令:
2.4.5 h命令
saving的過程可能會比較慢。
好長時間之后:
在main.py的上一級目錄下生成html文件:
2.4.6x命令
.csv:逗號分隔值文件格式。
在main.py的上一級目錄下生成.pcap.csv文件:
2.4.7 F命令
很多主機被列出來,說明請求www.google.com的主機非常多。
找一個特殊的URL,與前面執行d命令中的截圖中的數據剛好對應:
2.4.8 f命令
2.4.9 q命令
分享名稱:DNS檢測的特征以及BotDAD安裝與使用
文章網址:http://www.yijiale78.com/article16/sjjgg.html
成都網站建設公司_創新互聯,為您提供自適應網站、網站建設、企業建站、做網站、網站制作、網站設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯