網(wǎng)絡(luò)偵察是為收集目標(biāo)網(wǎng)絡(luò)信息而開展的活動,普遍發(fā)生在網(wǎng)絡(luò)攻擊鏈的各個階段,是對手能夠滲透目標(biāo)網(wǎng)絡(luò)并成功利用漏洞和缺陷破壞系統(tǒng)的關(guān)鍵。網(wǎng)絡(luò)偵察會造成目標(biāo)網(wǎng)絡(luò)關(guān)鍵信息泄露,因此可視為一種以信息竊取為目標(biāo)的網(wǎng)絡(luò)攻擊。通過系統(tǒng)性分析網(wǎng)絡(luò)偵察的主要形式及防御方法,討論網(wǎng)絡(luò)偵察的主要目標(biāo)信息,總結(jié)主要的網(wǎng)絡(luò)偵察方法,介紹當(dāng)前主流的網(wǎng)絡(luò)偵察防御方法,提供了一個全面的對抗性的網(wǎng)絡(luò)偵察攻防視角,可以幫助研究人員理解和建模網(wǎng)絡(luò)偵察過程,改進網(wǎng)絡(luò)偵察防御的方法和策略。
如今網(wǎng)絡(luò)早已成為國家治理、企業(yè)經(jīng)營、居民活動等方面不可或缺的組成部分,網(wǎng)絡(luò)安全也隨之受到各方面重視,并成為國家安全的有機組成。網(wǎng)絡(luò)攻擊也逐漸從早期普通黑客的個人行為發(fā)展為國家間有組織的戰(zhàn)爭形態(tài)之一,研究網(wǎng)絡(luò)攻擊及其防御技術(shù)也就顯得緊急而迫切了。
網(wǎng)絡(luò)偵察并不直接破壞網(wǎng)絡(luò)的安全性,但卻對攻擊者尋找目標(biāo)網(wǎng)絡(luò)的漏洞或脆弱點、規(guī)劃攻擊路徑、達成攻擊效果至關(guān)重要。尤其是對國家關(guān)鍵信息基礎(chǔ)設(shè)施這樣復(fù)雜的管理良好的系統(tǒng)來說,攻擊者往往需要通過長時間持續(xù)有組織地收集目標(biāo)網(wǎng)絡(luò)的信息,并組合利用多個漏洞或脆弱點才能執(zhí)行高效的網(wǎng)絡(luò)攻擊。因此網(wǎng)絡(luò)偵察也被視為一種網(wǎng)絡(luò)攻擊。對防御方來說,更好地理解網(wǎng)絡(luò)偵察的過程和方法,并構(gòu)建更高效、更有針對性的防御方法和策略,以降低對手網(wǎng)絡(luò)偵察的影響,具有重要意義。
攻擊方收集目標(biāo)網(wǎng)絡(luò)信息的過程被定義為網(wǎng)絡(luò)偵察。網(wǎng)絡(luò)攻擊過程可以用洛克希德·馬丁公司開發(fā)的網(wǎng)絡(luò)殺傷鏈模型進行描述,網(wǎng)絡(luò)偵察處于整個網(wǎng)絡(luò)攻擊過程的第1階段,如圖1所示。
圖1網(wǎng)絡(luò)殺傷鏈模型
網(wǎng)絡(luò)殺傷鏈模型充分體現(xiàn)了網(wǎng)絡(luò)偵察對網(wǎng)絡(luò)攻擊的重要意義,但該模型只關(guān)注了網(wǎng)絡(luò)外部的網(wǎng)絡(luò)偵察。Roy等人對網(wǎng)絡(luò)殺傷鏈模型進行了改進,提出了基于偵察的網(wǎng)絡(luò)殺傷鏈模型,如圖2所示。
圖2基于偵察的網(wǎng)絡(luò)殺傷鏈模型
基于偵察的網(wǎng)絡(luò)殺傷鏈模型更強調(diào)了網(wǎng)絡(luò)偵察在外部和內(nèi)部收集目標(biāo)信息的重要性。外部偵察可以為對手提供目標(biāo)網(wǎng)絡(luò)部署的安全措施、運行的設(shè)備、提供的服務(wù)等信息,借助于已有的針對已知系統(tǒng)和漏洞的技術(shù)和工具,攻擊者可以高效地完成攻擊載荷準(zhǔn)備、漏洞利用等過程。而內(nèi)部偵察可以為攻擊載荷在目標(biāo)網(wǎng)絡(luò)內(nèi)部的橫向移動提供幫助。
攻擊者執(zhí)行網(wǎng)絡(luò)偵察使用的戰(zhàn)術(shù)、技術(shù)和工具多種多樣,可基本分類為社會工程學(xué)手段和技術(shù)手段。常用的技術(shù)手段又包括網(wǎng)絡(luò)釣魚、信息竊取、網(wǎng)絡(luò)掃描、流量分析等。目前已有大量文獻對網(wǎng)絡(luò)偵察及其所用的技術(shù)進行了調(diào)查和分析,但這些文獻在調(diào)查、分類和理解整個網(wǎng)絡(luò)偵察方面還存在不足,并且缺少關(guān)于網(wǎng)絡(luò)偵察防御方法的研究。本文對基于技術(shù)手段的網(wǎng)絡(luò)偵察的目標(biāo)信息和常用技術(shù)手段進行了調(diào)查分類,并重點針對網(wǎng)絡(luò)偵察的防御方法進行了研究。
01網(wǎng)絡(luò)偵察的目標(biāo)信息
攻擊者通過網(wǎng)絡(luò)偵察尋找的目標(biāo)信息類型多種多樣,這是因為在網(wǎng)絡(luò)攻擊的不同階段尋找的目標(biāo)信息類型不同,并且針對不同的網(wǎng)絡(luò)攻擊目標(biāo)也會尋找不同類型的目標(biāo)信息。此外,不同類型的目標(biāo)信息通常是高度關(guān)聯(lián)的,攻擊者可能需要依次獲取它。本文將網(wǎng)絡(luò)偵察的目標(biāo)信息分為用戶信息、系統(tǒng)信息、網(wǎng)絡(luò)信息和應(yīng)用信息4類,如圖3所示。
圖3網(wǎng)絡(luò)偵察的目標(biāo)信息1.1用戶信息
用戶信息是指網(wǎng)絡(luò)、設(shè)備、應(yīng)用的用戶相關(guān)的信息,主要包括賬戶詳細信息、瀏覽器歷史記錄和cookie等。
(1)賬戶詳細信息:指用戶和用戶組的列表、登錄類型、訪問控制策略、權(quán)限等信息,如用戶名、token信息等。
(2)用戶登錄憑據(jù):指用戶登錄時使用的密碼、證書等,攻擊方通常使用鍵盤記錄器等間諜軟件來竊取。
(3)瀏覽器歷史記錄和cookie:指用戶使用瀏覽器訪問網(wǎng)站的記錄信息。
1.2系統(tǒng)信息
系統(tǒng)信息是軟件配置、正在運行的進程、文件和目錄以及安全環(huán)境等信息,這些信息可幫助對手執(zhí)行下一個階段的攻擊。
(1)操作系統(tǒng):指操作系統(tǒng)類型、版本、序列號、安裝日期等信息,這些信息可以幫助攻擊者發(fā)現(xiàn)和利用操作系統(tǒng)缺陷。
(2)系統(tǒng)配置:指主機內(nèi)軟硬件的設(shè)置信息,如Windows的注冊表項和值,這些信息可以幫助攻擊方了解運行的程序、軟件配置等。
(3)系統(tǒng)硬件及外網(wǎng)設(shè)備:指中央處理器(Central Processing Unit,CPU)、內(nèi)存、硬盤、顯卡、網(wǎng)卡、通用串行總線(Universal Serial Bus,USB)設(shè)備、藍牙設(shè)備等的信息,這些信息可以幫助對手獲得供應(yīng)商信息、硬件漏洞和虛擬機的存在。
(4)安全環(huán)境:指防火墻規(guī)則、防病毒軟件的存在、蜜罐或沙箱設(shè)置、虛擬化環(huán)境等,這些信息可幫助對手規(guī)避沙箱、虛擬機以及蜜罐等技術(shù)。
(5)文件和目錄:指可以幫助對手提取用戶賬戶、密碼管理、軟件或應(yīng)用程序配置、網(wǎng)絡(luò)配置等的信息的系統(tǒng)文件或目錄,以及用戶的個人文件、財務(wù)報告等。
1.3網(wǎng)絡(luò)信息
網(wǎng)絡(luò)信息指網(wǎng)絡(luò)拓撲結(jié)構(gòu)、網(wǎng)絡(luò)協(xié)議、防火墻、入侵檢測系統(tǒng)、設(shè)備和服務(wù)等信息,這些信息可以幫助對手了解本地網(wǎng)絡(luò)。
(1)域名和主機名:指起始授權(quán)機構(gòu)記錄(Start of Authority,SOA)、域名服務(wù)器記錄(NameServer,NS)、郵件交換記錄(Mail Exchanger,MX)等域名記錄、子域、whois記錄等信息,這些信息可幫助對手識別與特定組織關(guān)聯(lián)的域名。
(2)主機地址:指外部網(wǎng)絡(luò)(面向公共的)或內(nèi)部網(wǎng)絡(luò)(面向資源的)的可達IP地址和端口。
(3)網(wǎng)絡(luò)拓撲:指主機、路由器、交換機、防火墻和其他網(wǎng)絡(luò)設(shè)備組成的網(wǎng)絡(luò)的視圖,這些信息可幫助對手制定達到網(wǎng)絡(luò)目標(biāo)的路徑以及橫向移動的計劃。
(4)網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)服務(wù):指web、文件傳輸、域名、Email等服務(wù)及相關(guān)的協(xié)議,這些信息可以幫助用戶通過服務(wù)和協(xié)議訪問內(nèi)部網(wǎng)絡(luò)。
(5)網(wǎng)絡(luò)設(shè)備:指網(wǎng)絡(luò)中路由器、交換機等的設(shè)備制造商或供應(yīng)商、操作系統(tǒng)及其版本、制造商設(shè)置、網(wǎng)絡(luò)配置等信息,這些信息可以幫助用戶利用已知漏洞進行攻擊。
(6)安全措施:指網(wǎng)絡(luò)中部署的防火墻、入侵檢測系統(tǒng)、網(wǎng)絡(luò)區(qū)域隔離、蜜罐等網(wǎng)絡(luò)安全設(shè)施,這些信息可以幫助用戶規(guī)避網(wǎng)絡(luò)的安全防御措施,并防止被追蹤溯源。
1.4應(yīng)用信息
應(yīng)用信息是指應(yīng)用的組件、版本、配置、漏洞等信息,這些信息可幫助對手發(fā)現(xiàn)應(yīng)用的漏洞,以實施網(wǎng)絡(luò)攻擊。
(1)框架和依賴環(huán)境:指應(yīng)用的各種開發(fā)框架(如Django、SpringBoot、Flask)和運行時的各種依賴環(huán)境,這些信息可以幫助對手發(fā)現(xiàn)應(yīng)用的已知漏洞。
(2)軟件配置:指主機上已安裝的軟件和應(yīng)用程序的配置,這些信息可幫助對手發(fā)現(xiàn)主機上運行哪些軟件產(chǎn)品的可利用漏洞,以及訪問令牌、用戶憑據(jù)和不安全的配置等信息。
(3)云服務(wù)應(yīng)用程序界面(Application Program Interface,API):指用戶遠程訪問云資產(chǎn)的信息,這些信息可幫助對手獲得有關(guān)虛擬機、云工具、服務(wù)和其他云資產(chǎn)的信息。
(4)數(shù)據(jù)庫:應(yīng)用程序大都使用了數(shù)據(jù)庫系統(tǒng),而數(shù)據(jù)庫系統(tǒng)容易出現(xiàn)配置錯誤或人為錯誤,攻擊方可利用這些信息實施網(wǎng)絡(luò)攻擊。
02網(wǎng)絡(luò)偵察方法
網(wǎng)絡(luò)偵察尋找的目標(biāo)信息類型多種多樣,針對不同類型的目標(biāo)信息使用的網(wǎng)絡(luò)偵察方法也不相同,根據(jù)網(wǎng)絡(luò)偵察過程是否與目標(biāo)進行緊密的信息交互,網(wǎng)絡(luò)偵察可分為主動網(wǎng)絡(luò)偵察和被動網(wǎng)絡(luò)偵察。主動網(wǎng)絡(luò)偵察需要與目標(biāo)進行緊密的信息交互,因此易被目標(biāo)網(wǎng)絡(luò)發(fā)現(xiàn),失敗概率較高。而被動網(wǎng)絡(luò)偵察可以不進行任何形式的信息交互,因此不易被目標(biāo)網(wǎng)絡(luò)發(fā)現(xiàn),成功概率較高,但通常需要部署大量的流量采集設(shè)備,成本較高。
2.1主動網(wǎng)絡(luò)偵察
主動網(wǎng)絡(luò)偵察通過向給定主機發(fā)送定制請求以產(chǎn)生特定響應(yīng)來連續(xù)探測網(wǎng)絡(luò)。這些響應(yīng)提供了目標(biāo)網(wǎng)絡(luò)的活動主機、操作系統(tǒng)、開放端口和運行中服務(wù)等信息。網(wǎng)絡(luò)掃描是最常用的主動網(wǎng)絡(luò)偵察技術(shù)。根據(jù)其尋找的目標(biāo)信息可進一步分為主機掃描、端口掃描、操作系統(tǒng)指紋識別和應(yīng)用程序指紋識別。
2.1.1主機掃描
主機掃描用于獲得給定IP地址范圍內(nèi)的活動主機。主機掃描通過向目標(biāo)網(wǎng)絡(luò)發(fā)送掃描數(shù)據(jù)包以發(fā)現(xiàn)處于活躍狀態(tài)的IP地址。掃描數(shù)據(jù)包通?;贗nternet控制報文協(xié)議(Internet Control Message Protocol,ICMP)和傳輸控制協(xié)議(Transmission Control Protocol,TCP)構(gòu)建,常用的掃描方法有ICMP Ping掃描[4]、TCP確認(Acknowledgement,ACK)Ping掃描、TCP同步(Synchronous,SYN)Ping掃描等。另外,地址解析協(xié)議(Address Resolution Protocol,ARP)掃描也可用于主機發(fā)現(xiàn),其在網(wǎng)絡(luò)中廣播一個ARP數(shù)據(jù)包,并檢測廣播數(shù)據(jù)包的響應(yīng)判斷網(wǎng)絡(luò)中的活動主機,ARP掃描是一種適用于局域網(wǎng)內(nèi)活動主機發(fā)現(xiàn)的低級掃描技術(shù)。
2.1.2端口掃描
端口掃描首先向目標(biāo)網(wǎng)絡(luò)的所有端口發(fā)送掃描數(shù)據(jù)包,然后根據(jù)響應(yīng)信息判斷這些端口的狀態(tài),并可進一步根據(jù)返回的響應(yīng)信息分析網(wǎng)絡(luò)特征和網(wǎng)絡(luò)拓撲。端口掃描的數(shù)據(jù)包主要基于TCP協(xié)議和用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol,UDP)構(gòu)建。根據(jù)掃描數(shù)據(jù)包使用的協(xié)議及標(biāo)記位設(shè)置,端口掃描可分為TCP全連接掃描、SYN掃描、ACK掃描、XMAS掃描、FIN掃描、NULL掃描、TCP窗口掃描和用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol,UDP)掃描。
(1)TCP全連接掃描
該掃描向目標(biāo)端口發(fā)送帶SYN標(biāo)記的TCP包嘗試連接,如果目標(biāo)端口打開,目標(biāo)端口會返回帶SYN和ACK標(biāo)記的響應(yīng)包,攻擊者收到響應(yīng)后發(fā)送帶ACK標(biāo)記的數(shù)據(jù)包完成3次握手。
(2)SYN掃描
該掃描同樣向目標(biāo)端口發(fā)送帶SYN標(biāo)記的TCP包,但與TCP全連接掃描不同,其不能建立完整的TCP連接,因此也叫半連接掃描。SYN掃描如果接收到帶SYN或ACK標(biāo)記的數(shù)據(jù)包,則目標(biāo)端口打開。如果接收到帶重置(Reset,RST)標(biāo)記的數(shù)據(jù)包,則目標(biāo)端口關(guān)閉。
(3)ACK掃描
該掃描向目標(biāo)端口發(fā)送一個只有ACK標(biāo)記的TCP數(shù)據(jù)包,如果目標(biāo)端口打開,則返回一個帶RST標(biāo)記的數(shù)據(jù)包,否則不回復(fù)。
(4)XMAS掃描
該掃描向目標(biāo)端口發(fā)送帶無效標(biāo)記的數(shù)據(jù)包,若目標(biāo)端口關(guān)閉則會返回帶RST標(biāo)記的數(shù)據(jù)包,而打開的端口會忽略數(shù)據(jù)包,不返回任何內(nèi)容。Nmap通常使用FIN、URG(緊急)和PSH(推送)3個標(biāo)記來執(zhí)行XMAS掃描。XMAS掃描可繞過防火墻和入侵檢測系統(tǒng)(Intrusion Detection System,IDS)檢測,且速度快。
(5)FIN掃描
該掃描向目標(biāo)端口發(fā)送帶FIN標(biāo)記的數(shù)據(jù)包,若目標(biāo)端口關(guān)閉則會返回帶RST標(biāo)記的數(shù)據(jù)包,而關(guān)閉的端口會忽略數(shù)據(jù)包,不返回任何內(nèi)容。
(6)NULL掃描
該掃描向目標(biāo)端口發(fā)送所有標(biāo)記位設(shè)置為0的TCP包,根據(jù)TCP協(xié)議規(guī)定,如果目標(biāo)端口打開則返回帶RST標(biāo)記的數(shù)據(jù)包。
(7)TCP窗口掃描
TCP窗口掃描向目標(biāo)端口發(fā)送ACK掃描類似的帶ACK標(biāo)記的數(shù)據(jù)包,并通過檢查返回的帶RST標(biāo)記的數(shù)據(jù)包的窗口值大小來區(qū)分打開的端口和關(guān)閉的端口。通常返回窗口值非零的RST數(shù)據(jù)包的目標(biāo)端口處于打開狀態(tài),窗口值為零的RST數(shù)據(jù)包的目標(biāo)端口處于關(guān)閉狀態(tài),返回未收到響應(yīng)或ICMP不可達錯誤的目標(biāo)端口,則忽略了掃描數(shù)據(jù)包。
(8)UDP掃描
UDP掃描主要用于掃描提供正在運行的服務(wù)的UDP端口。在UDP掃描中,如果端口關(guān)閉,通常會收到響應(yīng)。典型的UDP端口開放服務(wù)有域名系統(tǒng)(Domain Name System,DNS)、虛擬專用網(wǎng)絡(luò)(Virtual Private Network,VPN)、簡單網(wǎng)絡(luò)管理協(xié)議(Simple Network Management Protocol,SNMP)、網(wǎng)絡(luò)時間協(xié)議(Network Time Protocol,NTP)。UDP掃描還可用于檢測操作系統(tǒng)和服務(wù)的版本。另外通過UDP掃描執(zhí)行反向DNS解析確定目標(biāo)主機的主機名。
2.1.3操作系統(tǒng)指紋識別
操作系統(tǒng)指紋識別是檢測遠程目標(biāo)主機操作系統(tǒng)的過程。操作系統(tǒng)指紋識別依賴于端口掃描,通過發(fā)送精心構(gòu)造的掃描數(shù)據(jù)包,分析響應(yīng)實現(xiàn)。常用的操作系統(tǒng)指紋識別方法包括TTL域分析、ID域分析、“Don’t Fragment”位分析、“Sequence number”域分析、“Acknowledgment number”域分析、TCP標(biāo)記位和TCP窗口大小分析、TCP“options”分析等。常用的操作系統(tǒng)指紋識別工具包括Nmap、sinfp、Xprobe2,這些工具都同時使用多種方法來分析目標(biāo)主機的操作系統(tǒng)。
2.1.4應(yīng)用程序指紋識別
應(yīng)用程序指紋識別主要利用服務(wù)器端應(yīng)用程序在接受客戶端之前發(fā)送的一種前導(dǎo)信息,通常被稱為“banner”。通過向掃描主機發(fā)送連接請求,攻擊者可以獲取banner,并確定活動應(yīng)用程序和服務(wù)的詳細信息,如軟件版本,并結(jié)合其他信息進一步確定軟件是否存在已知漏洞[9-10]。應(yīng)用程序指紋識別鑒別的信息通常包括FIN、BOGUS flag、ISN采樣、DF位、TCP初始窗口大小、ACK值、ICMP出錯消息抑制、ICMP消息引用、ICMP出錯消息回射完整性、服務(wù)類型(Type of Service,TOS)、重疊分片處理、TCP選項等。
2.2被動網(wǎng)絡(luò)偵察
被動網(wǎng)絡(luò)偵察不產(chǎn)生額外的流量,而是通過收集網(wǎng)絡(luò)中的現(xiàn)有流量來尋找需要的信息。目標(biāo)網(wǎng)絡(luò)的信息需要不斷更新以保證獲取的信息最新。由于主動網(wǎng)絡(luò)偵察不利用任何現(xiàn)有的網(wǎng)絡(luò)流量,因此它必須快速創(chuàng)建足夠多的自定義流量來偵察目標(biāo)網(wǎng)絡(luò),才能跟上目標(biāo)網(wǎng)絡(luò)的變化,以滿足發(fā)現(xiàn)信息更新的需求。而被動網(wǎng)絡(luò)偵察直接利用網(wǎng)絡(luò)中的現(xiàn)有流量,因此可以快速全面發(fā)現(xiàn)目標(biāo)網(wǎng)絡(luò)的變化,相比主動網(wǎng)絡(luò)偵察具有較高的全面性和時效性。
被動網(wǎng)絡(luò)偵察的主要方法是網(wǎng)絡(luò)流量嗅探,其首先使用網(wǎng)絡(luò)流量嗅探工具捕獲網(wǎng)絡(luò)數(shù)據(jù)包,常用的工具包括Wireshark、Ettercap、TCPdump、Windump等,然后對捕獲的數(shù)據(jù)包進行分析。如果數(shù)據(jù)包未加密,對手可以獲得用戶憑證信息,如以明文形式發(fā)送的用戶名和密碼。目前加密協(xié)議的廣泛使用大大降低了攻擊方通過網(wǎng)絡(luò)流量嗅探收集信息的能力,但其仍然可以獲得關(guān)于已安裝的操作系統(tǒng)、應(yīng)用程序、協(xié)議版本、源端口和目標(biāo)端口、數(shù)據(jù)包和幀序列等的信息。通過逐幀分析數(shù)據(jù)包,攻擊方可能能夠識別服務(wù)中的錯誤問題和漏洞。有些協(xié)議特別容易受到嗅探,例如,Telnet可以顯示擊鍵(名稱和密碼),超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)可以顯示以明文發(fā)送的數(shù)據(jù),簡單郵件傳輸協(xié)議(Simple Mail Transfer Protocol,SMTP)、網(wǎng)絡(luò)信息傳送協(xié)議(Network Message Transfer Protocol,NMTP)、郵局協(xié)議(Post office Protocol,POP)、文件傳輸協(xié)議(File Transfer Protocol,F(xiàn)TP)、消息訪問協(xié)議(Internet Message Access Protocol,IMAP)可以顯示以明文發(fā)送的密碼或數(shù)據(jù)。
2.3側(cè)信道掃描
與主動偵察攻擊和被動偵察攻擊在目標(biāo)主機信道內(nèi)收集信息不同,側(cè)信道掃描利用目標(biāo)主機的側(cè)信道信息收集信息。常用的目標(biāo)主機側(cè)信道信息有互聯(lián)網(wǎng)協(xié)議標(biāo)識(Internet Protocol Identity,IPID)、SYN-backlog等。側(cè)信道掃描可用于測量兩臺目標(biāo)主機的連接性、掃描目標(biāo)主機的開放端口、計算網(wǎng)絡(luò)地址轉(zhuǎn)換(Network Address Translation,NAT)設(shè)備后的主機數(shù)量,甚至生成遠程目標(biāo)主機的指紋。
03網(wǎng)絡(luò)偵察防御方法
網(wǎng)絡(luò)偵察防御主要以保護目標(biāo)網(wǎng)絡(luò)的關(guān)鍵信息為目標(biāo)。防御網(wǎng)絡(luò)偵察通常需要先檢測識別網(wǎng)絡(luò)偵察流量,然后有針對性地對流量進行處理,處理方法包括阻斷、限流、使用虛假響應(yīng)等。有些網(wǎng)絡(luò)偵察防御方法無須對網(wǎng)絡(luò)偵察進行檢測,而是通過增大目標(biāo)網(wǎng)絡(luò)信息的可觀察面,使有效信息掩藏在大量虛假信息中。
3.1網(wǎng)絡(luò)偵察檢測
檢測與識別網(wǎng)絡(luò)偵察通常是很多網(wǎng)絡(luò)偵察防御方法的第一步,但網(wǎng)絡(luò)偵察檢測只針對主動網(wǎng)絡(luò)偵察,因為被動網(wǎng)絡(luò)偵察不主動發(fā)送偵察流量。常規(guī)IDS檢測是最常用的網(wǎng)絡(luò)偵察檢測方法,但是存在多種類型的網(wǎng)絡(luò)偵察不能被常規(guī)IDS檢測,如表1所示。
網(wǎng)絡(luò)偵察檢測方法主要包括基于特征分析的網(wǎng)絡(luò)偵察檢測和基于異常分析的網(wǎng)絡(luò)偵察檢測兩類。
3.1.1基于特征分析的網(wǎng)絡(luò)偵察檢測
基于特征分析的網(wǎng)絡(luò)偵察檢測通過提取網(wǎng)絡(luò)偵察數(shù)據(jù)包的特征,然后使用特征匹配、機器學(xué)習(xí)或統(tǒng)計分析的方法對特征進行發(fā)現(xiàn),以發(fā)現(xiàn)網(wǎng)絡(luò)偵察。使用的特征包括協(xié)議、源IP地址、源端口地址、協(xié)議標(biāo)記位、流開始時間、流持續(xù)時間等。常用的技術(shù)包括基于規(guī)則的網(wǎng)絡(luò)偵察檢測、基于機器學(xué)習(xí)/深度學(xué)習(xí)的網(wǎng)絡(luò)偵察檢測、基于統(tǒng)計的偵察流量檢測。
基于規(guī)則的網(wǎng)絡(luò)偵察檢測方法利用偵察流量通常具有固定特征的特性來檢測掃描網(wǎng)絡(luò)偵察。如文獻[17]提出了一種基于規(guī)則的快速端口掃描檢測系統(tǒng),該系統(tǒng)定義了一組規(guī)則和閾值來檢測端口掃描嘗試,其由一個特征選擇器和決策引擎組成。該系統(tǒng)用于檢測的特征由包中設(shè)置的標(biāo)志類型、源IP、目標(biāo)端口號、兩個連續(xù)包之間的時間間隔和連續(xù)包的數(shù)量組成。而文獻[18]等提出了基于網(wǎng)絡(luò)中包內(nèi)信息特征的端口掃描檢測方法。
機器學(xué)習(xí)、深度學(xué)習(xí)等人工智能方法廣泛應(yīng)用于網(wǎng)絡(luò)安全領(lǐng)域,提高了網(wǎng)絡(luò)安全防御的智能化水平,其在網(wǎng)絡(luò)偵察流量檢測方面也有應(yīng)用。如文獻[19]使用監(jiān)督學(xué)習(xí)分類器對SYN scan、FIN scan、Xmas Tree Scan、NULL scan等幾類隱蔽掃描進行檢測,結(jié)果表明決策樹分類器具有較高的檢測性能和較低的檢測計算時間消耗。文獻[20]提出了使用深度信念網(wǎng)絡(luò),結(jié)合有監(jiān)督和無監(jiān)督的機器學(xué)習(xí)方法來檢測端口掃描攻擊。而文獻[21]在CICIDS2017數(shù)據(jù)集上比較了支持向量機(Support Vector Machine,SVM)和深度學(xué)習(xí)對端口掃描攻擊進行分類的準(zhǔn)確率,結(jié)果表明深度學(xué)習(xí)分類準(zhǔn)確率明顯高于SVM。
基于統(tǒng)計的偵察流量檢測方法的基本思想是設(shè)定一個時間窗口統(tǒng)計各類端口掃描嘗試流量的數(shù)量,當(dāng)超過一定閾值時就判定為偵察流量。如文獻[22]提出了一種端口掃描流量基線模型構(gòu)建方法,該方法將每個端口的掃描次數(shù)映射到一組坐標(biāo)上,并跟蹤質(zhì)心,形成基線模型。利用該模型可以比較不同時間窗或不同網(wǎng)絡(luò)位置的掃描背景流量的形態(tài)差異,發(fā)現(xiàn)異常掃描流量。文獻[17]改進了基于靜態(tài)時間間隔的慢端口掃描攻擊檢測方法,利用連續(xù)時間特征對掃描攻擊進行檢測,可提高掃描頻率隨時間變化的掃描攻擊的準(zhǔn)確率。
3.1.2基于異常的偵察流量檢測
基于異常的偵察流量檢測方法主要借鑒異常流量檢測方法來檢測偵察流量。文獻[23]提出了一種基于模糊邏輯控制器的TCP端口掃描檢測框架,它采用了模糊規(guī)則庫和Mamdani推理方法。實驗和評價表明,與Snort和相關(guān)IDS系統(tǒng)相比,該系統(tǒng)在多級端口掃描檢測方面的效率較高。文獻[24]還討論了增強樹突狀細胞算法(Dendritic Cell Algorithm,DCA)對惡意TCP端口掃描的檢測。通過使用不同的用例,積累了評估和結(jié)果,以顯示DCA算法在端口掃描檢測中使用的有效性。文獻[25]提出了異常偵察流量檢測算法,不僅可以確定端口掃描的事實,還可以識別執(zhí)行掃描的攻擊者的源IP地址。文獻[26]提出了一種基于異常行為的Shodan和Censys掃描檢測方法,該方法使用有狀態(tài)TCP數(shù)據(jù)包檢查來監(jiān)控數(shù)據(jù)包是否異常,如果異常,則添加到可疑列表中。
3.2欺騙防御技術(shù)
網(wǎng)絡(luò)欺騙技術(shù)是一種基于軍事欺騙思想利用對手認知和決策上的弱點或偏見來干擾或誤導(dǎo)對手網(wǎng)絡(luò)攻擊過程的主動防御技術(shù)。網(wǎng)絡(luò)欺騙按其行為類型可分為信息模擬和偽裝。信息偽裝通過掩藏、混淆等手段對目標(biāo)的關(guān)鍵信息進行隱藏,使對手難以獲得目標(biāo)的真實信息。信息模擬則是構(gòu)建或使用虛假的信息來分散或誤導(dǎo)對手的注意力,常用的方法有蜜罐[27]、蜜網(wǎng)、誘餌[28]。網(wǎng)絡(luò)欺騙技術(shù)可以應(yīng)用在系統(tǒng)信息、流量信息和拓撲信息方面。系統(tǒng)信息欺騙方面,文獻[29]提出了基于聚類的連續(xù)匿名容器指紋欺騙方法,通過對容器網(wǎng)絡(luò)地址進行跳變和容器操作系統(tǒng)指紋進行修改,實現(xiàn)容器指紋欺騙,可大大增加對手網(wǎng)絡(luò)偵察的成本消耗。文獻[30]提出了一個基于深度強化學(xué)習(xí)的偵察攻擊欺騙框架,該框架融合了欺騙防御和人工智能技術(shù),可增強云端虛擬機防御偵察攻擊的能力。在流量信息欺騙方面,文獻[31]基于對抗性機器學(xué)習(xí)生成偽裝指紋,以對抗對手基于深度學(xué)習(xí)的指紋分析攻擊。文獻[32]基于生成對抗網(wǎng)絡(luò)模型生成動態(tài)的偽裝流量,以規(guī)避對抗基于流量分析的網(wǎng)絡(luò)掃描攻擊;文獻[33]通過改變源應(yīng)用程序的數(shù)據(jù)包長度的概率分布,來混淆網(wǎng)絡(luò)流量分類器,可有效降低網(wǎng)絡(luò)流量分類器的分類準(zhǔn)確率。在拓撲欺騙方面,文獻[34]和文獻[35]通過生成高欺騙性、低成本和高效率的有效模糊網(wǎng)絡(luò)拓撲來對抗對手基于斷層掃描的網(wǎng)絡(luò)拓撲偵察。而文獻[36]通過直接在數(shù)據(jù)平面中攔截和修改路徑跟蹤探測來混淆拓撲結(jié)構(gòu),以欺騙對手基于Traceroute的拓撲偵察。文獻[37]提出一個基于軟件定義網(wǎng)絡(luò)(Software Defined Network,SDN)的拓撲欺騙系統(tǒng)來偽裝網(wǎng)絡(luò)中的關(guān)鍵資源,并在網(wǎng)絡(luò)中放置虛假的脆弱節(jié)點誘導(dǎo)對手掃描攻擊。
3.3移動目標(biāo)防御技術(shù)
由于網(wǎng)絡(luò)服務(wù)和配置的靜態(tài)性,攻擊方容易通過網(wǎng)絡(luò)偵察構(gòu)建信息優(yōu)勢,從而提高網(wǎng)絡(luò)攻擊的效率。為了消除這種不對稱優(yōu)勢,一種最直接的方法就是增強網(wǎng)絡(luò)服務(wù)和配置的復(fù)雜性、多樣性和隨機性,以提高系統(tǒng)彈性,增加攻擊者的復(fù)雜性和成本。移動目標(biāo)防御就是通過創(chuàng)建隨時間推移不斷變化的機制和策略,降低系統(tǒng)信息暴露的機會的技術(shù)。媒體存取控制(Media Access Control,MAC)地址、IP地址、端口、協(xié)議、加密算法等節(jié)點信息和網(wǎng)絡(luò)流傳輸過程中的轉(zhuǎn)發(fā)鏈路、路由節(jié)點等鏈路信息是網(wǎng)絡(luò)傳輸中的兩個關(guān)鍵要素,也是需要保護的重要網(wǎng)絡(luò)屬性,因此節(jié)點信息和鏈路信息動態(tài)變換是當(dāng)前主要的移動目標(biāo)防御策略。節(jié)點信息的移動目標(biāo)防御方法有動態(tài)IP地址轉(zhuǎn)換[38]、端口地址跳變[39]、TCP/IP協(xié)議頭變換[40]等。鏈路信息動態(tài)變換的移動目標(biāo)防御方法有基于確定性多路徑選擇的轉(zhuǎn)發(fā)路徑遷移[41]、基于路由變換的轉(zhuǎn)發(fā)路徑遷移[42]等。另外,地址空間隨機化、指令集隨機化和數(shù)據(jù)隨機化等系統(tǒng)硬件環(huán)境隨機化和應(yīng)用程序異構(gòu)化也可達到移動目標(biāo)防御的效果。實際應(yīng)用中常綜合使用多種移動目標(biāo)防御機制,并結(jié)合博弈論制定防御策略,使用SDN進行部署,如文獻[43]提出了一種基于軟件定義網(wǎng)絡(luò)的指紋跳變方法來抵御指紋攻擊,該方法將指紋攻擊及其防御的相互作用建模為一種信號博弈模型,并分析了該博弈的均衡性,提出了一種最優(yōu)防御策略。
3.4網(wǎng)絡(luò)偵察追蹤溯源技術(shù)
對網(wǎng)絡(luò)偵察進行追蹤溯源,識別背后的惡意組織對網(wǎng)絡(luò)防御與反制都具有重要意義。網(wǎng)絡(luò)偵察追蹤溯源主要針對主動網(wǎng)絡(luò)偵察,通過分析對手發(fā)送的偵察數(shù)據(jù)包的特征信息實現(xiàn),如文獻[26]通過分析掃描數(shù)據(jù)包的行為可識別Shodan和Censys的掃描流量。文獻[44]提出了一種基于遺傳算法的網(wǎng)絡(luò)協(xié)議版本4(Internet Protocol Version 4,IPv4)和TCP報頭字段指紋識別算法,該算法可有效識別暗網(wǎng)中掃描攻擊的指紋。網(wǎng)絡(luò)偵察追蹤溯源研究面臨的主要難題是缺乏有效的數(shù)據(jù)集,文獻[45]提出了一種替代方法來解決收集數(shù)據(jù)的問題,并公開了其收集的數(shù)據(jù)。
04未來研究建議
基于以上分析,本節(jié)從網(wǎng)絡(luò)偵察的新形式、建模、攻防博弈刻畫、防御效果評價角度出發(fā),對網(wǎng)絡(luò)偵察及其防御的未來研究提出建議。
4.1網(wǎng)絡(luò)偵察的新形式
新型網(wǎng)絡(luò)技術(shù)不斷涌現(xiàn),網(wǎng)絡(luò)偵察收集目標(biāo)網(wǎng)絡(luò)信息的手段和方式也隨之發(fā)生變化,因為有新形式的信息可以幫助攻擊方分析目標(biāo)網(wǎng)絡(luò)的漏洞,攻擊方也可以開發(fā)新的技術(shù)用于目標(biāo)網(wǎng)絡(luò)信息偵察。隨著虛擬化、云、容器、移動或邊緣計算等顛覆性技術(shù)的興起,計算資源和數(shù)據(jù)更多地被托管給云服務(wù),這為攻擊者實施跨虛擬機緩存的偵察攻擊提供了機會,因此研究網(wǎng)絡(luò)偵察的新形式是十分必要的。
4.2網(wǎng)絡(luò)偵察建模
本文對網(wǎng)絡(luò)偵察的目標(biāo)信息和主要方法進行了總結(jié),但沒有涉及如何構(gòu)建不同類型攻擊者的偵察過程模型,當(dāng)前研究成果也較少。攻擊方的類型和目標(biāo)可能對他們?nèi)绾芜M行偵察攻擊有很大的影響。
網(wǎng)絡(luò)偵察模型應(yīng)包括對手如何確定要收集的目標(biāo)信息,如何對不同類型的目標(biāo)信息進行優(yōu)先級排序,如何確定要實施的偵察攻擊類型,以及如何對收集的有限和不確定的信息進行融合分析。網(wǎng)絡(luò)偵察過程中攻擊者如何使用隱形方式和非隱形方式,也需要基于框架和數(shù)據(jù)構(gòu)建偵察攻擊模型進行解釋。
4.3網(wǎng)絡(luò)偵察攻防博弈刻畫
理解網(wǎng)絡(luò)偵察與防御的對抗關(guān)系,準(zhǔn)確描述信息交互過程,充分利用對手的認知缺陷和偏見制定防御策略是達成網(wǎng)絡(luò)偵察防御效果的關(guān)鍵。目前學(xué)術(shù)界已提出多種博弈模型用于刻畫網(wǎng)絡(luò)偵察攻防對抗關(guān)系,如貝葉斯模型、多階段博弈模型、信號模型等。然而動態(tài)環(huán)境下,網(wǎng)絡(luò)偵察攻防的博弈關(guān)系復(fù)雜多變,還需要更多的研究來刻畫動態(tài)環(huán)境下對手的偵察活動,包括攻擊方如何決定進行偵察及攻擊方如何在攻擊中使用偵察收集的信息等,并對防御者使用混淆、欺騙等手段對攻擊者的影響進行描述,以更深刻地揭示網(wǎng)絡(luò)偵察攻防雙方的博弈關(guān)系。
4.4網(wǎng)絡(luò)偵察防御效果評價
網(wǎng)絡(luò)防御方可以利用欺騙和混淆隱藏目標(biāo)網(wǎng)絡(luò)的有效信息,也可以通過增加網(wǎng)絡(luò)的復(fù)雜性、多樣性和隨機性增大對手收集目標(biāo)網(wǎng)絡(luò)有效信息的難度,達到降低對手網(wǎng)絡(luò)偵察影響的效果。但這些技術(shù)和方法的防御效果還有待進一步研究,特別是針對不同類型的偵察攻擊,有必要評估不同的防御方法對防御不同類型的偵察攻擊的有效性,例如側(cè)信道掃描攻擊難以被檢測發(fā)現(xiàn),有必要采取其他針對性防御方法降低其影響。更好的網(wǎng)絡(luò)偵察防御效果評價模型可以提高網(wǎng)絡(luò)防御的針對性和效果,降低防御成本,因此有必要在未來加強研究。
05結(jié)語
網(wǎng)絡(luò)偵察在對手網(wǎng)絡(luò)攻擊過程中扮演著重要角色,是其收集目標(biāo)網(wǎng)絡(luò)信息,了解目標(biāo)網(wǎng)絡(luò)漏洞和缺陷的關(guān)鍵。本文對常見的網(wǎng)絡(luò)偵察方法及其防御技術(shù)進行了總結(jié),也提出了未來網(wǎng)絡(luò)偵察及其防御技術(shù)的研究建議,有助于研究者全面了解網(wǎng)絡(luò)偵察,提高網(wǎng)絡(luò)偵察防御的針對性,促進網(wǎng)絡(luò)偵察防御手段的研究。
審核編輯:郭婷
-
交換機
+關(guān)注
關(guān)注
22文章
2747瀏覽量
101926 -
路由器
+關(guān)注
關(guān)注
22文章
3839瀏覽量
116738 -
瀏覽器
+關(guān)注
關(guān)注
1文章
1040瀏覽量
36308
原文標(biāo)題:網(wǎng)絡(luò)偵察及其防御技術(shù)研究綜述
文章出處:【微信號:AI智勝未來,微信公眾號:AI智勝未來】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
無刷電機小波神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)子位置檢測方法的研究
三相無刷直流電機改進型脈寬調(diào)制策略
改進的BP網(wǎng)絡(luò)PID控制器在無刷直流電機中的應(yīng)用
網(wǎng)絡(luò)攻防模擬:城市安全 “數(shù)字預(yù)演”

脈沖電流局部放電監(jiān)測傳感器:電力設(shè)備絕緣的“偵察尖兵”

華為面向海外全面升級星河AI網(wǎng)絡(luò)
深度防御策略:構(gòu)建USB安全防線的五大核心層次
艾體寶干貨 深度防御策略:構(gòu)建USB安全防線的五大核心層次
無人機智能巡檢系統(tǒng)光伏電站中的偵察兵

微波網(wǎng)絡(luò)分析儀的原理和應(yīng)用場景
華納云企業(yè)建立全面的網(wǎng)絡(luò)安全策略的流程
主動靜電與漏電防御策略是全面消除整個電子制造過程中的工藝及品質(zhì)盲點的最佳策略

鑒源實驗室·如何通過雷達攻擊自動駕駛汽車-針對點云識別模型的對抗性攻擊的科普

評論