張冰冰
(黑龍江省電力醫(yī)院 微機(jī)室,黑龍江 哈爾濱 150090)
用于感知局域網(wǎng)攻擊的離散事件系統(tǒng)研究
張冰冰
(黑龍江省電力醫(yī)院 微機(jī)室,黑龍江 哈爾濱 150090)
由于地址解析協(xié)議(ARP)是無狀態(tài)協(xié)議,且由主機(jī)發(fā)送的任何IP-MAC配對時在未經(jīng)驗證的情況下被接受,由此可能被局域網(wǎng)(LAN)中的惡意主機(jī)利用。針對該問題,文中提出了用于LAN攻擊的入侵檢測系統(tǒng)的離散事件系統(tǒng)。通過在ARP分組序列的基礎(chǔ)上,在正常和攻擊狀態(tài)下為LAN建立離散事件系統(tǒng)模型;使用主動ARP檢測以在正常和攻擊狀態(tài)下創(chuàng)建不同的ARP事件;隨后,構(gòu)建離散事件系統(tǒng)檢測器,根據(jù)檢測到的ARP事件確定LAN是否處于正?;蚬魻顟B(tài)。文中所提出的方案在測試平臺中被成功實現(xiàn)。
局域網(wǎng)(LAN)攻擊;離散事件系統(tǒng);地址解析協(xié)議(ARP);網(wǎng)絡(luò)安全
基于LAN特定攻擊的任何計算機(jī)安全威脅,均來自LAN中的受損或惡意主機(jī)。此類大多數(shù)的攻擊涉及的基本步驟包括:由于偽造的IP-MAC對而導(dǎo)致的緩存中毒,這可能導(dǎo)致其他攻擊,即MiTM、拒絕服務(wù)等[1-3];IP和MAC地址之間的動態(tài)綁定(因IP是動態(tài)的),由地址解析協(xié)議(ARP)完成;ARP負(fù)責(zé)查找給定IP地址的MAC地址,數(shù)據(jù)鏈路層使用發(fā)送分組的目的地機(jī)器MAC地址。在文獻(xiàn)[4~9]中提出了諸多解決方案來檢測/減輕和防止ARP攻擊。
本文提出了用于檢測ARP相關(guān)攻擊的基于離散事件系統(tǒng)(DES)的網(wǎng)絡(luò)入侵檢測系統(tǒng)(IDS)。DES的特征在于離散狀態(tài)空間和一些事件驅(qū)動的動態(tài),其已廣泛用于大型系統(tǒng)如化學(xué)反應(yīng)室、核反應(yīng)堆等的故障檢測和診斷?;舅枷胧窃谡l件下與在每個故障條件下為系統(tǒng)開發(fā)DES模型。隨后,設(shè)計稱為診斷器(或檢測器)的狀態(tài)估計器,用于觀察由系統(tǒng)產(chǎn)生的事件序列,從而決定系統(tǒng)所遍歷的狀態(tài)是否對應(yīng)于正常或有故障的DES模型。這一想法已用于開發(fā)基于主機(jī)的IDS[10-14],其中正常條件下的系統(tǒng)調(diào)用序列包括正常模型,且在受損條件下的序列包括失敗(攻擊)模型。因此,DES檢測器充當(dāng)主機(jī)IDS。在文獻(xiàn)[15]中使用相同的想法對網(wǎng)絡(luò)級IDS進(jìn)行了初步嘗試,理論上說明了如何應(yīng)用DES以檢測一種類型的ARP攻擊,即響應(yīng)欺騙。本文的目的是設(shè)計與實現(xiàn)滿足ARP攻擊檢測器所有期望特性的基于DES的網(wǎng)絡(luò)IDS。
接著呈現(xiàn)針對ARP相關(guān)攻擊的基于DES的入侵檢測方案,并對LAN進(jìn)行以下假設(shè):(1)非受侵害的主機(jī)將在特定時間間隔內(nèi)發(fā)送一個響應(yīng)ARP請求;(2)IDS在具有固定IP的專用可信計算機(jī)上運行;(3)在交換機(jī)上啟用端口鏡像,以便IDS具有來自所有端口的全部傳出與傳入數(shù)據(jù)包的副本。
1.1 主動探測技術(shù)
探測技術(shù)有ARP REQUEST-HANDLER()和ARP RESPONSE-HANDLER()兩個主要模塊。分別在算法1和算法2中詳細(xì)說明。算法1處理網(wǎng)絡(luò)中的ARP請求分組,該算法被確定如下:
算法1 ARP請求處理器。
輸入 RQP-ARP請求數(shù)據(jù)包。
輸出 通知接收RQP,發(fā)送ARP探測請求和檢測到的DTD,更新AUTHT和SPOOFT
IF(RQP格式錯誤)OR(RQP是單播)“狀態(tài)異?!鼻褽XIT
IF(RQPIPS=IP(IDS))AND(RQPMACS=MAC(IDS))EXIT
IF(RQPIPS=AUTHTIPS[i]ANDRQPMACS=AUTHTMACS[i],對于一些i,1≤i≤AUTHTMAX)“狀態(tài)是真實的”;在AUTHT中添加{RQPIPS、RQPMACS、RQPIPD、…、接收時間};通知RQP和DTD;EXIT
IF(RQPIPS=AUTHTIPS[i],對于一些i,1≤i≤AUTHTMAX)AND(RQPMACS!=AUTHTMACS[i])“狀態(tài)為欺騙”;在SPOOFT中添加{RQPIPS、RQPMACS、RQPIPD、…、接收時間};通知RQP和DTD;EXIT
IF(RQPIPS=SPOOFTIPS[i]AND RQPMACS=SPOOFTMACS[i],對于一些i,1≤i≤SPOOFTMAX)“狀態(tài)為欺騙”;在SPOOFT中添加{RQPIPS、RQPMACS、RQPIPD、…、接收時間};通知RQP和DTD;EXIT
ELSE(/*RQPIPS==RQPIPD或上述條件中沒有*/)
通知接收RQP;向IDS的RQPIPS發(fā)送ARP探測請求PRQP;通知發(fā)送ARP探測請求PRQP。
算法2是ARP響應(yīng)處理程序,且該算法被確定如下:
算法2 ARP響應(yīng)處理器。
輸入 RSP - ARP響應(yīng)數(shù)據(jù)包。
輸出 RSP的精確接收,ARP探測響應(yīng)PRSP,發(fā)送ARP探測請求PRQP和檢測到的DTD,更新AUTHT和SPOOFT
IF(RSP格式錯誤)“狀態(tài)異?!鼻褽XIT
IF(RSPIPD=IP(IDS))AND(RSPMACD=MAC(IDS))通知接收PRSP;EXIT
IF(RSPIPS=AUTHIPS[i] AND RSPMACS=AUTHMACS[i],對于一些i,1≤i≤AUTHTMAX);“狀態(tài)是真實的”;在AUTHT中添加{RSPIPS、RSPMACS、RSPIPD、RSPMACD、接收時間};通知RSP和DTD;EXIT
IF(RQPIPS=AUTHIPS[i],對于一些i,1≤i≤AUTHMAX)AND(RQPMACS!= AUTHMACS[i])“狀態(tài)為欺騙”;在SPOOFT中添加{ RSPIPS、RSPMACS、RSPIPD、RSPMACD、接收時間} 通知RSP和DTD;EXIT
IF(RQPIPS=SPOOFTIPS[i] AND RQPMACS=SPOOFTMACS[i],對于一些i,1≤i≤SPOOFTMAX)“狀態(tài)為欺騙”;在SPOOFT中添加{ RSPIPS、RSPMACS、RSPIPD、RSPMACD、接收時間} 通知RSP和DTD;EXIT
ELSE(/ * RSPIPS== RSPIPD或上述條件中沒有*/)
通知接收RSP;向IDS的RSPIPS發(fā)送ARP探測請求PRQP;通知發(fā)送ARP探測請求PRQP。
1.2 示例
使用示例來說明通過算法2對欺騙響應(yīng)分組的處理。此外,該示例還突出了在欺騙與正常的情況下ARP分組序列的差異。此處,網(wǎng)絡(luò)具有4個主機(jī)A、B、D和E;E為IDS;D是攻擊者。機(jī)器A、B、D和E分別分配有IP地址10.0.1.1、10.0.1.2、10.0.1.4和10.0.1.5。主機(jī)A、B、D和E的MAC地址是08:4D:00:7D:C1、08:4D:00:7D:C2、08:4D:00:7D:C4和08:4D:7D:C5。在交換機(jī)啟用端口鏡像,以便E有所有端口的所有輸出與輸入數(shù)據(jù)包的副本。此外,E具有網(wǎng)絡(luò)接口,以單獨發(fā)送ARP探測和接收ARP探測答復(fù)。
圖1示出了當(dāng)攻擊者D向主機(jī)A發(fā)送作為“IP(B)-MAC(D)”的欺騙性答復(fù)和其驗證(使用主動探測)時在LAN中的分組序列(用分組序列號表示)。作為分組序列1,D發(fā)送ARP響應(yīng)RSP到A告訴B的IP與D的MAC相關(guān)聯(lián)。在tcpdump(用于觀看對接口可見的分組實用程序之一)中查看該ARP響應(yīng)對話:08:4D:00:7D:C4 08:4D:00:7D:C1 60:arp reply 10.0.1.2 is-at 08:4D:00:7D:C4。
圖1 欺騙性答復(fù)的示例
由于ARP是無狀態(tài)協(xié)議,在接收到來自D的響應(yīng)之后,A用IP-MAC對更新其緩存為IP(B)-MAC(D)。具有更新A的ARP緩存,如表1所示。
表1 欺騙性答復(fù)下機(jī)器A的APR緩存
1.3 DES模型
用于在正常和攻擊情形下,表示LAN的DES模型為六元組:(Σ、S、S0、V、C、)。其中,Σ是事件集合;S是狀態(tài)集合;S0?S是一組初始狀態(tài);V是模型變量的集合;C是時鐘變量的集合;則是轉(zhuǎn)變的集合。圖2所示為正常條件下LAN的DES模型。圖3(a)為在ARP請求欺騙攻擊下的LAN的DES模型,圖3(b)用于ARP響應(yīng)欺騙攻擊。
圖2 正常條件下LAN的DES模型
圖3 請求欺騙和響應(yīng)欺騙下LNA的DES模型
1.4 檢測器
在DES模型的開發(fā)之后來設(shè)計檢測器,其可識別給定的事件序列是否對應(yīng)于正?;蚬羟樾?。檢測器基本上是一種模型的狀態(tài)估計器,其使用系統(tǒng)的事件保持更新估計。最后,當(dāng)?shù)竭_(dá)(檢測器的)狀態(tài)的估計包括來自攻擊模型的狀態(tài)時,檢測器宣布攻擊。一旦確定正?;蚱垓_,正在處理的分組的細(xì)節(jié)被記錄在已認(rèn)證或欺騙表中。檢測器的算法為:
算法3 用于DES模型的檢測器的算法。
輸入 用于正常、請求欺騙和響應(yīng)欺騙的DES模型。
輸出 請求欺騙和響應(yīng)欺騙攻擊的檢測器
開始
z1←S0;
Z←z1;
A←φ;
對于所有的z∈Z,其是不正常的或攻擊Do {
找到所有等效類的集合Az
FOR ALL a∈Az {
z+={s|s是τ∈a的目的狀態(tài)};
Z=Z∪{z+};
IF z+是正常(攻擊),{E←σ,σ是模型轉(zhuǎn)變τ∈a的事件,其中a是從z1發(fā)出的轉(zhuǎn)變,添加EIPS、EMACS、EIPD、EMACD和E的接收時間到AUTHT(若z+是正常的)否則到SPOOFT}
A =A∪{a};
} /*對于所有a∈Az*/
} /*對于不確定的z∈Z*/
END
為實驗創(chuàng)建的測試臺由運行不同操作系統(tǒng)的5臺機(jī)器組成。機(jī)器按字母順序命名,范圍從A~E。機(jī)器A~E具有以下操作系統(tǒng):Windows XP、Ubuntu、Windows 2000、Backtrack 4和Backtrack 4。具有Backtrack 4的機(jī)器D是攻擊者,機(jī)器E具有檢測器(即,IDS)。這些機(jī)器在LAN中與具有端口鏡像設(shè)施的CISCO觸媒3560G系列開關(guān)連接。測試臺的結(jié)構(gòu),如圖4所示。E有兩個LAN卡:一個用于通過端口鏡像在LAN中收集數(shù)據(jù),第二個專用于發(fā)送/接收ARP探測請求/應(yīng)答??梢宰⒁獾剑诙ǖ腎P-MAC對應(yīng)于IDS的IP-MAC。攻擊生成工具Ettercap、Cain和Abel部署在機(jī)器D中。
圖4 測試臺結(jié)構(gòu)
圖5和圖6顯示了在測試臺中主機(jī)啟動前100 s期間為4個場景生成的ARP通信量。在t和t+ 1 s之間在LAN中產(chǎn)生的ARP分組數(shù)目相對于第(t+ 1)秒繪制。第一種情況是在沒有IDS的情況下正常操作;第二種情況是IDS正在運行,且在網(wǎng)絡(luò)中沒有生成攻擊。從圖5可觀察到,IDS運行的ARP通信量比沒有IDS的ARP通信量稍多,主要是在前幾秒鐘。這是因為在正常情況下,當(dāng)網(wǎng)絡(luò)通信量中第一次發(fā)生時,需要發(fā)送活動來探測一次以驗證IP-MAC對。為ARP緩存的周期性更新發(fā)送的所有ARP請求/響應(yīng)保持其IP-MAC配對(與在啟動時發(fā)送的相同);對于已驗證的對,則無需探測;第三種情況是將100個欺騙的IP-MAC對注入到LAN中,且IDS不運行;第四種情況是當(dāng)相同的100個欺騙的IP-MAC對被注入到具有IDS運行的LAN中。從圖6可以看到,大多數(shù)時間由所提出的IDS產(chǎn)生了一些額外的通信量。
圖5 正常條件下ARP通信量
圖6 攻擊條件下ARP通信量
本文提出了用于檢測ARP請求和響應(yīng)欺騙的基于DES檢測器的IDS。在文中示出了基于DES的IDS如何檢測一個接近完全類別的ARP攻擊,同時保持地址解析協(xié)議的標(biāo)準(zhǔn)。本文主要基于軟件方法,僅需要具有端口鏡像設(shè)施的交換機(jī)作為附加硬件。本方案基于DES的故障檢測理論,在基本的DES框架中增加了新的參數(shù),即時間和模型變量,用于ARP的高效建模。最后,設(shè)計的檢測器被實現(xiàn)為用于檢測ARP攻擊的IDS,并將IDS部署在測試平臺中。結(jié)果表明,成功檢測到大量的ARP相關(guān)攻擊,即畸形數(shù)據(jù)包、請求欺騙、響應(yīng)欺騙以及拒絕服務(wù)等。
[1] Lu J,Wei Y,Kim J, et al.The higher-order meet-in-the-middle attack and its application to the Camellia block cipher[J].Theoretical Computer Science,2012,527(3):102-122.
[2] Lynch K M.Dynamic nonprehensile manipulation:controllability, planning, and experiments[J]. International Journal of Robotics Research,2010,18(1):64-92.
[3] Oppliger R,Rytz R,Holderegger T.Internet banking: client-side attacks and protection mechanisms[J]. Computer, 2009,42(6):27-33.
[4] Abad C L,Bonilla R I.An analysis on the schemes for detecting and preventing ARP cache poisoning attacks[C].Grace:IEEE International Conference on Distributed Computing Systems,2007.
[5] Hsiao H W, Lin C S, Chang S Y.Constructing an ARP attack detection system with SNMP traffic data mining[C].Zhengzhou:ACM International Conference on Electronic Commerce,2009.
[6] Roesch M.Snort—lightweight intrusion detection for networks[C].Boston:USENIX Conference on System Administration,1999.
[7] Lootah W, Enck W, Mcdaniel P. TARP: ticket-based address resolution protocol[J]. Computer Networks, 2007, 51(15):4322-4337.
[8] Ramachandran V,Nandi S.Detecting ARP spoofing: an active technique[C].Havvi:International Conference on Information Systems Security,2005.
[9] Gouda M G, Huang C T.A secure address resolution protocol[J].Computer Networks,2003,41(1):57-71.
[10] Cheng K T, Krishnakumar A S. Automatic functional test generation using the extended finite state machine model[C].SA,USA:IEEE International Design Automation Conference,1993.
[11] Alur R, Dill D L.A theory of timed automata[J].Theoretical Computer Science,1993(5):183-235.
[12] Sekar R,Bendre M,Dhurjati D,et al.A fast automaton-based method for detecting anomalous program behaviors[J].Symposium on Security and Privacy,2001(3):144-155.
[13] Whittaker S J,Zulkernine M,Rudie K.Towards incorporating discrete-event systems in secure software development[C].Lsvgas:IEEE International Conference on Availability, Reliability and Security, 2008.
[14] Trabelsi Z,Shuaib K.Manin the middle intrusion detection[J].Globecom,2006(4):1-6.
[15] Hubballi H,Biswas S,Roopa S,et al.A DES approach to intrusion detection system for ARP spoofing attacks[C].Canada:IEEE Mediterranean Conference on Control and Automation,2010.
Research on Discrete Event System for LAN Attack
ZHANG Bingbing
(Computer Room,Heilongjiang Electric Power Hospital,Harbin 150090, China)
Since the Address Resolution Protocol (ARP) is a stateless protocol and any IP-MAC pair sent by the host is accepted without authentication, it may be exploited by malicious hosts in a local area network. To solve this problem, a discrete event system for intrusion detection system for LAN attack is proposed in this paper. Using the active ARP detection to create different ARP events in the normal and attack state; and then constructing the discrete event system detector to detect the ARP events in the normal and attack state; Determine whether the LAN is in a normal or attacked state based on the detected ARP events. The scheme proposed in this paper is successfully implemented in the test platform.
local area network attack; discrete event systems; address resolution protocol; network security
2016- 11- 21
張冰冰(1983-),女,工程師。研究方向:計算機(jī)網(wǎng)絡(luò)。
10.16180/j.cnki.issn1007-7820.2017.09.046
TN915.08;TP393.08
A
1007-7820(2017)09-169-04