当前位置: 首页 > 专利查询>武汉大学专利>正文

一种Android软件敏感行为监控与拦截方法及系统技术方案

技术编号:8907302 阅读:1840 留言:2更新日期:2013-07-11 04:59
本发明专利技术属于智能手机安全技术领域,涉及一种Android系统的安全加固方法,特别是涉及一种Android软件敏感行为监控与拦截方法及系统。本发明专利技术的Android软件敏感行为监控和拦截方法,用于监控和拦截Android软件运行期间的敏感行为,其中,所述的监控和拦截方法是基于Android系统的Binder进程间通信机制的,所述的监控与拦截系统,包括:注入器模块、监视器模块、拦截规则管理模块、用户交互模块。本发明专利技术不需要对系统进行任何修改,即能实时、准确地监控软件的敏感行为,并能根据用户的需要对敏感行为进行拦截,对及时发现和阻止恶意软件侵害用户的隐私和财产安全是非常有效的。

【技术实现步骤摘要】

本专利技术属于智能手机安全
,涉及一种Android系统的安全加固方法,特别是涉及一种Android软件敏感行为监控与拦截方法及系统
技术介绍
Android是一种以嵌入式Linux为基础的开放源码的移动操作系统,主要应用与智能手机、平板电脑等移动智能终端,中文一般称为“安卓”。Android系统是由四个逻辑层次构成的,从底到上依次是Linux内核层、C/C++函数库层、应用程序框架层、应用程序层。Android平台上的软件也称为Android应用或者Android应用程序。Android软件的敏感行为是指可能给用户带来潜在安全威胁的行为,比如读取GPS数据获得用户地理位置、后台发送短信、拨打电话等。这类行为可能由正常软件产生,也可能由恶意软件产生。Android将系统服务托管在系统进程com.android, phone, system_server和/system/bin/mediaserver中,软件敏感行为的执行过程本质上是向系统服务发送请求并传递相关参数,系统服务进行操作后返回结果,采用的是C/S (Client/Server)模式。随着搭载Andro i d系统的移动智能终端,特别是智能手机的普及,针对Andro i d用户的恶意软件威胁越来越严重,逐渐形成了一条黑色产业链。这些恶意软件通常伪装成正常的应用软件或者游戏,欺骗用户安装。一旦进入用户手机,就在后台运行,悄悄收集用户的隐私信息,或者自动发送短信、拨打电话定制付费业务,甚至窃取用户的网银密码,极大危害了用户的隐私和财产安全。根据《2013年I月手机安全报告》(报告地址:http://msm.qq.com/scan/news/secure_news_detail.jsp id=139)显不,一个月内新增的 Android 恶意软件有26367个,数目非常多。 软件行为监控和拦截技术在传统的PC平台上较为成熟,已经被广泛应用于各类安全软件上,能够及时发现和阻止恶意软件的危险行为。但是目前在Android平台上,软件行为监控和拦截技术尚不成熟。已有的Smali Hook技术需要事先对软件进行修改,静态插入监控代码,破坏了软件完整性和可用性,可能会导致软件无法正常安装和运行;而且由于需要重新安装系统中已经存在的软件,使用起来非常不方便;同时也无法实现对敏感行为的有效拦截,不能及时阻止恶意行为的执行。
技术实现思路
本专利技术提供了一种Android软件敏感行为监控与拦截方法及系统,以解决无法及时发现并阻止恶意软件敏感行为的问题。为了达到上述目的,本专利技术公开了一种Android软件敏感行为监控与拦截方法,其特征在于,包括以下步骤:步骤1:查找 Android 系统中 com.android, phone, system_server, /system/bin/meidaserver三个进程的进程号Process ID,即PID ;步骤2:根据所述的PID分别对所述的三个进程的运行状态进行修改,执行加载监视器模块指令,开辟内存空间并将用来加载监视器模块的指令写入其中;步骤3:分别更改所述的三个进程的寄存器状态,使CPU跳转执行所述的指令; 步骤4:根据所述的指令,加载监视器模块到注入器模块的内存空间中,所述的监视器模块开始初始化操作;步骤5:监视器模块在初始化结束后,查找当前进程的libbinder.so的初始地址,并定位ioctl函数在libbinder.so的全局对象列表Global Ojects Table中对应的表项的地址,即GOT中对应的表项的地址;步骤6:修改ioctl对应的GOT表项的内容,使用钩子函数hooked_ioctl的地址进行替换;步骤7:软件执行敏感行为时,会通过ioctl与com.android, phone, system_server, /system/bin/mediaserver三个进程的一个或者多个进行通信和数据交换,钩子函数hooked_ioctl读取并解析软件的敏感行为类型;步骤8:所述的监视器模块写入敏感行为的发起者和时间到日志文件中,得到软件敏感行为监控记录;步骤9:所述的监视器模块监控到敏感行为时,发送消息给用户,同时使敏感行为的操作暂停;步骤10:所述的用户决定是否运行敏感行为的执行,返回同意或者拒绝命令给所述的监视器模块;步骤11:所述的监视器模块获取所述的用户选择的结果,若用户选择同意则使敏感行为继续执行;若用户选择拒绝则终止敏感行为的继续执行。本专利技术还公开了一种Android软件敏感行为监控与拦截系统,其特征在于,包括:注入器模块、监视器模块、拦截规则管理模块、用户交互模块;所述的注入器模块:用于查找Android 系统中 com.android, phone, system_server, /system/bin/meidaserver三个进程的进程号Process ID,即PID ;用于根据所述的PID分别对所述的三个进程的运行状态进行修改,加载监视器模块,开辟内存空间并将用来加载监视器模块的指令写入其中;用于分别更改所述的三个进程的寄存器状态,使CPU跳转执行所述的加载监视器模块的指令;用于根据所述的指令,加载监视器模块到注入器模块的内存空间中;所述的监视器模块:用于执行监视器模块初始化操作;用于查找当前进程的libbinder.so的初始地址,并定位ioctl函数在libbinder.so的全局对象列表Global Ojects Table中对应的表项的地址,即GOT中对应的表项的地址;用于修改ioctl对应的GOT表项的内容,使用钩子函数hooked_ioctl的地址进行替换;用于软件执行敏感行为时,通过ioctl 与 com.android, phone, system_server, /system/bin/mediaserver三个进程的一个或者多个进行通信和数据交换,钩子函数hooked_ioctl读取并解析软件的敏感行为类型;用于写入敏感行为的发起者和时间到日志文件中,得到软件敏感行为监控记录;用于监控到敏感行为时,发送消息给用户,同时使敏感行为的操作暂停;用于获取所述的用户选择的结果,若用户选择同意则使敏感行为继续执行,若用户选择拒绝则终止敏感行为的继续执行;所述的用户交互模块:用于当拦截规则未设置时,提示用户选择允许或者拒绝软件的敏感行为的执行,用户决定是否运行敏感行为的执行,返回同意或者拒绝命令给所述的监视器模块;所述的拦截规则管理模块:用于设置每种敏感行为的拦截规则,所述的拦截规则为允许敏感行为的执行或者拒绝敏感行为的执行。相对于现有技术,本专利技术具有以下特点:首先,本专利技术不对软件本身做任何修改,而是利用Android系统的Binder进程间通信机制,在软件执行敏感行为与系统服务交换数据的过程中截获并解析数据,实现在软件运行期间对软件敏感行的精确监控,保证了软件的完整性和可用性,完全不影响软件的正常安装和运行。其次,本专利技术不需要重新安装任何系统已经存在的软件,消除了已有技术重装软件给用户带来的不便。最后,本专利技术不仅能对软件的敏感行为进行监控,还能对其及时进行拦截,有效阻止恶意软件的恶意行为,保护用户的隐私和财产安全。附图说明图1:为本专利技术Androi本文档来自技高网
...

【技术保护点】
一种Android软件敏感行为监控与拦截方法,其特征在于,包括以下步骤:步骤1:查找Android系统中com.android.phone,?system_server,?/system/bin/meidaserver三个进程的进程号Process?ID,即PID;步骤2:根据所述的PID分别对所述的三个进程的运行状态进行修改,执行加载监视器模块指令,开辟内存空间并将用来加载监视器模块的指令写入其中;步骤3:分别更改所述的三个进程的寄存器状态,使CPU跳转执行所述的指令;步骤4:根据所述的指令,加载监视器模块到注入器模块的内存空间中,所述的监视器模块开始初始化操作;步骤5:监视器模块在初始化结束后,查找当前进程的libbinder.so的初始地址,并定位ioctl函数在libbinder.so的全局对象列表Global?Ojects?Table中对应的表项的地址,即GOT中对应的表项的地址;步骤6:修改ioctl对应的GOT表项的内容,使用钩子函数hooked_ioctl的地址进行替换;步骤7:软件执行敏感行为时,会通过ioctl与com.android.phone,system_server,?/system/bin/mediaserver三个进程的一个或者多个进行通信和数据交换,钩子函数hooked_ioctl读取并解析软件的敏感行为类型;步骤8:所述的监视器模块写入敏感行为的发起者和时间到日志文件中,得到软件敏感行为监控记录;步骤9:所述的监视器模块监控到敏感行为时,发送消息给用户,同时使敏感行为的操作暂停;步骤10:所述的用户决定是否运行敏感行为的执行,返回同意或者拒绝命令给所述的监视器模块;步骤11:所述的监视器模块获取所述的用户选择的结果,若用户选择同意则使敏感行为继续执行;若用户选择拒绝则终止敏感行为的继续执行。...

【技术特征摘要】

【专利技术属性】
技术研发人员:彭国军邵玉如李晶雯肖云倡
申请(专利权)人:武汉大学
类型:发明
国别省市:

网友询问留言 已有2条评论
  • 来自[安徽省移动(全省通用)] 2014年05月08日 10:03
    我希望购买这个专利产品或加盟,我的电话是:15955196833
    0
  • 来自[安徽省移动(全省通用)] 2014年05月07日 17:26
    想咨询一下,请劳烦给下联系方式
    0
1