?

采用控制流監控的Cisco IOS指針攻擊檢測方法

2015-03-07 02:14劉勝利鄒睿彭飛武東英肖達
西安交通大學學報 2015年12期
關鍵詞:控制流指針漏洞

劉勝利,鄒睿,彭飛,武東英,肖達

(中國人民解放軍信息工程大學數學工程與先進計算國家重點實驗室, 450000, 鄭州)

?

采用控制流監控的Cisco IOS指針攻擊檢測方法

劉勝利,鄒睿,彭飛,武東英,肖達

(中國人民解放軍信息工程大學數學工程與先進計算國家重點實驗室, 450000, 鄭州)

針對當前Cisco IOS(internetwork operating system)漏洞攻擊檢測方法檢測效率低的問題,提出了一種采用控制流監控來判定Cisco IOS指針攻擊的方法。該方法通過靜態分析和動態跟蹤相結合的方式對Cisco IOS中不同類別的控制流分別構造合法轉移地址集合(legal transfer address collection,LTAC),并在發生控制流轉移時將轉移地址在LTAC之外的控制流判定為攻擊,同時捕獲異??刂屏鬓D移的詳細信息。實驗結果表明:該方法可以準確地捕獲針對Cisco IOS的指針攻擊,支持對攻擊過程的分析,與現有的Cisco IOS漏洞攻擊檢測方法相比,具有較高的檢測效率,能夠為網絡安全性的提升提供幫助。

Cisco IOS;指針攻擊;控制流監控;網絡安全;攻擊檢測

路由器作為網絡基礎設施的重要組成部分,其安全性影響著整個互聯網的安全。目前,生產路由器的公司主要有Cisco、華為、Juniper等。IDC 2014年公布的報告中,Cisco路由器占到了全球互聯網路由器市場的62.9%的份額[1],居于首位。

Cisco路由器中運行的是Cisco公司為其路由交換設備開發的操作系統Cisco IOS,用于管理路由器的硬件資源以及實現各種網絡服務。目前,在Cisco路由器脆弱性利用方面,Linder在文獻[2]中完整地分析了當時在Cisco IOS中發現的一些安全問題,同時給出了緩沖區溢出漏洞利用的一些方法。Lynn在文獻[3]中對Cisco IOS的體系結構進行了分析,探討了Cisco IOS任意代碼執行的可行性。Muniz在文獻[4]中介紹了使用IDA輔助進行IOS逆向分析的腳本,并且給出了一種實現IOS rootkit注入的方法,并稱該方法可以達到高度的隱蔽性。Linder在文獻[5]中對Cisco IOS的注入方法進行了闡述,同時分析了其安全結構。Muniz在文獻[6]中提出了一種基于虛擬化的Fuzzing方法,用于Cisco IOS漏洞的挖掘和調試分析。在安全性檢測方面,Linder在文獻[7]中對Cisco IOS的取證工具CIR(Cisco incidence response)[8]作了介紹,該工具通過驗證IOS映像的完整性和路由器運行時的狀態來判斷IOS是否受到了安全威脅,由于Cisco IOS映像完整性很容易被突破[9],因此,其檢測效果較差。陳立根等提出了一種基于動態污點分析的Cisco IOS漏洞攻擊檢測方法,通過將內存讀寫和指針污染作為攻擊的判定規則來檢測攻擊[10],然而正常數據包頻繁的內存讀寫操作導致誤報率較高,同時檢測過程中的時間消耗較大。目前,針對Cisco路由器的脆弱性利用的方法不斷增多,同時對于其安全性檢測的方法十分有限,因此需要引入Cisco IOS攻擊檢測方法,及時發現路由器遭受的入侵。

1 相關工作

在有源碼的指針攻擊檢測方面,gcc支持在編譯過程中對函數指針的保護,其保護的思想是通過判定canary word[11]是否被修改來判定攻擊。FPValidator[12]通過在編譯器中添加函數類型檢查模塊來判定目標程序是否受到了攻擊,檢測效率較高,但是其需要程序源碼的支持,不支持二進制程序的檢測。

目前,在二進制代碼漏洞攻擊檢測方面主要有動態污點分析[13]和控制流完整性檢查[14]兩種方法。動態污點分析技術通過將網絡數據包標記為污點源,在指令的執行過程中實現污點屬性的傳播,并按照一定的策略實現對攻擊行為的檢測,由于污點分析本身的局限性,不可避免的存在一定的誤報率和漏報率;控制流完整性檢查的方法通過對控制流的轉移地址進行安全校驗來判定攻擊,一般需要對目標程序進行分析來構造合法的轉移地址集合。

本文深入分析了Cisco IOS中的分支轉移過程,提出了一種采用控制流監控的Cisco IOS指針攻擊檢測方法,該方法通過監控控制流轉移地址的合法性來判定攻擊?;赿ynamips模擬器[15],設計實現了Cisco IOS指針攻擊檢測系統(Cisco IOS detection system,CIDS),支持對函數返回和間接跳轉控制流的合法性判定,該系統具有不需要源碼,檢測結果準確的優點。

2 解決思路

目前,由于Cisco IOS內存結構的特殊性,在Cisco IOS的漏洞利用過程中,針對指針攻擊主要是基于“代碼重用技術”實現的[5]。下面是一個Cisco IOS中存在的漏洞利用實例,通過對其進行跟蹤分析之后發現其控制流的轉移過程,如圖1所示,其中存在異常的控制流轉移,包括異常的返回地址和異常的間接跳轉控制流轉移。

如圖1所示,程序在地址a處調用了函數func,其正常的返回地址應該是地址b。由于在func執行的過程中導致了系統棧出現了溢出,使得返回地址(保存在棧中的LR寄存器的值)被覆蓋為地址x。在func執行完畢進行正常的函數返回時,指令的執行地址被修改為地址x,此時出現了異常函數返回控制流的轉移,同時,在地址x處的指令將系統棧中的地址p(shellcode地址)保存到了ctr寄存器中,并在地址y處實現了異常間接跳轉控制流的轉移,導致shellcode成功執行。

圖1 Cisco IOS指針攻擊示例

從對上述Cisco IOS緩沖溢出漏洞利用過程中的控制流轉移的分析可知,控制流的轉移是進行攻擊行為檢測的入手點,本文就是基于對異??刂屏鞯谋O控識別來判定攻擊是否發生的。異??刂屏鬓D移是漏洞攻擊過程中必不可少的過程,從控制流轉移的角度出發來對漏洞攻擊行為進行檢測可以從根本上判定目標程序是否受到攻擊。

本文進行IOS指針攻擊檢測主要是基于控制流完整性(control flow integrity,CFI)檢查的思想進行的??刂屏魍暾詸z查的方法通過限定控制流轉移的范圍,把目的地址在合法地址集合之外的控制流判定為攻擊。fpcheck[16]將二進制程序的代碼段作為間接跳轉控制流的合法轉移地址集合,并不適用于IOS的指針攻擊檢測,本文借鑒了fpcheck的檢測思想,將數據偏移量交叉引用代碼[17]的入口地址和函數入口點作為間接跳轉控制流的合法轉移地址集合,實現了對函數調用返回地址和間接跳轉等控制流的監控。結合Cisco IOS本身的特點,提出的Cisco IOS指針攻擊檢測框架如圖2所示,主要包括兩個階段:在靜態分析與動態跟蹤階段,通過逆向二進制的IOS文件,定位出函數的入口點和數據偏移量交叉引用代碼的入口地址,來構造間接跳轉指令的合法轉移地址集合;在動態檢測階段,實現對控制流轉移合法性的判定。

圖2 Cisco IOS指針攻擊檢測框架

3 Cisco IOS指針攻擊檢測方法

3.1 形式化描述

在進行Cisco IOS指針攻擊檢測框架的介紹之前,本文給出相關的形式化定義。同時,下文的指令均以PowerPC指令集為例進行分析。

定義1 控制流CF(control flow)是由間接跳轉指令indir_branch和返回指令return組成的。在Cisco IOS中,間接跳轉指令主要包括bctr、bctrl,返回指令有blr。

定義2 函數入口點集合F指的是Cisco IOS中所有函數(包括庫函數和普通函數)的開始地址。Cisco IOS是在Unix下經過gcc交叉編譯生成的,通過靜態分析發現Cisco IOS中的庫函數的地址和普通函數一樣是固定的,因此,本文將兩者當做普通的函數來使用。

定義3 數據偏移交叉引用代碼入口點集合K表示Cisco IOS中所有具有數據偏移交叉引用屬性的代碼段的開始地址。

定義4 跳轉表查詢函數J是查詢地址為x的間接跳轉指令對應的跳轉表的函數。其中X表示Cisco IOS中所有bctr指令的地址集合,?x∈X,Y表示地址x對應的跳轉表中地址的集合。

定義5 間接跳轉控制流轉移地址集合I表示Cisco IOS中間接跳轉控制流的合法轉移地址集合。I=B∪B′,其中B表示bctr指令的合法轉移地址集合,B′表示bctrl指令的合法轉移地址集合。

定義6 影子棧S表示在攻擊檢測過程中維護函數調用返回地址的影子棧,主要是用于判斷函數調用返回控制流的合法性。

定義7 攻擊判定規則D用于判定Cisco IOS是否受到攻擊的規則。當D=1時,表示判定攻擊存在,否則,判定攻擊不存在。

3.2 合法轉移地址集合構造

本文監控的對象主要分為間接跳轉指令和函數調用返回指令兩類。

針對函數調用返回指令,本文在對攻擊行為動態檢測的過程中維護了一個用于存儲函數返回地址的影子棧,當發生函數調用返回時,系統會判斷函數返回地址是否在影子棧中來判定攻擊。

針對間接跳轉指令,本文采用靜態分析和動態跟蹤相結合的方法來完成I的構造。對于Cisco IOS而言,I是由間接跳轉指令bctr和bctrl兩者合法的目的地址集合B和B′構成。一方面,通過對Cisco IOS逆向分析之后發現,bctr指令是用于處理switch等分支跳轉的指令,對于一個確定版本的IOS來說,bctr的目的地址處于跳轉表限定的范圍內。因此,B可以通過逆向分析的方法來構造,對跳轉表中的地址進行監控可以防止修改跳轉表的攻擊,因為Cisco IOS中的數據段是可寫的;另一方面,通過對Cisco IOS動態執行時的bctrl指令進行跟蹤分析發現,其目的地址不僅僅是F、K,也可以是間接跳轉指令的目的地址。因此,對Cisco IOS逆向分析同樣可以構造B′。

目前普遍使用的權威反匯編工具是IDA Pro,并且支持IOS逆向分析的工具只有IDA的某些版本。如前文所述,在Cisco IOS中存在兩種函數,即庫函數和一般的功能函數,它們的地址在IOS中均是靜態值。為了更好地識別函數調用的異??刂屏?對于獲取的函數信息需滿足以下要求:①獲取函數信息的地址完整性,這是構造F必須滿足的條件,只有獲取完整的函數地址,才能保證函數入口點的完整性;②獲取函數控制流圖的完整性,函數調用CFG的完整性保證了函數功能的完整性;③對函數控制轉移分析的準確性,函數調用控制流轉移的準確性保證了對異??刂屏髯R別的準確性。

在完成對Cisco IOS的逆向分析之后,可以根據匯編指令代碼以及CFG來構造B和B′,其中B的構造過程如下。

步驟1 對逆向Cisco IOS得到的匯編代碼從第一條指令開始遍歷。

步驟2 當遍歷的指令是間接跳轉指令bctr時,轉至步驟3;否則轉至步驟4。

步驟3 根據生成的CFG查詢跳轉表中的地址,并將bctr指令的地址和跳轉表中的地址集合作為一條記錄添加到B中。當本條指令不是最后一條指令時轉至步驟4;否則轉至步驟5。

步驟4 繼續遍歷下一條匯編指令,轉至步驟2。

步驟5 遍歷結束,輸出B集合。

B′同樣是通過遍歷IOS的匯編指令代碼進行構建的,查詢的是函數的入口點地址F和K,這里不再贅述。至此,間接跳轉控制流的合法轉移地址集合I構造完畢。

3.3 攻擊判定

3.3.1 函數調用返回控制流監控 Cisco IOS在運行過程中,函數調用返回時會發生控制流的轉移。正常情況下,函數返回地址是函數在被調用時壓入函數棧幀中的地址,并通過LR寄存器傳遞。本文對函數返回控制流的監控是在函數調用完畢返回之前進行的,如果發現被調用函數的返回地址非法,則判定受到了指針攻擊。在實現過程中本文借鑒了文獻[18]的檢測思想,在系統中動態維護一個用于存儲函數返回地址的影子棧,并在發生函數調用時,將返回地址存儲到影子棧中。當函數調用返回時,會檢查目的地址是否和影子棧中保存的地址相匹配,若不匹配則判定為異??刂屏鬓D移,同時記錄控制流轉移的信息??紤]到異??刂屏鬓D移時,返回地址不一定在棧頂,本文只驗證函數返回地址是否在影子棧中,系統在驗證時會從棧頂到棧底進行遍歷查找,當查找到函數的返回地址時,則將返回地址及之前遍歷過的所有地址從棧中彈出。若在影子棧中沒有發現被調用函數的返回地址,則判定此控制流為異??刂屏?。對函數調用返回控制流轉移合法性的判定規則為

(1)

式中:x表示函數調用返回指令的目的地址。D=0表示函數調用返回控制流合法;否則,判定為非法。

3.3.2 間接跳轉控制流監控 間接跳轉控制流有兩類:一類是使用bctr指令進行間接跳轉的控制流;另一類是使用bctrl指令進行間接跳轉的控制流。間接跳轉控制流bctrl的合法地址應當是屬于F和K的并集,而bctr的合法轉移地址應當屬于其跳轉表所限定的范圍。因此,本文定義間接跳轉控制流合法性的判定規則如下

(2)

式中:y表示bctr指令的轉移地址;x表示對應bctr指令的地址。D=1表示間接跳轉控制流非法,否則表示合法。

(3)

式中:y′表示bctrl間接跳轉指令執行時的目的地址。D=1表示間接跳轉控制流非法,否則說明控制流合法。

3.4 攻擊行為分析

本文在攻擊檢測過程中,當發現異??刂屏鬓D移之后,會對異??刂屏骷捌渲蟮南嚓P指令和函數調用信息進行記錄。對于指令,記錄其執行時的內存地址、操作數的值以及指令的類型;函數調用信息的記錄主要有函數的調用地址、運行時的參數值以及函數的返回值等信息。

通過對上述異??刂屏鞯霓D移信息進行分析,可以還原整個漏洞利用的過程。例如通過對緩沖區溢出攻擊過程中的異??刂屏鬟M行分析,可以了解漏洞觸發時溢出函數的地址以及修改的返回地址等信息;通過對異??刂屏麈湹姆治?可以了解攻擊者對于漏洞利用的步驟,對于網絡安全的提升具有重要意義。

4 實驗分析

為了驗證本文提出方法的有效性,基于dynamips設計實現了一個Cisco IOS指針攻擊檢測系統CIDS。為了降低系統運行的時間開銷,本文將間接跳轉指令對應的跳轉表用hash鏈表結構存儲,將F∪K中的地址用bitmap結構存儲。本文選取了IOS的公開漏洞作為樣本,從功能和性能兩個方面對CIDS進行測試。限于篇幅,在測試過程中只記錄了部分的實驗結果。實驗中CIDS系統運行于ubuntu12.04系統之上,并且支持多種型號的Cisco路由器的硬件虛擬化。

4.1 功能測試

下面以FTP MKD漏洞[19]樣本為例,對CIDS的測試過程如下。

首先,啟動CIDS加載運行Cisco 2600系列的主版本號為12.3的某款IOS,并在上面開啟FTP服務。其次,利用測試樣本向CIDS發送FTP MKD漏洞利用數據包,其中包含了shellcode漏洞利用代碼,在處理數據包的過程中會出現異??刂屏鞯霓D移。CIDS將不在合法轉移地址集合內的控制流轉移判定為攻擊,并記錄異常的控制流轉移時的上下文信息,如圖3所示。

本次攻擊的過程分為3個步驟。首先,在地址0x80a07e44處,blr函數返回地址出現異常,被修改為0x801523f8,在函數返回時,CPU會跳轉到地址0x801523f8處執行,滿足式(1)所示的報警規則。其次,在地址0x80152424處,blr函數返回地址出現異常,返回地址被修改為0x80f23c58,之后函數返回,CPU跳轉到此處執行,滿足式(1)所示的報警規則。最后,在地址0x80f23c74處,bctrl間接跳轉控制流出現異常,指令地址變成0x81e46e24,通過逆向分析發現,該地址處于Cisco IOS的數據段,即CPU跳轉執行了shellcode,滿足式(3)所示的報警規則。

圖3 異??刂屏鬓D移的信息

為了測試CIDS對Cisco IOS指針攻擊檢測的適用性,實驗中使用存在于相關版本IOS中的TFTP長文件名漏洞[20]、NHRP漏洞[21]、IP option[22]等漏洞作為測試樣本,對不同型號的路由器進行了測試。測試記錄的結果見表1。

表1 CIDS攻擊測試結果統計

由表1的測試結果可以看出,CIDS能夠準確檢測出Cisco IOS漏洞利用的攻擊行為,并可以記錄異??刂屏鞯南嚓P信息,證明了本文檢測方法的有效性。

4.2 性能測試

為了測試CIDS的檢測效率,實驗中對漏洞攻擊檢測的時間進行了測試,并與文獻[10]提出的CtaintDetect系統進行了對比分析。由于CtaintDetect和CIDS均是基于dynamips系統開發的,因此在測試過程中針對上述4個漏洞,本文對比測試了原型dynamips系統、CtaintDetect和CIDS三者在攻擊過程中的時間消耗比,如圖4所示,其中時間消耗比以dynamips原型系統的時間消耗為基準。實驗中選取了多個不同版本的IOS進行測試,針對每一個漏洞,其時間消耗比是多個樣本的平均值。

圖4 時間消耗對比測試結果

由圖4可以看出,CtaintDetect系統的時間消耗大概是dynamips原型系統的3.8倍,CIDS大概是dynamips原型系統的1.5倍,可以滿足性能方面的需求,因此與CtaintDetect系統相比,本文所提方法檢測效率更高。

從上述實驗結果可知,對于Cisco IOS的指針攻擊檢測而言,CIDS可以成功捕獲攻擊,并可以記錄攻擊過程中的異??刂屏鬓D移的信息。與利用動態污點分析技術實現的CtaintDetect系統相比,CIDS進行攻擊檢測的時間開銷較低,證明了本文所提方法的有效性,并具有較高的檢測效率,可以為網絡安全提供支撐。

4.3 局限性分析

從實驗測試的結果來看,本文提出的針對Cisco IOS指針攻擊的檢測方法具有較好的檢測效果,但是也存在一定的局限性。針對指針攻擊檢測方法,在處理間接跳轉時,是以函數入口地址以及數據偏移量交叉引用代碼入口地址為合法的轉移地址集合,當異常的間接跳轉地址屬于合法轉移地址集合,并直接通過此數據偏移量交叉引用代碼或者函數來實現惡意攻擊時,本文方法會將此次間接跳轉判定為合法的控制流轉移,此時出現漏報。然而,目前主流針對Cisco IOS的漏洞利用攻擊的目的是為了獲取系統的訪問權限,一般通過開啟遠程的vty來實現,通過單個函數或者數據偏移量交叉引用代碼很難完成上述功能,因此,此種攻擊方法很難在實際的攻擊過程中應用。

5 結 論

本文研究了Cisco IOS的指針攻擊檢測技術,提出了采用控制流監控的Cisco IOS指針攻擊檢測方法。首先對比分析了當前二進制軟件的漏洞攻擊檢測方法,對Cisco IOS的分支轉移過程進行了深入分析,介紹了本文解決思路和檢測框架。其次,實現了Cisco IOS的指針攻擊檢測技術,包括不同控制流合法轉移地址集合的構造,不同攻擊行為的判定規則的設定等。最后,實現了一個Cisco IOS指針攻擊檢測系統CIDS,通過實驗對本文所提檢測方法的有效性進行了驗證,并與CtaintDetect系統進行了對比測試。實驗結果證明了本文所提方法的有效性。CIDS支持對攻擊流程的分析,并具有較高的檢測效率,有助于提升網絡安全性。

[1] IDC. IDC’s worldwide quarterly Ethernet switch and router tracker shows record ethernet switch market size, weaker router market [EB/OL]. (2014-12-03)[2015-03-15]. http: ∥www.idc.com/getdoc.jsp?containerId=prUS25266314.

[2] LINDER F. Design and software vulnerability in embedded system [EB/OL]. (2003-04-25)[2014-08-19]. https: ∥www.blackhat.com/presentation/bh-usa-03/bh-us-03-fx.pdf.

[3] LYNN M. The holy grail: Cisco IOS shellcode and exploitation techniques [EB/OL]. (2005-11-12)[2014-10-14]. http: ∥cryptome.org/lynn-cisco.pdf.

[4] MUNIZ S. Killing the myth of Cisco IOS rootkits: DIK (Da IOS rootKit) [EB/OL]. (2008-03-26)[2014-06-19]. http: ∥www.coresecurity.com/content/killing-the-myth-cisco-ios.pdf.

[5] LINDER F. Cisco IOS router exploitation [EB/OL]. (2009-06-22)[2014-09-02]. http: ∥www.blackhat. com/presentations/bh-usa-09/Linder/BH_US_09_ Linder_RouterExploit_PAPER.pdf.

[6] MUNIZ S, ORTEGA A. Fuzzing and debugging Cisco IOS [EB/OL]. (2011-12-21)[2014-07-18]. http: ∥www.pdfpedia.com/download/13758/fuzzing-and-debugging-cisoc-ios-blackhat-europe-2011-pdf.html.

[7] LINDER F. Developments in Cisco IOS forensics [EB/OL]. (2009-08-14)[2013-03-10]. http: ∥www. blackhat.com/presentions/bn-usa-08/Linder/BH_US_08_Linder_Developments_in_IOS_Froensics.pdf.

[8] Recurity Labs. CIR [EB/OL]. (2008-02-16)[2014-01-12]. http: ∥cir. recurity.com.

[9] SU Xiaoyan, WU Dongying, XIAO Da, et al. Research on Cisco IOS security mechanisms [C]∥ Proceedings of the International Conference on Computer Science and Information Technology. Piscataway, NJ, USA: IEEE, 2012, 51: 653.

[10]陳立根, 劉勝利, 高翔, 等. 一種基于動態污點分析的Cisco IOS漏洞攻擊檢測方法 [J]. 小型微型計算機系統, 2014, 35(8): 1798-1802. CHEN Ligen, LIU Shengli, GAO Xiang, et al. A vulnerability attack detection method based on dynamic taint analysis for Cisco IOS [J]. Journal of Chinese Computer Systems, 2014, 35(8): 1798-1802.

[11]COWAN C, PU C, MAIER D, et al. StackGuard: automatic adaptive detection and prevention of buffer-overflow attacks [C]∥Proceedings of the 7th Conference on USENIX Security Symposium. Berkeley, CA, USA: USENIX, 1998: 63-78.

[12]WANG Hua, GUO Yao, CHEN Xianqqun. FPValidator: validating type equivalence of function pointers on the fly [C]∥Proceedings of the 2009 Annual Computer Security Applications Conference. Piscataway, NJ, USA: IEEE, 2009: 51-59.

[13]NEWSOME J, SONG D. Dynamic taint analysis for automatic detection, analysis, and signature generation of exploits on commodity software [C]∥Proceedings of the 12th Annual Network and Distributed System Security Symposium. Reston, VA, USA: ISOC, 2005: 1-17.

[14]ABADI M, BUDIU M, ERLINGSSON U, et al. Control-flow integrity [C]∥Proceedings of the 12th ACM Conference on Computer and Communications Security. New York, USA: ACM, 2005: 340-353.

[15]ANUZELLI G, FILES N, EMULATION P I X, et al. Dynamips/Dynagen: tutorial [EB/OL]. (2011-10-07)[2013-07-13]. http: ∥materias.fi.uba.ar/7543 /2010-02/download/DynamipsTutorial.doc.

[16]代偉, 劉智, 劉益和. 基于地址完整性檢查的函數指針攻擊檢測 [J]. 計算機應用, 2015, 35(2): 424-429. DAI Wei, LIU Zhi, LIU Yihe. Function pointer attack detection with address integrity checking [J]. Journal of Computer Applications, 2015, 35(2): 424-429.

[17]EAGLE C. The IDA pro book: the unofficial guide to the world’s most popular disassembler [M]. San Francisca, CA, USA: No Starch Press, 2011.

[18]PRAKASH A, YIN H, LIANG Z. Enforcing system-wide control flow integrity for exploit detection and diagnosis [C]∥Proceedings of the 8th ACM SIGSAC Symposium on Information, Computer and Communications Security. New York, USA: ACM, 2013: 311-322.

[19]CISCO. Multiple vulnerabilities in the IOS FTP server [EB/OL]. (2007-05-09)[2013-11-10]. http: ∥tools. cisco.com/security/center/CiscoSecurityAdvisory/cisco-sa-20070509-iosftp.

[20]CISCO. TFTP long filename vulnerability [EB/OL]. (2002-07-20)[2014-04-10]. http: ∥tools.cisco.com/security/center/CiscoSecurityAdvisory/cisco-sa-2002 0730-ios-tftp-lfn.

[21]CISCO. Cisco IOS next hop resolution protocol vulnerability [EB/OL]. (2007-08-08)[2014-05-03]. http: ∥tools.cisco.com/security/center/CiscoSecurityAdvisory/cisco-sa-20070808-nhrp.

[22]CISCO. Crafted IP option vulnerability [EB/OL]. (2007-01-24)[2014-04-18]. http: ∥tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20070124-crafted-ip-option.

(編輯 武紅江)

A Method for Detecting Cisco IOS Pointer Attack Using Control Flow Monitoring

LIU Shengli,ZOU Rui,PENG Fei,WU Dongying,XIAO Da

(State Key Laboratory of Mathematical Engineering and Advanced Computing, The PLA Information Engineering University, Zhengzhou 450000, China)

A method to detect Cisco IOS(internetwork operating system) pointer attacks using control flow monitoring is proposed to solve the problem that current methods for detecting exploit attacks have low detection efficiency. Legal transfer address collection (LTAC) is constructed for different categories of control flows through a combination of static analysis and dynamic tracking. When an event of control flow transfer occurs, the control flow with jump address out of LTAC will be determined to be an attack and the details of the exception control flow transfer can be captured. Experimental results show that the proposed method can accurately capture pointer attacks against Cisco IOS, and support the analysis of attack process. Comparisons with the current detection methods show that the proposed method has higher detection efficiency, and can help to enhance network security.

Cisco IOS; pointer attack; control flow monitoring; cyber security; attack detection

2015-04-22。

劉勝利(1973—),男,副教授。

國家科技支撐計劃資助項目(2012 BAH47B01);國家自然科學基金資助項目(61271252)。

時間:2015-11-18

10.7652/xjtuxb201512011

TP309.08

A

0253-987X(2015)12-0065-06

網絡出版地址:http:∥www.cnki.net/kcms/detail/61.1069.T.20151118.1614.002.html

猜你喜歡
控制流指針漏洞
漏洞
抵御控制流分析的Python 程序混淆算法
基于返回地址簽名的控制流攻擊檢測方法
垂懸指針檢測與防御方法*
基于控制流的盒圖動態建模與測試
基于Petri網數據流約束下的業務流程變化域分析
為什么表的指針都按照順時針方向轉動
三明:“兩票制”堵住加價漏洞
漏洞在哪兒
高鐵急救應補齊三漏洞
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合