摘要
针对安卓应用程序在终端用户未知的情况下获取系统服务的问题,提出了动态监测应用程序获取系统服务的方法。首先,检查应用程序是否存在第三方库,如存在,则检查第三方库中是否存在敏感函数。如果不存在敏感函数,就将应用程序安装到监测系统,实施对应用程序获取系统服务的实时监测。实验结果表明,该方法在能够避免恶意应用程序对监测系统进行破坏的前提下,可以实时监测到应用程序来自Java层或是本地层对系统服务的调用,而且该方法的实现对时间的开销也在可接受的范围内。
In order for Android application to acquire system service without knowing their terminal user,we proposed the dynamic monitoring method. First,we monitor whether the Android applications have the third libraries;if yes,we monitor whether the third libraries have sensitive function. If the sensitive function do not exist,the Android applications are installed into a certain Android system whose call function has been hooked,thus monitoring in real time the applications' acquisition of system services. The experimental results show that the dynamic monitoring method can monitor the applications' acquisition of their system services called by both the Java layer and the local layer under the precondition that the damage to the monitoring system by an ill-intentioned application can be avoided. Besides,the overhead of the dynamic monitoring method for Android applications is acceptable.
作者
蒋煦
张慧翔
慕德俊
Jiang Xu Zhang Huixiang Mu Dejun(School of Automation, Northwestern Polytechnical University, Xi'an 710072, China)
出处
《西北工业大学学报》
EI
CAS
CSCD
北大核心
2016年第6期1074-1081,共8页
Journal of Northwestern Polytechnical University
基金
国家自然科学基金(61672433)资助
关键词
应用程序编程接口
网络安全
JAVA语言
实时系统
数据安全
第三方库
挂钩子
系统服务调用
Linux
安卓应用程序
动态监测
application programming interface(API)
network security
Java programming language
real time systems
security of data
third libraries
hook
system service call
Linux
Android application
dynamic monitoring