打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
基于TDSD
? 基于TDSD-Droid安全防御系统的设计

基于TDSD-Droid安全防御系统的设计

杨 鹏

(陕西工业职业技术学院信息工程学院,陕西 咸阳 712000)

摘要:为强化Android系统的安全防御功能,确保用户使用安全,针对Android安全架构ASF保护机制的不足,结合SElinux安全加固技术的优点,引入基于内核的MAC机制,利用Flask访问架构建立了新的MMAC机制,并创造性地实现了FSP柔性安全策略适配机制和自动化学习机制,推进了立体化的安全防御系统的构建。

关键词:Android系统;MMAC机制;访问控制;安全防御

目前,Android操作系统面临越来越严重的安全问题。据统计,2015年新增移动互联网移动恶意程序已经超过70万,并且这些恶意程序99%以上都是针对Android操作系统的,究其根源在于Android系统开放性和碎片化的特征,容易引发恶意软件攻击、权限滥用、隐私泄露、信息盗取等问题。为确保Android操作系统的应用安全,防止黑客、木马和病毒等恶意程序的入侵[1],本文针对以往安全架构ASF以及安全加固技术Saint、TrustDroid等缺失立体化安全防御保护的弊端,创造性地引入了基于内核的MAC和MMAC安全访问机制[2],根据用户使用场景的不同建立了柔性安全策略FSP适配机制,并以远程后台程序为基础实现了学习型安全策略服务,由此完成了TDSD-Droid全方位、立体化的安全防御系统设计。

1 安全防御系统设计的需求分析

Android系统安全架构ASF主要由Android许可机制、DAC自主访问控制机制、JVM的sandbox机制等3部分构成[3],其中Android许可机制是基于组件间通信机制ICC和Android系统专有驱动Binder实现的轻量级进程间通信机制,其对应用程序的许可访问进行判断,并向用户发送核准请求,但其仅可粗放管理程序接口或资源,且控制只在安装时有效,难以起到实时保护的目的。在一般情况下,Android都是以应用程序的方式进行运行的,这使其与线程虚拟机相比具有较强的隔离性,但因考量执行效率,Android又提供了NDK或JNI,直接调用底层Linux内核,例如fork()直接将NDK与Java虚拟机(JVM)的sandbox 分割开来,致使ASF中的JVM保护机制无法全面控制恶意程序的入侵,并且Android的Installd等Damons后台服务程序可以在Linux内核上直接进行运行,这样虽然对Android Java程序在Dalvik虚拟机当中的运行构成限制,但是恶意程序仍旧能够借助Damons实现攻击目的。此外,在DAC自主访问控制机制当中,Linux能够根据系统进程生成UID和GID,来对进程的访问权限进行判断,但也存在以下弊端:因root用户的超权限性,使恶意软件能够通过root的setuid位的程序获取root的权限,并进行攻击和破坏;由于这一访问机制没有对资源权限进行细化,一旦恶意软件A获得了B的UID和GID,A就拥有了与B进程相同的权限。

2 基于TDSD-Droid安全防御系统的整体设计

在Android系统中面临最多的攻击类型就是root攻击[4],因此必须引入基于SELinux的MAC机制,其不仅能够规避root攻击,而且可细化资源访问权限。SELinux是Flask安全模型的一个实现,其由SS安全服务器和资源管理器组成,分别负责基于安全策略的访问判断和访问实施,将系统底层文件、IPC及内存等资源有效保护起来,确保MAC访问机制的实现。但MAC机制缺失对上层资源的保护,例如Camera设备在底层由MAC访问控制保护,但是同样对于Camera提供的照片以及摄影照片却不能进行有效的全面保护,因此一旦上层应用获取了这一设备以及相关文件的访问权限,其同时也就具备了Camera服务这个中间件所有的权限,只要其获得了拍照功能程序,那它也就得到了摄影权限。为此,Android系统安全防御系统应该在MAC基础上提供MMAC上层资源访问保护机制,将两者有效结合:当主体对客体进行访问时,一旦涉及到用户层资源,则需要对MMAC实施许可判决;当访问涉及到用户层资源时,则必须通过MAC访问机制进行判断,在同时获得两者许可的前提下,应用程序才能实现成功访问。

2.1 MMAC机制的设计与实现

本文基于SELinux的Flask访问架构在TDSD-Droid中构建了一个新的MMAC访问控制机制,MMAC中的资源管理器的功能代码分布在PM管理器、SM服务管理器、CP内容提供器当中,在对某型服务提出访问请求及读写ContentProvider和Intents数据时,MMAC的安全服务器USSS就将相应的判决流程插入标准Android访问流程中。

USSS位于MMAC中的核心位置,由它可完成上层主体对其所属资源访问权限的判断,且通过USSS和KSSS可将Android系统的用户空间与内核的安全问题予以区别,以便于Android终端根据应用场景的不同灵活配置安全策略,USSS所实现的访问是基于MAC技术中的类型安全加固TE访问控制策略,其能够结合主体和客体的种类、客体的关联类别以及客体向主体许可操作集,对访问上层客体资源的主体进行许可判断,并向USOMs提供一个接口,以便主体通过ICC向USSS发送访问客体的许可请求。

在MMAC安全防御系统中能够对标准的Android相关组件进行改造实现USOMs,并且应用于Anderoid之间的应用和服务都可以是一个USOM,因此为了得到MMAC的保护,提前集成在Android影像中服务和APP应用,都扩展了安全钩子函数,以获得MMAC的保护,而对于之后动态安装的Service或APP则分别通过PM管理器、SM服务管理器提供的接口,选择是否要USOMs扩展函数,如果扩展安全钩子函数,则需要依据这些函数程序的UIDS,对缺省的安全访问控制函数进行分配,如果不选择USOMs扩展函数,不扩展的程序也能够在Anderoid上进行正常的运行,但是得不到MMAC的保护。

2.2 柔性安全策略FSP适配机制的设计与实现

TDSD-Droid安全防御系统中,FSP的核心是SES,它的主要作用是根据用户角色以及其他因素的变化给Android终端提供合适的安全环境。安全环境不同,同一主体对客体进行访问时的权限也是不一样的。在SM服务管理器当中有几个SES驻留的Listener线程,对安全环境参考变量进行监控,修改USSS与KSSS的安全运行环境变量,并最终对不同主客体的安全属性和安全策略进行改变,以确保TDSD-Droid结合环境变化适配更加合理的安全策略。同时,为保证SES能够实现,TDSD-Droid对安全策略进行了拓展,通过对Option关键词的添加,确保支持与安全场景有关的安全策略的使能与禁止。另外,TDSD-Droid引入了SwitcherBoolean声明,将相应的安全场景映射为booleans,这一值可以对Option指定下的安全策略的禁止与使能产生深刻影响,从而能够对Android运行的安全环境进行映射。

除此之外,FSP具备的适配机制还能够支持安全策略来源的多样化和动态加载,除了能够利用系统加载策略对随机启动的各类服务以及APP应用进行标记之外,TDSD-Droid还能够对其他应用进行动态安装,并且在进行安装时还可以选择成为一个USOMs,这一APP能够为自己提供安全策略,并对第三方的应用主体以及属于这一APP的客体资源的安全属性进行标记,因此扩展了OM管理器在该类的第三方应用安装时,需要抽取该APP的专有策略文件注入到USSS,并存放到用户空间安全策略库。

2.3 安全策略学习机制的建立与实现

TDSD-Droid除了要实现内核层以及上层MMAC的强制访问控制机制外,还必须构建安全策略学习机制,该学习策略机制的实现需要USSS以及KSSS扩展、ReporterService以及运行于后台服务器的StudyService的支撑。TDSD-Droid可以提供多种安全策略,USSS或KSSS发现新的安全策略,在进行整合的基础上,由ReporterService传给远程StudyService,在新的安全策略接受之后,需要经过自动学习机制,来判定是否能够将其纳入到参考安全策略库之中。以FSP适配机制作为后续支撑,StudyService对新策略的处理流程如图1所示。

面对Android系统复杂的运行环境,TDSD-Droid在后台交互的策略定义中设计了一个Level字段,针对内核层的MAC和MMAC访问控制机制的安全策略进行分别标识,便于灵活调用。

图1 StudyService对新策略的处理流程

3 结束语

Android操作系统较容易被恶意软件侵入和利用,存在严重的安全隐患问题,不仅给用户带来了巨大的隐私风险,而且容易使智能终端设备陷入循环崩溃死机的状态,影响用户使用忠诚度[5],本文针对Android系统存在的常见安全隐患,吸收传统防御技术和安全机制的优势,创造性融合了MACC访问机制、柔性安全策略FSP适配机制、安全策略自动学习机制等内容,实现了一个基于TDSD-Droid的立体的、行之有效的安全防御体系。

参考文献:

[1] 张军强.一种基于Android平台的网络流量异常监控软件设计[J].自动化与仪器仪表,2016(3):22-23,25.

[2] 刘洋,邵旭东,潘程达,等.立体安全防御系统TDSD-Droid的实现[J].计算机科学,2013,40(11A):228-234,250.

[3] 邵旭东,刘洋.一个应对Android应用抬权攻击的系统框架设计[J].信息网络安全,2015(9):89-92.

[4] 王欣.Android平台NFC技术的研究及其实现[J].自动化与仪器仪表,2016(2):39-40.

[5] 张译恬.面向安卓系统的移动应用程序安全加固系统的设计与实现[D].北京:北京邮电大学,2015.

Development of the security defense system based on TDSD-Droid

YANG Peng

(Information Engineering College, Shaanxi Polytechnic Institute, Shaanxi Xianyang, 712000, China)

Abstract:Aiming at strengthening the security defense function of the Android system and ensuring the safety of users, it analyzes the problem of Android security architecture ASF protection mechanism.Based on the advantages of SELinux security reinforcement technology, it combines with MAC mechanism based on the kernel and flash access architecture, establishes a new mechanism of MMAC, realizes the FSP flexible security policy adaptation mechanism and the automatic learning mechanism, builds the construction of three-dimensional force of security defense system.

Key words:Android system; MMAC mechanism; access control; security defense

DOI:10.3969/j.issn.2095-509X.2016.10.013

收稿日期:2016-05-25

作者简介:杨鹏(1979—),男,陕西咸阳人,陕西工业职业技术学院讲师,硕士,主要研究方向为网络、网络安全。

中图分类号:TP393.08

文献标志码:A

文章编号:2095-509X(2016)10-0063-03

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Android安全机制分析
C++编译器 C4droid (C/C++ compiler) v3.72 for android
应用汇
7个免费且安全的APK下载网站
手机选购全攻略 十个你应该注意的问题
全球10大触屏手机排行 iPhone 4仅第三
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服