馬之力 智勇 張馴 閆曉斌 黨倩 袁暉 朱小琴
【 摘 要 】 近年來,網絡攻擊手段愈加豐富、隱蔽性更強,入侵檢測、態(tài)勢感知等安全防護技術雖能發(fā)揮重要作用,但針對有些攻擊方式則難以監(jiān)測其攻擊行為,在排查診斷攻擊時也收效有限。論文研究提出通過捕獲數據包并對其進行分析,將網絡從原來封閉的黑盒子,變?yōu)榭芍庇^展現的詳細數據,進而診斷定位網絡攻擊的方法,并列舉了相應的實例。該方法能夠快速診斷定位網絡攻擊源及攻擊手段,并且解決常規(guī)分析手段難以分析的疑難攻擊問題。
【 關鍵詞 】 數據包分析;數據包捕獲;網絡攻擊;攻擊診斷
【 Abstract 】 Recent years, the means of network attacks are increasingly rich, and more concealed. Meanwhile, Intrusion detection, situational awareness and other security technology can play an important role, but for some attacks it is difficult to monitor its aggressive behavior, and is also limited success when troubleshooting diagnosis attack. The paper proposes a method for the diagnosis of attacks targeting network by capturing and analyzing data packets. So, the detailed data of network can be visually show. Additionally, the paper lists the corresponding instance. This method can quickly diagnose and locate the source and means of network attacks,and solve difficult problems of the conventional methods difficult to analyze.
【 Keywords 】 packet analysis; packet capture; network attack; attack the diagnosis
1 引言
隨著企業(yè)信息化建設的快速發(fā)展,網絡規(guī)模愈加龐大,應用系統(tǒng)、數據庫、中間件等軟件產品和主機、網絡、安全等硬件設備更為復雜,惡意攻擊和安全威脅的排查難度難度明顯增大[1]。通常,網絡管理者監(jiān)測的重點在于網絡是否可用、負載是否正常、關鍵應用是否訪問正常。但當前很多網絡攻擊可在不影響應用或影響不大的的情況下獲取內部數據信息,造成敏感信息泄密。例如,SQL注入攻擊。另外,有些攻擊方式隱蔽性很強,入侵檢測系統(tǒng)等常規(guī)安全設備很難監(jiān)測其攻擊行為[1] [2]。
針對以上問題,本文研究提出通過捕獲數據包并對其進行分析,進而診斷定位網絡攻擊的方法。
2 數據包捕獲
數據包的捕獲是對其進行分析的基礎,根據數據包傳輸方式的不同分共享式和交換式兩大類。共享式捕獲即:將數據包捕獲程序接入到集線器(Hub),則任何一個端口傳輸的數據都可被捕獲,無需對集線器進行任何設置[3]。交換式捕獲涉及多種方法。
(1)端口鏡像:把交換機某個或多個端口(Vlan)的數據鏡像到其他端口的方法,即通過對交換機進行配置,實現將某個端口的數據包拷貝一份到其他端口上。
(2)測試入口點(Test Access Point,TAP)捕獲:通過分路器、分光器直接獲取網絡鏈路上的物理信號而獲取流量,可復制到多個端口、匯聚到個別端口,也可根據一定規(guī)則過濾出需要的數據。
(3)MAC洪泛捕獲:通過向交換機發(fā)送大量Mac地址,造成交換機內容尋址存儲器(Content Addressable Memory, CAM)表溢出,此時交換機會將數據包在廣播域中泛洪,從而捕獲數據包。該方法會造成網絡堵塞,導致網絡性能下降。
(4)ARP欺騙捕獲:地址解析協(xié)議(Address Resolution Protocol, ARP)欺騙通過向目標主機發(fā)送偽造的ARP應答包,將目標主機網關的MAC地址修改為攻擊者的主機MAC地址,同時向目標主機網關發(fā)送偽造的ARP應答包[4]。攻擊者作為“中間人”, 目標主機的數據都經過它中轉,如此,竊取到目標主機的通信數據。
3 數據包分析技術的應用
數據包分析是指通過解析網絡中最小人工可讀數據,以全面掌握網絡及應用的運行規(guī)律與狀態(tài)的一種技術。通過數據包分析,能夠有效識別并快速診斷定位網絡中的惡意攻擊行為,以及不安全和濫用網絡的應用。
3.1 掃描攻擊診斷及定位
網絡掃描通常利用TCP、UDP等方式檢測操作系統(tǒng)類型及開放的服務,為進一步攻擊做好準備[2] [5]。常見的網絡掃描方式有TCP SYN掃描、UDP掃描、NULL掃描、ACK掃描、FIN\ACK掃描以及ICMP掃描等[2] [5]。
該類攻擊的數據包具有幾項特征:(1)小包數量多,128字節(jié)以內的數據包較多;(2)TCP同部位(SYN)置1,TCP重置位(RST)置1的數據包較多;(3)產生大量的TCP或UDP會話,且這些會話的特征非常相似;(4)掃描主機會采用連續(xù)端口或固定端口嘗試與目標主機連接;(5)會出現大量ICMP端口不達消息。
3.2 拒絕服務攻擊診斷及定位
拒絕服務攻擊是黑客常用的攻擊手段之一,目的是使目標主機停止提供服務。通常,拒絕服務攻擊分為針對網絡帶寬的消耗、連接的消耗、資源的消耗三種[6],攻擊過程中數據包的特征有幾種。
(1)帶寬消耗型——網絡流量會明顯變大,通過消耗網絡帶寬達到拒絕服務的效果。
(2)連接消耗型——通常會產生大量的TCP會話連接,通過占滿網絡會話數量達到拒絕服務的目的。
(3)資源消耗型——通常網絡流量變化不明顯,通過發(fā)送異常數據對服務器進行高級攻擊,以消耗服務器資源,達到拒絕服務攻擊的效果。
3.3 木馬攻擊診斷及定位
木馬多采用反彈方式由內向外進行連接,以繞開防火墻等傳統(tǒng)安全設備和技術的檢測,隱蔽性更強[7]。該類攻擊的數據包具有幾個特征。
(1)解析惡意動態(tài)域名。木馬在進行連接時首先通過查詢動態(tài)域名、Blog等形式,找到控制端的IP地址與服務端口[7]。
(2)長連接會話。通常木馬連接以TCP長連接的方式進行通訊,客戶端或主控端定時發(fā)送心跳包,保持TCP會話。
(3)高端口連接。通常木馬通過高端口的方式與主控端進行連接。
(4)客戶端主動發(fā)起連接。為躲避安全設備檢測,木馬主要通過反彈上線方式,由客戶端主動發(fā)送TCP同步包(SYN)建立會話。
4 網絡攻擊診斷定位實例
4.1 HTTP慢速拒絕服務攻擊
4.1.1 故障現象
網站業(yè)務對互聯(lián)網提供Web服務,在沒有任何征兆的情況下所有用戶突然不能訪問Web應用。
4.1.2 攻擊診斷及定位
a) 通過重啟服務器及Web服務,能夠恢復正常,但幾分鐘后網站依然不能訪問。
b) 懷疑防火墻等安全設備攔截了用戶訪問,但查詢所有策略并未發(fā)現異常,可能不是安全設備造成的影響。
c) 通過網絡管理軟件等手段進行監(jiān)測,未發(fā)現大規(guī)模流量突發(fā)。
d) 通過端口鏡像方式接入數據包分析設備,發(fā)現存在外部地址針對網站的慢速拒絕服務攻擊。
e) 通過分析數據包,發(fā)現攻擊者通過HTTP POST方法向網站目錄上傳文件,HTTP請求頭部Content-Length字段宣告要上傳10000字節(jié)數據,但攻擊者每間隔幾秒才向服務器發(fā)送1個或幾個字節(jié)有效數據;如此,無論網站是否支持向根目錄POST上傳數據,服務器都需先占用10000字節(jié)資源用于接收攻擊上傳的數據,大量類似的會話導致服務器無法正常訪問,形成應用層拒絕服務攻擊。
4.1.3 問題解決
通過攔截攻擊者IP地址的方式,同時通過Web應用防火墻和其他防護設備阻斷所有向網站“POST /”的HTTP請求,阻止類似特征的攻擊行為。
4.1.4 慢速拒絕服務攻擊數據包特征分析
HTTP慢速拒絕服務攻擊有別于帶寬消耗類攻擊,難以通過常規(guī)手段診斷定位。分析該類攻擊,其數據包具有幾個特征。
a) 攻擊主機會短時間內與網站建立了幾百個甚至更多的TCP會話,連接會話數量明顯高于正常訪問,但不足以造成服務器連接耗盡。
b) 攻擊主機基于HTTP請求使用POST方法,聲稱要向網站的目錄上傳數據。
c) 在請求頭部Content-Length字段聲稱需要傳輸大量數據,如10000字節(jié)。
d) 建立連接后每隔幾秒才向服務器發(fā)送1個或幾個字節(jié)有效數據。
4.2 DOS木馬攻擊
4.2.1 故障現象
網絡經常不定時出現訪問互聯(lián)網緩慢的情況,嚴重時不能訪問網絡。
4.2.2 攻擊診斷及定位
a) 此類情況通常是網絡內主機與互聯(lián)網主機存在大流量的數據傳輸,擁塞互聯(lián)網出口帶寬導致。
b) 通過數據包分析發(fā)現,問題發(fā)生時段互聯(lián)網出口上行帶寬利用率達到100%,初步判斷流量突發(fā)的原因是內部服務器與互聯(lián)網的一個地址產生了大流量數據傳輸。
c) 深入分析數據包,發(fā)現該服務器在對互聯(lián)網地址發(fā)送大量TCP同步包(SYN),頻率非常高,并且TCP同步包(SYN)中帶有填充數據,由于TCP同步包(SYN)是TCP/IP建立連接時使用的握手同步數據包,不應包含任何應用層數據,但分析發(fā)現該數據包中含有HTTP數據,且填充內容全為0,說明這些數據包為明顯的偽造數據包。
d) 再對流量突增之前時段的可疑TCP會話進行深入分析,發(fā)現木馬主控端地址;該服務器會主動向主控端地址的TCP801、803、888等多個端口發(fā)起TCP請求,建立TCP連接后長時間保持會話,該服務器會定期發(fā)送1字節(jié)的數據保持連接,并且該服務器主動向主控端發(fā)送本機的系統(tǒng)信息、內存、CPU及網卡信息。
e) 經過一段時間的保持會話,主控端向該服務器發(fā)送了84字節(jié)的數據,通過數據流還原可以看到內容為隨后被DOS攻擊的IP地址,說明這個數據包是攻擊者向該服務器發(fā)送的攻擊指令,服務器收到指令后會向目標發(fā)送大量偽造數據包進行DOS攻擊。訪問互聯(lián)網緩慢正是由于大規(guī)模流量造成互聯(lián)網出口帶寬被占滿而導致。
4.2.3 問題解決
根據數據包分析結果,定位該服務器,對其進行斷網隔離、查殺惡意程序處理,網絡隨即恢復正常。
4.2.4 DOS木馬攻擊數據包特征分析
分析該類攻擊,其數據包具有幾個特征。
a) 感染DOS木馬主機在工作時會產生大量數據傳輸。
b) 傳輸的數據包為偽造的TCP同步包(SYN)。
c) 傳輸頻率非常高。
在主控端沒有發(fā)送攻擊指令時,目標主機不會占用太多帶寬,此時分析難度較大,可通過幾個特征判斷。
a) 目標主機會通過TCP不知名端口主動發(fā)起TCP會話請求。
b) 目標主機與主控端保持長連接會話。
c) 目標主機會向主控端發(fā)送本機信息。
d) 主控端需要發(fā)起攻擊時會通過傳輸攻擊指令數據包,控制目標主機發(fā)起攻擊。
4.3 網站SQL注入攻擊
4.3.1 問題描述
網站發(fā)生內部信息泄漏,造成敏感數據流出,懷疑存在網絡攻擊。
4.3.2 攻擊診斷及定位
a) 通過網絡管理軟件監(jiān)測服務及服務器運行狀態(tài),發(fā)現流量趨勢平穩(wěn),運行狀態(tài)良好,不存在大規(guī)模拒絕服務攻擊及其他攻擊行為。
b) 通過數據包分析發(fā)現某互聯(lián)網主機頻繁訪問網站,根據訪問速率判斷明顯不是人工手動操作。再對數據包進行深入分析,發(fā)現該互聯(lián)網主機頻繁通過POST方法向網站的一個URL地址發(fā)送數據,該URL下某參數存在通用型注入漏洞,攻擊者可通過該參數對網站進行SQL注入。
c) 對數據包解碼,發(fā)現服務器對此URL的回應多為代碼為500的HTTP 錯誤,說明網站確實存在。
d) 詳細解碼數據包,發(fā)現攻擊者通過該參數成功注入,連接了網站數據庫,且下載了數據庫的關鍵數據。
4.3.3 問題解決
通過對攻擊主機的IP進行攔截,修復網站應用漏洞,增加對異常SQL語句的過濾,成功解決了SQL注入攻擊問題。
4.3.4 POST類型SQL注入攻擊數據包特征分析
該類攻擊將注入數據放置在HTML HEADER內提交,數據在URL中看不到,并且POST傳輸數據較多,通過常規(guī)的URL分析手段難以診斷問題。分析該類攻擊,其數據包具有幾個特征。
a) 大量以POST方式訪問網站的某一(或多個)URL。
b) 攻擊主機與網站短時間內會建立大量TCP會話連接。
c) 解碼數據包,查看POST內容,發(fā)現每個數據包提交內容的某一(或多個)參數值不停變化,并且內容帶有明顯的SQL注入特征。
d) 存在大量數據庫報錯及HTTP 500錯誤響應。
e) 通過數據包分析,檢測數據包內容中是否包含數據庫名、表名等關鍵信息,說明攻擊者已通過SQL注入方式竊取了網站的數據。
5 結束語
本文通過理論結合實際的方式詳細介紹了網絡數據包分析技術在網絡攻擊診斷定位中的實際作用。該方法通過捕獲數據包并對其進行分析,以診斷定位網絡攻擊?;谠摲椒ǎ蓭椭W絡管理者快速發(fā)現各種網絡攻擊,快速定位網絡攻擊源及攻擊手段,并且能夠解決常規(guī)分析手段難以分析的疑難攻擊問題,對一些隱藏深、危害大的網絡攻擊取得很好的實際效果,更好的保障網絡及應用的安全。
參考文獻
[1] 張玉清.網絡攻擊與防御技術[M].北京: 清華大學出版社,2011.
[2] 呂雪峰,彭文波,宋澤宇. 網絡分析技術揭秘[M].北京:機械工業(yè)出版社,2012.
[3] 趙新輝,李祥.捕獲網絡數據包的方法[J].計算機應用研究,2004,(8): 242-255.
[4] W.Richard Stevens.TCP/IP ILLustrated Volume 1: The Protocols[M].Beijing: Mechanical Industry Press,2000.
[5] 張鴻久.網絡分析在電力企業(yè)的應用研究 [D].河北:網絡分析在電力企業(yè)的應用研究,2007.
[6] 鮑旭華. 破壞之王-DDoS攻擊與防范深度剖析[M]. 北京:機械工業(yè)出版社,2014.
[7] 科來軟件.疑難網絡故障分析案例集2012[EB/OL].北京:百度文庫,2012 [2016-03-02].http://wenku.baidu.com.
作者簡介:
馬之力(1983-),男,甘肅武山人,工程師,從事電力信息化建設及安全技術工作。
智勇(1972-),男,陜西大荔人,高級工程師,從事電力系統(tǒng)自動化及繼電保護管理與技術研究工作。
張馴(1982-),男,江蘇揚州人,工程師,從事電力信息通信管理及安全技術工作。
閆曉斌(1976-),男,甘肅平涼人,高級工程師,從事電力信息化建設及管理工作。
黨倩(1981-),女,陜西韓城人,工程師,從事電力信息化管理與運維工作。
袁暉(1989-),男,甘肅蘭州人,助理工程師,從事電力信息通信建設及安全技術工作。
朱小琴(1990-),女,甘肅臨洮人,工程師,從事電力信息通信運維檢測技術工作。