葉雁秋,王震宇,趙利軍
(解放軍信息工程大學(xué),鄭州450001)
ARM架構(gòu)中控制流完整性驗(yàn)證技術(shù)研究
葉雁秋,王震宇,趙利軍
(解放軍信息工程大學(xué),鄭州450001)
通用平臺(tái)目標(biāo)二進(jìn)制代碼運(yùn)行時(shí)控制流的提取主要依賴于處理器硬件特性,或其動(dòng)態(tài)二進(jìn)制插樁工具,該平臺(tái)的控制流完整性驗(yàn)證方法無法直接移植到進(jìn)階精簡(jiǎn)指令集機(jī)器(ARM)架構(gòu)中。為此,基于控制流完整性驗(yàn)證技術(shù),設(shè)計(jì)一種用于ARM架構(gòu),利用緩沖溢出漏洞檢測(cè)控制流劫持攻擊的方法。該方法在程序加載時(shí)、執(zhí)行前動(dòng)態(tài)構(gòu)建合法跳轉(zhuǎn)地址白名單,在目標(biāo)二進(jìn)制代碼動(dòng)態(tài)執(zhí)行過程中完成控制流完整性驗(yàn)證,從而檢測(cè)非法控制流轉(zhuǎn)移,并對(duì)非法跳轉(zhuǎn)地址進(jìn)行分析,實(shí)現(xiàn)漏洞的檢測(cè)和診斷。在ARM-Linux系統(tǒng)的動(dòng)態(tài)二進(jìn)制分析平臺(tái)上實(shí)施測(cè)試,結(jié)果表明,該方法能夠檢測(cè)出漏洞,并精確定位攻擊矢量。
控制流完整性;進(jìn)階精簡(jiǎn)指令集機(jī)器架構(gòu);合法地址白名單;動(dòng)態(tài)二進(jìn)制分析;攻擊矢量定位
當(dāng)前多數(shù)惡意代碼的攻擊行為大都需劫持并修改系統(tǒng)或二進(jìn)制代碼的控制流[1]??刂屏魍暾?Control Flow Integrity,CFI)[2]驗(yàn)證技術(shù)在二進(jìn)制代碼運(yùn)行時(shí)動(dòng)態(tài)監(jiān)控控制流,判斷是否與源碼設(shè)計(jì)時(shí)控制流屬性一致,用于控制流劫持攻擊的檢測(cè)和防御[3]。
文獻(xiàn)[4]通過從源碼或者匯編碼中提取靜態(tài)控制流,在編譯器中加入控制流完整性驗(yàn)證,實(shí)現(xiàn)了對(duì)惡意改變控制流的攻擊的有效防御。Hypersafe利用控制流完整性驗(yàn)證方法有效確保了開源虛擬機(jī)管理器的可信性[5]。然而,在現(xiàn)實(shí)情況中,應(yīng)用程序的源碼大多都是不公開的或者根本無法獲取的(比如遺留程序),這種情況下靜態(tài)時(shí)控制流的獲取需要依賴編譯技術(shù),而靜態(tài)反編譯技術(shù)不能很好地處理代碼加殼、代碼混淆等復(fù)雜情況。
CFIMon結(jié)合了靜態(tài)分析和運(yùn)行時(shí)訓(xùn)練的方法
來收集合法控制流轉(zhuǎn)移,然后利用Intel處理器中的Branch Tracing Store(BTS)機(jī)制收集程序的實(shí)際執(zhí)行流,最后對(duì)控制流完整性進(jìn)行驗(yàn)證[6]。文獻(xiàn)[7]基于控制流完整性驗(yàn)證構(gòu)建的3種控制流劫持攻擊防御工具在執(zhí)行運(yùn)行時(shí)控制流完整性監(jiān)視時(shí)也都是利用了通用平臺(tái)處理器的硬件特性。這些基于處理器硬件特性的控制流完整性驗(yàn)證技術(shù)由于其平臺(tái)相關(guān)性,在目標(biāo)處理器架構(gòu)(如本文研究的進(jìn)階精簡(jiǎn)指令集機(jī)器(Advanced RISC Machine,ARM)架構(gòu)不具備相應(yīng)硬件特性時(shí)無法發(fā)揮其有效性。
Total-CFI是一款在軟件仿真器上通過執(zhí)行全系統(tǒng)的控制流完整性驗(yàn)證來檢測(cè)漏洞利用的工具。Total-CFI通過構(gòu)建合法目標(biāo)跳轉(zhuǎn)地址的white list作為合法控制流的跳轉(zhuǎn)目標(biāo)。Total-CFI在執(zhí)行控制流完整性驗(yàn)證的過程同時(shí)結(jié)合了對(duì)目標(biāo)程序動(dòng)態(tài)執(zhí)行過程中實(shí)際控制流跳轉(zhuǎn)地址在white-list和對(duì)應(yīng)線程堆棧中的檢測(cè)。因此,Total-CFI不僅具有漏洞利用的檢測(cè)能力,還能夠?qū)艏夹g(shù)類別、payload等信息進(jìn)行精確定位,且?guī)硇阅茇?fù)載不會(huì)超過64%[8]。
目前,針對(duì)嵌入式架構(gòu)上控制流完整性驗(yàn)證方面的研究還比較少。文獻(xiàn)[9]在現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,FPGA)上實(shí)現(xiàn)了控制流完整性驗(yàn)證技術(shù),但該方法直接將控制流完整性驗(yàn)證模塊構(gòu)建在芯片中,該方法的通用性和擴(kuò)展性都有很大局限性。MoCFI將控制流驗(yàn)證技術(shù)應(yīng)用在ARM架構(gòu)中的二進(jìn)制可執(zhí)行程序中,但由于對(duì)合法控制流的跳轉(zhuǎn)地址收集上的不完整,導(dǎo)致仍然有一些漏洞利用能夠執(zhí)行[10]。
本文在對(duì)ARM架構(gòu)與X86架構(gòu)進(jìn)行對(duì)比研究后,設(shè)計(jì)并實(shí)現(xiàn)一種針對(duì)ARM架構(gòu)的控制流完整性驗(yàn)證方法,從而對(duì)ARM架構(gòu)中的控制流劫持攻擊進(jìn)行檢測(cè)。通過動(dòng)態(tài)二進(jìn)制分析檢測(cè)ARM系統(tǒng)中的異??刂屏?檢測(cè)攻擊行為,此外,通過對(duì)攻擊payload進(jìn)行提取,為后續(xù)攻擊行為分析提供基礎(chǔ)。
ARM架構(gòu)是基于RISC指令集的32位處理器架構(gòu),相比于基于CISC指令集的X86架構(gòu),ARM架構(gòu)處理器在寄存器和指令集上有很大差異。相比于X86架構(gòu)的4個(gè)可用數(shù)據(jù)寄存器和4個(gè)指針寄存器,ARM架構(gòu)中共有37個(gè)寄存器,其中,31個(gè)為通用寄存器;6個(gè)為狀態(tài)寄存器。ARM架構(gòu)中的37個(gè)寄存器根據(jù)處理器運(yùn)行模式的不同,能夠使用的寄存器也不同,其中,用戶模式和系統(tǒng)模式使用相同的寄存器[11]。根據(jù)ARM子函數(shù)調(diào)用規(guī)則(ARM Procedure Call Standard,AAPCS)[12],在用戶模式和系統(tǒng)模式下,ARM架構(gòu)中可用寄存器及其用法如表1所示。
表1 子過程調(diào)用時(shí)的寄存器作用
根據(jù)ARM子函數(shù)調(diào)用的參數(shù)傳遞規(guī)則:如果形參個(gè)數(shù)少于4或者等于4,則形參由R0,R1,R2,R3這4個(gè)寄存器進(jìn)行過傳遞,若形參個(gè)數(shù)大于4,大于4之外的參數(shù)必須通過堆棧進(jìn)行傳遞。
ARM架構(gòu)中的跳轉(zhuǎn)指令都被稱之為branch指令,主要有6個(gè),如表2所示。
表2 ARM架構(gòu)中跳轉(zhuǎn)指令功能描述
基于以上信息和對(duì)ARM指令集的研究,可以得到以下2個(gè)結(jié)論:
(1)在ARM架構(gòu)中,在子過程調(diào)用出現(xiàn)時(shí),首先執(zhí)行跳轉(zhuǎn)指令,進(jìn)入子過程后,執(zhí)行指令為對(duì)鏈接寄存器(LR寄存器)和棧楨寄存器(R11/FP寄存器)進(jìn)行保存,其指令類型為PUSH{FP,LR,RX},其中,RX表示其他可能需要保存的通用寄存器,不是必選。非子過程調(diào)用的跳轉(zhuǎn)指令執(zhí)行后,則不會(huì)執(zhí)行該指令。
(2)在列車動(dòng)載作用下,管片會(huì)產(chǎn)生一定的拉應(yīng)力和壓應(yīng)力增量。其中,最大拉應(yīng)力增量集中在管片標(biāo)準(zhǔn)塊拱腰中部?jī)?nèi)側(cè)和拱底塊端部外側(cè),這些位置在自重應(yīng)力作用下表現(xiàn)為壓應(yīng)力;最大壓應(yīng)力增量集中在管片標(biāo)準(zhǔn)塊拱腰中部外側(cè)、拱底塊端部?jī)?nèi)側(cè)及拱頂封頂塊內(nèi)側(cè),這些位置在自重應(yīng)力作用下表現(xiàn)為拉應(yīng)力。因此,在列車動(dòng)載作用下,隧道管片斷面的拉應(yīng)力和壓應(yīng)力水平均存在一定程度的降低。
(2)子過程調(diào)用返回時(shí),首先要將進(jìn)入子過程時(shí)保存的返回地址和調(diào)用者的棧楨地址恢復(fù)到LR寄存器和FP寄存器中,其指令類型為POP{FP,LR, RX},其中,RX表示其他可能需要恢復(fù)的寄存器。然后再執(zhí)行跳轉(zhuǎn)指令,其指令為BX LR,而非子過程調(diào)用的跳轉(zhuǎn)指令返回時(shí),則不會(huì)出現(xiàn)出棧操作。
本文設(shè)計(jì)的ARM架構(gòu)中控制流完整性驗(yàn)證技術(shù)的整體框架如圖1所示。其中,主要包含2個(gè)模塊,即合法地址白名單、控制流完整性驗(yàn)證模塊。
圖1 CFI驗(yàn)證系統(tǒng)總體框架
在目標(biāo)程序加載之后且運(yùn)行之前,構(gòu)建該程序的合法地址白名單,合法地址白名單中包含目標(biāo)程序中所有控制流轉(zhuǎn)移的合法目標(biāo)地址。然后在程序開始執(zhí)行后,對(duì)目標(biāo)程序的指令序列進(jìn)行跟蹤解析,將程序中所有控制流轉(zhuǎn)移指令都交由控制流完整性驗(yàn)證模塊進(jìn)行分析,分析結(jié)果以診斷報(bào)告的形式保存。
2個(gè)模塊均運(yùn)行于ARM-Linux系統(tǒng)全系統(tǒng)動(dòng)態(tài)二進(jìn)制分析平臺(tái)上,該分析平臺(tái)提供了對(duì)目標(biāo)系統(tǒng)中事件(如程序加載、程序開始、模塊加載、指令執(zhí)行等事件)的插樁,并提供對(duì)這事件注冊(cè)回調(diào)函數(shù)和提取目標(biāo)系統(tǒng)內(nèi)存、寄存器等信息的能力[13]。
4.1 合法地址白名單模塊
4.1.1 合法地址白名單構(gòu)成
合法地址白名單中的地址主要由二進(jìn)制文件和共享目標(biāo)文件(對(duì)應(yīng)Windows系統(tǒng)中的動(dòng)態(tài)鏈接庫(kù)文件)中的可重定位表和符號(hào)表中的函數(shù)符號(hào)地址(類似Windows系統(tǒng)中的導(dǎo)出表)構(gòu)成。出于兼容性的考慮,當(dāng)前大多數(shù)二進(jìn)制文件都會(huì)被編譯為可重定位的,ARM-Linux系統(tǒng)中的二進(jìn)制文件以及鏈接庫(kù)文件都采用ELF格式,這些文件在編譯時(shí)默認(rèn)都會(huì)被設(shè)置為可重定位。當(dāng)加載器無法將二進(jìn)制文件加載到其默認(rèn)的加載地址時(shí),加載器就會(huì)執(zhí)行重定位操作。加載器會(huì)根據(jù)重定位表修復(fù)重定位表中的所有條目的地址。類似的,符號(hào)表中的所有函數(shù)符號(hào)信息包含了一個(gè)給定模塊中可用于被其他模塊調(diào)用的函數(shù)。這些函數(shù)的地址都是在二進(jìn)制文件運(yùn)行時(shí)根據(jù)相應(yīng)模塊的實(shí)際加載地址來確定的。因此,重定位表和模塊的符號(hào)表中的所有函數(shù)符號(hào)條目就構(gòu)成了一個(gè)模塊中的有效跳轉(zhuǎn)地址。本文通過直接從二進(jìn)制可執(zhí)行文件和共享目標(biāo)文件中提取合法跳轉(zhuǎn)地址的方式,取代從源碼中構(gòu)建控制流圖的傳統(tǒng)方式,該方式可以有效解決現(xiàn)實(shí)中通常無法獲得所有相關(guān)文件(包括可執(zhí)行文件和共享目標(biāo)文件)的源碼的情況。
當(dāng)應(yīng)用程序被創(chuàng)建時(shí),二進(jìn)制文件加載會(huì)將進(jìn)程對(duì)應(yīng)的二進(jìn)制文件加載到內(nèi)存,開始構(gòu)建目標(biāo)進(jìn)程的虛擬地址空間,這時(shí)直接從目標(biāo)系統(tǒng)物理內(nèi)存中讀取重定位表和符號(hào)表,加入合法地址白名單。另外,ARM-Linux系統(tǒng)中每一個(gè)進(jìn)程都由一個(gè)task_ struct數(shù)據(jù)結(jié)構(gòu)維護(hù),該數(shù)據(jù)結(jié)構(gòu)中包含進(jìn)程的虛擬地址劃分。對(duì)于進(jìn)程所有包含的模塊,提取其加載的基地址,然后對(duì)該模塊中的重定位表和符號(hào)表進(jìn)行提取,將其與模塊加載基地址合并后的地址信息加入合法地址白名單。直接從目標(biāo)系統(tǒng)內(nèi)存或者磁盤中提取數(shù)據(jù)并分析對(duì)目標(biāo)系統(tǒng)的性能會(huì)由較大影響,為了降低這種性能影響,采取了一種優(yōu)化策略:直接靜態(tài)的將目標(biāo)系統(tǒng)中所有共享目標(biāo)文件和對(duì)應(yīng)二進(jìn)制可執(zhí)行文件提取出來,在本地利用交叉編譯環(huán)境提取器重定位表和符號(hào)表中函數(shù)符號(hào)信息,系統(tǒng)加載時(shí),直接將這些信息保存到二進(jìn)制分析平臺(tái)的緩存中,這樣在進(jìn)程創(chuàng)建時(shí),只需從其task_struct數(shù)據(jù)結(jié)構(gòu)中提取模塊基地址即可,不用再?gòu)膬?nèi)存或者磁盤讀取該模塊中的數(shù)據(jù)。通過這種減少內(nèi)存和磁盤數(shù)據(jù)讀取的操作可以有效降低控制流完整性驗(yàn)證執(zhí)行的性能消耗。
4.2 控制流完整性驗(yàn)證模塊
在ARM架構(gòu)中執(zhí)行控制流完整性驗(yàn)證,首先從目標(biāo)系統(tǒng)提取進(jìn)程執(zhí)行指令流,對(duì)所有分支指令(除B imm類型指令外)的目標(biāo)地址進(jìn)行驗(yàn)證,以判斷該地址是否屬于合法跳轉(zhuǎn)地址。
為了提高對(duì)攻擊漏洞利用類型檢測(cè)的準(zhǔn)確性以及攻擊payload的提取,基于第2節(jié)中提到的2個(gè)觀察結(jié)果以及ARM架構(gòu)中用于控制流轉(zhuǎn)移的跳轉(zhuǎn)指令分析結(jié)果,對(duì)于LR/FP寄存器進(jìn)行操作的PUSH/ POP指令對(duì)單獨(dú)進(jìn)行控制流完整性驗(yàn)證。其具體實(shí)現(xiàn)如圖2所示。
圖2 控制流完整性的驗(yàn)證流程
實(shí)現(xiàn)硬件平臺(tái)為Macbook Pro MD313筆記本,搭載Intel i5 2.4 GHz處理器、4 GB內(nèi)存,主機(jī)操作系統(tǒng)為Ubuntu 13.10,在主機(jī)系統(tǒng)中運(yùn)行前期研究構(gòu)建的基于QMEU 1.0的動(dòng)態(tài)二進(jìn)制分析平臺(tái);仿真環(huán)境中,仿真硬件為搭載ARM-926T處理器的開發(fā)版,目標(biāo)操作系統(tǒng)為debian-squeeze,其內(nèi)核版本為2.6.32。
5.1 實(shí)驗(yàn)測(cè)試
為驗(yàn)證本文中提供的漏洞利用檢測(cè)工具的有效性,在上述實(shí)驗(yàn)環(huán)境中重構(gòu)了exploit-db中的2個(gè)POC(Proof of Concept)實(shí)例。下面分別對(duì)2個(gè)漏洞利用實(shí)例及本文中的檢測(cè)工具的結(jié)果進(jìn)行分析。2個(gè)漏洞程序的代碼如下:
圖3介紹對(duì)2個(gè)漏洞程序的利用過程,其中,實(shí)現(xiàn)表示程序正常執(zhí)行時(shí)的控制流;虛線表示漏洞利用后程序執(zhí)行時(shí)的控制流。
圖3 2種漏洞程序執(zhí)行流程
表3給出了漏洞利用檢測(cè)插件的診斷報(bào)告中的部分信息。從表3中看可以看到,該方法成功的檢測(cè)出了漏洞利用類型、漏洞所在函數(shù)、攻擊矢量等的詳細(xì)信息。
表3 診斷報(bào)告中提取的部分信息
5.2 性能評(píng)估
通過對(duì)加載了本文分析插件的情況和未加載分析插件2種情況,對(duì)目標(biāo)系統(tǒng)中應(yīng)用程序的啟動(dòng)速度進(jìn)行了測(cè)試對(duì)比,如圖4所示。從圖中可以看出,分析插件對(duì)系統(tǒng)性能的負(fù)載在20%左右(雖然使用的分析平臺(tái)具備對(duì)內(nèi)核代碼進(jìn)行跟蹤的能力,但本文實(shí)驗(yàn)中對(duì)跟蹤的指令地址進(jìn)行了限定,僅分析目標(biāo)二進(jìn)制代碼代碼段的指令,開啟所有指令跟蹤時(shí),負(fù)載在1倍左右),相比于通用平臺(tái)中,基于PIN, DynamoRIO等動(dòng)態(tài)二進(jìn)制插樁(Dynamic Binary Instrumentation,DBI)工具構(gòu)建的分析工具的性能損耗通常都在2倍以上[14],該方法能夠滿足嵌入式ARM架構(gòu)中對(duì)時(shí)效性的要求。
圖4 應(yīng)用程序啟動(dòng)時(shí)間對(duì)比
本文基于ARM-Linux系統(tǒng)動(dòng)態(tài)二進(jìn)制分析平臺(tái),設(shè)計(jì)并實(shí)現(xiàn)ARM架構(gòu)中的控制流完整性驗(yàn)證技術(shù)。實(shí)例驗(yàn)證了該技術(shù)的有效性和精確性。由于構(gòu)建插件的平臺(tái)本身具有全系統(tǒng)分析能力,因此該技術(shù)對(duì)內(nèi)核漏洞的檢測(cè)同樣有效。另外,通過對(duì)比插件加載前后應(yīng)用程序的響應(yīng)時(shí)間,可以看出,其對(duì)系統(tǒng)性能的影響在可接受范圍內(nèi),負(fù)載問題不會(huì)成為瓶頸。然而,該技術(shù)雖然能夠檢測(cè)ROP攻擊,但無法對(duì)ROP攻擊的gadgets模塊進(jìn)行檢測(cè),今后將針對(duì)該問題做進(jìn)一步優(yōu)化。
[1]Oh N,Shirvani P P,McCluskey E J.Control-flow Checking by Software Signatures[J].IEEE Transactions on Reliability,2002,51(1):111-122.
[2]Abadi M,Budiu M,Erlingsson U,et al.Control-flow Integrity[C]//Proceedings of the 12th ACM Conference on Computer and Communications Security.[S.l.]: ACM Press,2005:340-353.
[3]Abadi M,Budiu M,Erlingsson U,et al.Control-flow IntegrityPrinciples,Implementations,andApplications[J].ACM Transactions on Information and System Security,2009,13(1):41-54.
[4]Diatchki I,Pike L,Erkok L.Practical Considerations in Control-flow Integrity Monitoring[C]//Proceedings of the 4th IEEE International Conference on Software Testing,VerificationandValidationWorkshops.[S.l.]:IEEE Press,2011:537-544.
[5]Wang Zhi,JiangXuxian.Hypersafe:ALightweight Approach to Provide Lifetime Hypervisor Control-flow Integrity[C]//Proceedings of IEEE Symposium on Security and Privacy.[S.l.]:IEEE Press,2010: 380-395.[6]Xia Yubin,Liu Yutao,Chen Haibo,et al.CFIMon: Detecting Violation of Control Flow Integrity Using Performance Counters[C]//Proceedings of the 42nd AnnualIEEE/IFIPInternationalConferenceon Dependable Systems and Networks.[S.l.]:IEEE Press,2012:1-12.
[7]Park Y J.Efficient Validation of Control Flow Integrity for Enhancing Computer System Security[D].Ames, USA:Iowa State University,2010.
[8]Zhang Chao,Wei Tao,Chen Zhaofeng,et al.Practical Control Flow Integrity and Randomization for Binary Executables[C]//Proceedings of IEEE Symposium on Security and Privacy.[S.l.]:IEEE Press,2013: 559-573.
[9]Abad F A T,Woude J V D,Lu Yi,et al.On-chip Control Flow Integrity Check for Real Time Embedded Systems[C]//Proceedingsofthe 1stInternational Conference on Cyber-physical Systems,Networks,and Applications.[S.l.]:IEEE Press,2013:26-31.
[10]Davi L,Dmitrienko A,Egele M,et al.MoCFI:A FrameworktoMitigateControl-flowAttackson Smartphones[C]//ProceedingsofSymposiumon Network and Distributed System Security.[S.l.]:IEEE Press,2012:544-554.
[11]ARM.ARM Architecture Reference Manual[EB/OL].(2010-07-21).http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0406c/index.html.
[12]AAPCS.ARM Procedure Call Standard for the ARM Architecture[EB/OL].(2010-11-21).http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042d/IHI0042D_ aapcs.pdf.
[13]Wang Zhenyu,Ye Yanqiu,Wang Ruimin.An Out-ofthe-Box Dynamic Binary Analysis Tool for ARM-based Linux[C]//Proceedings of Cyberspace Safety and Security.[S.l.]:Springer,2013:450-457.
[14]紀(jì)宇鵬.動(dòng)態(tài)二進(jìn)制程序漏洞挖掘的系統(tǒng)設(shè)計(jì)[D].北京:北京郵電大學(xué),2012.
編輯 劉 冰
Research on Control Flow Integrity Verification Technology in ARM Architecture
YE Yanqiu,WANG Zhenyu,ZHAO Lijun
(PLA Information Engineering University,Zhengzhou 450001,China)
On common platform,the extraction of run-time control-flow to target binary code relies on either processor’s mechanism or Dynamic Binary Instrumentation(DBI)tools.So,the implementation on common platform can not be transplanted to Advanced RISC Machine(ARM)directly.Based on Control Flow Integrity(CFI)enforcement,this paper designs a method to detect and diagnose control flow hijacking which is implemented by exploit a buffer overflow vulnerability on ARM.This method dynamically builds a white-list of legitimate branch target address before the target binary code execute,performs CFI enforcement to detect illegal control-flow transfer at run-time,analyzes the illegal branch target address to achieve exploit diagnosis.It implements the technique on a dynamic binary analysis platform for ARM-Linux systems.Results show that it can effectively detect the exploit and locates the attack vector.
Control Flow Integrity(CFI);Advanced RISC Machine(ARM)architecture;legitimate address white-list; dynamic binary analysis;attack vector location
葉雁秋,王震宇,趙利軍.ARM架構(gòu)中控制流完整性驗(yàn)證技術(shù)研究[J].計(jì)算機(jī)工程, 2015,41(3):151-155,171.
英文引用格式:Ye Yanqiu,Wang Zhenyu,Zhao Lijun.Research on Control Flow Integrity Verification Technology in ARM Architecture[J].Computer Engineering,2015,41(3):151-155,171.
1000-3428(2015)03-0151-05
:A
:TP311
10.3969/j.issn.1000-3428.2015.03.029
葉雁秋(1988-),男,碩士研究生,主研方向:嵌入式系統(tǒng),信息安全;王震宇,副教授;趙利軍,碩士研究生。
2014-03-18
:2014-04-28E-mail:yyq19881203@hotmail.com