路子聰,徐開勇,郭 松,肖警續
(信息工程大學,鄭州 450000)
Android是基于Linux內核的開源操作系統,操作系統的安全性是Android安全體系中非常重要的一部分。內核是操作系統中最重要的組成部分,目前,針對Android系統內核的攻擊日益增多。對于Android系統內核而言,它的安全威脅一方面是繼承Linux 系統本身的漏洞,另一方面是由于Android系統本身不夠完善[1]。有些學者對Android內核漏洞進行挖掘[2],但由于Android生態系統的復雜性,內核漏洞的修補通常需要很長的周期,這意味著內核防御技術對于Android來說至關重要。Android4.3版本之前,安全模型部分是基于應用沙盒的概念,系統可以為每個應用程序提供一個自己的沙盒并分配一個獨有的UID(User IDentification),使每個應用在自己的沙盒中運行來保證應用的資源獨立存儲。Shabtai 等[3]提出將安全增強型 Linux(Security-Enhanced Linux, SELinux) 植入到Android 平臺中,限制應用對系統資源的訪問,增強Android 系統安全。從Android 4.3 版起,SELinux開始用于進一步定義 Android 應用沙盒的邊界。雖然SEAndroid(Security-Enhanced Android)對基于應用程序的攻擊有很好的防御效果,然而SEAndroid卻依賴于操作系統內核完整性的假設。如果Linux內核受到威脅(或許還有未知的漏洞),則Android安全機制的SE (Security-Enhanced)可能被禁用并且效果不佳[4]。
有學者對在移動平臺上增強Android系統內核的安全性進行了研究。針對Android設備大部分使用ARM處理器,利用ARM的安全擴展TrustZone[5]可以用來保護系統[4,6-10],盡管TrustZone是基于硬件進行數據保護,但其攔截能力的局限性使得它不適合作域內反思和域內保護。這就是Hypervision[4]在操作系統上作出顯著改變的原因,但其在模式切換的消耗大,導致有一定局限性。……