[发明专利]基于RASP区分后台线程权限与UI线程权限的方法有效
申请号: | 201810649997.1 | 申请日: | 2018-06-22 |
公开(公告)号: | CN109165503B | 公开(公告)日: | 2021-09-24 |
发明(设计)人: | 文伟平;叶晓亮;张汉 | 申请(专利权)人: | 湖南鼎源蓝剑信息科技有限公司 |
主分类号: | G06F21/55 | 分类号: | G06F21/55;G06F21/56 |
代理公司: | 北京万象新悦知识产权代理有限公司 11360 | 代理人: | 黄凤茹 |
地址: | 410205 湖南省长沙市长沙高新*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 rasp 区分 后台 线程 权限 ui 方法 | ||
1.一种基于RASP区分后台线程权限与UI线程权限的方法,通过RASP部署,分别对安卓系统提供的后台线程与UI线程实现交互的方法进行检测,从而准确识别后台线程权限与UI线程权限;安卓系统提供的后台线程与UI线程实现交互的方法包括:方法handler、方法Activity.runOnUIThread(Runnable)、方法View.Post(Runnable)、方法View.PostDelayed(Runnabe,long)和方法AsyncTask;
基于RASP区分后台线程权限与UI线程权限的方法包括如下步骤:
1)部署标记探针,对当前UI事件发生的时间段内的后台程序、message变量、handler的sentMessage方法的参数和Result变量进行标记,同时将后台程序、当前UI事件发生时间段内的UI线程和安卓权限检查日记记录的所有权限都加上时间戳;
2)针对方法handler,执行如下操作:
对handler的sentMessage方法部署检测探针,检测探针若检测到该方法的参数被标记且不为空,则说明该后台线程已与UI线程通信;对handleMessage方法及Runnable的实例部署检测探针,监测message变量,利用动态分析和静态分析的方法,得出message变量的内容和线程从looper收到message之后的响应动作,同时根据时间戳,得出在当前UI事件发生时间段内,该后台线程的功能和所申请的权限;
3)针对Activity.runOnUIThread(Runnable)方法,执行如下操作:
对在当前UI事件涉及的UI线程对应的Activity的runOnUIThread方法部署检测探针,检测方法的参数,当通过检测探针检测到被标记的后台线程实例时,通过动态分析方法和静态分析方法分析后台线程,同时根据时间戳,得出在当前UI事件发生时间段内,该后台线程所申请的权限;
4)、针对View.Post(Runnable)方法,执行如下操作:
对在当前UI事件涉及的UI控件View的Post方法部署检测探针,检测Post方法的参数,当检测探针检测到被标记的后台线程实例时,通过动态分析方法和静态分析方法分析后台线程,同时根据时间戳,得出在当前UI事件发生的时间段内,该后台线程所申请的权限;
5)针对View.PostDelayed(Runnabe,long)方法,执行如下操作:
对在当前UI事件涉及的UI控件View的PostDelayed方法部署检测探针,检测该方法的参数,当检测探针检测到被标记的后台线程实例时,通过动态分析方法和静态分析方法分析该后台线程,同时根据时间戳,得出在当前UI事件发生的时间段内,该后台线程所申请的权限;
6)针对AsyncTask,执行如下操作:
对onPostExecute方法部署检测探针,检测Result变量,若检测到Result变量被标记且不为空,则说明该后台线程已与UI线程通信;对doInBackground方法部署检测探针,利用动态分析和静态分析的方法,同时根据时间戳,得出在当前UI事件发生的时间段内,该后台线程的功能和所申请的权限;
7)对步骤2)-6)得出的权限取并集,从而形成权限集合A,权限集合A包括了基于RASP技术检测得到的后台线程权限;
8)根据后台线程申请权限的周期性,利用时间戳,挑选出周期性分布的权限,形成权限集合B;
9)将A与B取交集,得到后台线程权限集C;在所检测到的所有权限集中,除后台线程权限集C之外的权限为UI线程权限,即UI线程权限集=检测到的所有权限集-后台线程权限集,由此区分后台线程与UI线程的所申请的权限。
2.如权利要求1所述基于RASP区分后台线程权限与UI线程权限的方法,其特征是,所述静态分析的方法是:针对被部署探针的程序,进行代码分析和代码逻辑分析;所述动态分析的方法是:在程序运行过程中根据部署的标记探针和检测探针进行分析或将程序放于沙箱内运行进行分析。
3.如权利要求1所述基于RASP区分后台线程权限与UI线程权限的方法,其特征是,利用permission-UI映射的方法,将每个权限均盖上时间戳,根据时间挑选得到呈周期性分布的权限。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南鼎源蓝剑信息科技有限公司,未经湖南鼎源蓝剑信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810649997.1/1.html,转载请声明来源钻瓜专利网。