版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
包括:利用注入目标Android程序的进程中的脚本对目标Android程序中调用的函数进行监听,判断目标Android程序是否存在风险问题。该方法利用脚本对目标Android程序调用的函数进行信息来判断目标Android程序是否存在风险问2利用注入目标Android程序的进程中的脚本对所述目标Android程序中调用的函数进根据所述待检测信息计算各个所述函数组中所述函数的风险系数所述函数被调用时所述目标Android程序是否处3.根据权利要求1所述的方法,其特征在于,所述根据所述风险系数判断所述目标根据各个函数组中所述函数的风险系数和与所述函数组对应的风险述目标Android程序是否存在风险项;系数和与所述函数组对应的风险系数阈值,确定所述目标Android程序是否存在风险项之根据所述风险项的权重计算所述目标Android程根据所述风险值确定所述目标Androi5.根据权利要求1所述的方法,其特征在于,在所述利通过所述通信通道将所述脚本注入到所述目标Android程序的利用注入目标Android程序的进程中的脚本对所述目标Android程序中调用的函数进3算所述函数的风险系数,并根据所述风险系数判断所述目标Android程序是否存在风险问按照预设的调用规则以及所述待检测信息对所述函数进行分组,获得分根据所述待检测信息计算各个所述函数组中所述函数的风险系数在目标iOS程序启动后,通过预先注入到所述目标iOS程序中根据所述待检测信息确定所述目标iOS程序是根据所述风险系数确定所述目标iOS程序是注入到所述目标iOS程序中的动态库对敏感函数进行监听,并获取与所述敏感函数相关的利用所述动态库在所述第一类函数被调用时动态改变所述第一类函数的方法编号和所述目标iOS程序中的动态库对敏感函数进行监听,并获取与所述敏感函数相关的待检测向进行修改,以使所述第二类函数的函数符号的指针指向动态库中对应的第二类替换函检测信息中还包括网络请求,所述通过预先注入到所述目标iOS程序中的动态库对敏感函4敏感函数的类别。在目标iOS程序启动后,通过预先注入到所述目标iOS程序中利用所述动态库生成设备ID和进程ID,所述设备ID用于标识运行所述目标iOS程序的根据所述风险系数确定所述目标iOS程序是监听模块,用于利用注入目标Android程序的进程中的脚本对所述目标And所述风险系数判断所述目标Android程序是否存根据所述待检测信息计算各个所述函数组中所述函数的风险系数监听模块,用于在目标iOS程序启动后,通过预先注入到所述目标iO根据所述风险系数确定所述目标iOS程序是所述处理器和所述存储器通过所述总线完成所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指56[0006]第一方面,本申请实施例提供一种应用程序检测方法,包括:利用注入目标据所述待检测信息计算所述函数的风险系数,并根据所述风险系数判断所述目标Android7[0012]在第一方面的一种实现方式中,所述根据所述风险系数判断所述目标Android程与所述函数组对应的风险系数阈值,确定所述目标Android程序是否存在风险项之后,包程序的等级进行划分,开发人员可以针对等级来确认目标Android程序的风险问题的严重[0016]在第一方面的一种实现方式中,在所述利用注入目标Android程序进程中的脚本[0020]第二方面,本申请实施例提供一种应用程序检测方法,包括:利用注入目标程的待检测信息,所述待检测信息中包括每个被调用的函数的属性信息;获取所述目标8所述待检测信息计算所述函数的风险系数,并根据所述风险系数判断所述目标Android程可以利用进程号区分当前检测的应用程序,并能够根据待检测信息判断目标Android程序[0023]上述方法在目标iOS程序启动之后,通过预先注入的动态库来对敏感函数进行监[0024]在第三方面的一种实现方式中,所述敏感函数包括涉及所述目标iOS程序中的动态库对敏感函数进行监听,并获取与所述敏感函数相关的待检测向进行修改,以使所述第二类函数的函数符号的指针指向动态库中对应的第二类替换函9息中还包括网络请求,所述通过预先注入到所述目标iOS程序中的动态库对敏感函数进行[0032]在第三方面的一种实现方式中,所述根据所述检测信息确定所述目标iOS程序是据所述风险系数判断所述目标Android程序是否存和所述待检测信息,以使所述服务端根据所述待检测信息确定所述目标iOS程序是否存在所述处理器和所述存储器通过所述总线完成相互间的令能够执行第一方面至第四方面或第一方面至第四方面的任意一种可能的实现方式提供一方面至第四方面或第一方面至第四方面的任意一种可能的[0060]针对现有的通过关键字对程序代码进行匹配来检测应用程序的风险的准确率有执行函数对所述目标应用程序中调用的函数进行监听,获取与所述函数相关的待检测信[0064]步骤110:利用注入目标Android程序的进程中的脚本对目标Android程序中调用framework、安卓逆向工具Jadx-Gui等源码进行分析,编写对应的Hook脚本,可以使用Xpose、frida等Hook框架将Hook脚本进行注入,该Hook脚本可以采用Java、shell、[0066]以root后的手机为例介绍脚本的注入过程,首先启动手机的So以实现Hook脚本动态注入到该手机的目标Android程序的进程中,至此完成脚本的注入过[0067]步骤110中的函数可以分为敏感函数和普通函数,Hook框架能够通过注入脚本来实现对目标Android程序调用的全局函数的监听,包括对敏感函数和普通函数的监听,当过程中会加载XposedBridge.jar这个jar包,从而完成对Zygote进程及其创建的Dalvik虚提供的目标接口如js接口与目标Android程序的Native库进行连接,从而可以获得一些虚拟机接口将Hook脚本包装成动态代理对象去Hook相应的函数对应的class类,完成对函数用指目标Android程序处于后台状态下对函数的调用次数超过阈值,后台连续调用指在预设的时间段内后台调用的总时间超过时间阈值。这些阈值均用于表征脚本在该目标Android程序的进程中执行的预设时间范围内与函数调用次数对应的最大值,且不同调用某一个函数的总调用次数或单位时间内的调用次数超过阈值时,则该函数会作为风险项,[0074]函数被调用时目标Android程序是否处于后台状态,作为后台属性,在分组过程[0078]下面以一个Android程序的风险问题分析进行介绍,例如预先设置的函数组包括个函数组用于标识该函数在目标Android程序的调用规则,可以根据不同的函数组对应的[0086]本申请还提供一种可替换的方案,图2为本申请实施例提供的第二种应用程序检[0089]该替换的方案与图1所述方案的区别在于,根据待检测信息确定应用程序是否存据待检测信息计算函数的风险系数以及根据风险系数判断目标Android程序是否存在风险[0093]具体的实施方式可以参见图1对应的实施例中的脚本注入方式,前面已经详细阐函数分别计算其风险系数,通过风险系数和对应的风险阈值的比较判断是否存在风险项,在本申请的方案中,通过将动态库预先注入到目标iOS程序中,从而实现对敏感函数的监[0104]完成动态库的预先注入之后,就可以利用动态库与运行中的目标iOS程序中需要监测的敏感函数调用进行监听,完成对目标iOS程序的动态监测,通过对敏感函数进行监[0107]第二类函数可以为iOS应用程序中涉及硬件信息获取的函数,硬件信息可以包括[0110]在另一些实现方式中,网络请求函数也会因为涉及隐私数据泄露而导致风险问[0111]对网络请求函数监听的具体方式可以为:首先对NSURLSessionConfiguration会NSURLSessionConfiguration的首选项,NSURLProtocol是NSURLConnection和NSURLSession中的handle控制类,因此网络请求都会经过NSURLProtocol里面的方法去处[0112]通过以上三种敏感函数的监听方式,从而可以实现对目标iOS程序中的敏感函数N的值可以确定敏感函数的权重,利用待检测信息中检测到的与敏感函数相关的信息来确感函数的风险系数即可作为目标iOS程序的风险系数,当待检测信息中检测到多个敏感函数时,可以分别通过获取到的敏感函数的等级和权重进行加权运算从而获得该目标iOS程程序的风险等级可以根据风险系数进行划分,通过风险系数可以确定目标iOS程序的风险[0118]本申请还提供一种可替换的方案,图5为本申请实施例提供的第五种应用程序检[0126]其中生成设备唯一ID的生成逻辑如下:根据Key从Keychain钥匙串中获取保存的[0132]具体实施方式可以参考上述图4方法实施例中涉及硬件信息获取的第二类函数的[0133]网络请求Hook模块650用于通过对网络请求函数进行监听,获得涉及敏感信息的[0134]具体实施方式可以参考与图4实施例中涉及网络请求函数的监听的实施方式,并[0135]敏感权限Hook模块660用于对敏感权限函数进行监听,并调存储与敏感权限函数相关的堆栈信息。具体实施方式可以参考图4实施例中涉及敏感权限[0136]敏感函数Hook模块670用于对涉及硬件信息获取函数进行监听,并调用数据存储[0139]首先,在完成动态库系统的编码工作后,通过编译工具Xcode将该动态库进行编译,编译的目的是将动态库的代码转换成可执行的二进制文件,从而注入到目标iOS程序[0143]图8为本申请实施例提供的第一种应用程序检测装置的结构示意图,该装置可以[0144]监听模块810,用于利用注入目标Android程序的进程中的脚本对所述目标[0145]判断模块820,用于利用所述脚本,根据所述待检测信息计算所述函数的风险系[0147]利用所述脚本,按照预设的调用规则以及所述待检测信[0166]统计各个函数组中所述函数的风险系数的计算结果,生成所述目标Android程序[0168]图9为本申请实施例提供的第二种应用程序检测装置的结构示意图,该装置可以[0169]监听模块910,用于利用注入目标Android程序的进程中的脚本对所述目标根据所述待检测信息计算所述函数的风险系数,并根据所述风险系数判断所述目标[0175]判断模块1020,用于根据所述待检测信息确定所述目标iOS程序是否存在风险问[0178]利用所述动态库在所述第一类函数被调用时动态改变所述第一类函数的方法编所述敏感函数的类别。[0192]根据所述待检测信息、所述敏感函数的等级和权重确定所述目标iOS程序的风险使所述服务端根据所述待检测信息确定所述目标iOS程序存取存储器(RandomAccessMemory,简称RAM),只读存储器(ReadOnlyMemory,简称存储器(ElectricErasableProgrammableRead-OnlyMemory,简称EEPROM)等。处理器有信号的处理能力。上述的处理器1210可以是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年环保水务项目质量管控措施
- 2026年高考语文阅读答题专项训练及答案
- 《特殊器械感染处理流程》试题及答案
- 某汽配厂生产安全规范
- 某汽车零部件厂质量检测规则
- 某汽车厂安全管理规范
- 销售人员客户关系维护与长期合作建立指导书
- 人教版七年级英语Unit 8词汇深度教学与中考提优教案
- 初中七年级数学上册核心知识清单:一元一次方程解法(合并同类项与移项)
- 初中七年级数学“轴对称”单元深度学习探究式教案
- 头部损伤护理查房课件
- 2023年模具业界掀起低碳环保时代风报告模板
- 地下室聚氨酯防水技术交底
- 大学英语四级真题阅读练习10套(附参考答案)
- 贵阳市普通中学2022-2023学年度高一下学期期末语文试题(扫描版含答案)
- GB/T 42598-2023机械安全使用说明书起草通则
- 大学英语六级词汇表(全)含音标
- 设计成果确认单
- (11.5)-4.3.1高原珍宝红景天中药养颜秘籍
- 仁清参考资料法师:四部宗义精要
- JJG 921-2021环境振动分析仪
评论
0/150
提交评论