【技术实现步骤摘要】
SDK收集用户信息的检测方法及装置、电子设备、存储介质
本申请涉及计算机
,特别涉及一种SDK收集用户信息的检测方法及装置、电子设备、计算机可读存储介质。
技术介绍
手机和平板电脑上的APP(Application,应用软件)内通常会包括SDK(SoftwareDevelopmentKit,软件开发工具包),这些SDK可以帮助APP实现地图、支付、统计、社交、广告等一系列功能。据统计,国内开发的APP平均会使用十多个SDK。在这种情况下,SDK的安全性对整个移动互联网生态建设非常重要。目前,SDK未经允许收集用户信息已成为非常普遍的问题。
技术实现思路
本申请实施例的目的在于提供一种SDK收集用户信息的检测方法及装置、电子设备、计算机可读存储介质,用于检测SDK是否存在收集用户信息的行为。一方面,本申请提供了一种SDK收集用户信息的检测方法,包括:获取待检测SDK;依据对应于敏感函数的第一正则表达式对所述待检测SDK进行全局搜索,判断是否存在与所述正则表达式匹配的嫌疑函数;若存在所述嫌疑函数,对所述嫌疑函数进行调用链回溯,判断是否存在与所述嫌疑函数对应的调用链;其中,所述调用链包括数据采集函数;当存在所述调用链,使用测试数据运行所述待检测SDK,并通过动态执行脚本生成所述待检测SDK运行时所述嫌疑函数和所述数据采集函数的数据使用日志;依据对应于敏感数据的第二正则表达式和对应于敏感权限的第三正则表达式对所述数据使用日志进行全局搜索,判断是否存在与 ...
【技术保护点】
1.一种SDK收集用户信息的检测方法,其特征在于,包括:/n获取待检测SDK;/n依据对应于敏感函数的第一正则表达式对所述待检测SDK进行全局搜索,判断是否存在与所述正则表达式匹配的嫌疑函数;/n若存在所述嫌疑函数,对所述嫌疑函数进行调用链回溯,判断是否存在与所述嫌疑函数对应的调用链;其中,所述调用链包括数据采集函数;/n当存在所述调用链,使用测试数据运行所述待检测SDK,并通过动态执行脚本生成所述待检测SDK运行时所述嫌疑函数和所述数据采集函数的数据使用日志;/n依据对应于敏感数据的第二正则表达式和对应于敏感权限的第三正则表达式对所述数据使用日志进行全局搜索,判断是否存在与所述第二正则表达式或所述第三正则表达式匹配的数据使用记录;/n如果存在所述数据使用记录,确定所述待检测SDK会收集用户信息。/n
【技术特征摘要】
1.一种SDK收集用户信息的检测方法,其特征在于,包括:
获取待检测SDK;
依据对应于敏感函数的第一正则表达式对所述待检测SDK进行全局搜索,判断是否存在与所述正则表达式匹配的嫌疑函数;
若存在所述嫌疑函数,对所述嫌疑函数进行调用链回溯,判断是否存在与所述嫌疑函数对应的调用链;其中,所述调用链包括数据采集函数;
当存在所述调用链,使用测试数据运行所述待检测SDK,并通过动态执行脚本生成所述待检测SDK运行时所述嫌疑函数和所述数据采集函数的数据使用日志;
依据对应于敏感数据的第二正则表达式和对应于敏感权限的第三正则表达式对所述数据使用日志进行全局搜索,判断是否存在与所述第二正则表达式或所述第三正则表达式匹配的数据使用记录;
如果存在所述数据使用记录,确定所述待检测SDK会收集用户信息。
2.根据权利要求1所述的方法,其特征在于,在所述获取待检测SDK之前,所述方法还包括:
获取所述第一正则表达式、所述第二正则表达式、所述第三正则表达式和所述动态执行脚本。
3.根据权利要求1所述的方法,其特征在于,所述获取待检测SDK,包括:
对目标应用软件进行反编译处理,获得反编译代码;
判断所述反编译代码的文件夹名称是否与预设的SDK标识相同;
当任一文件夹名称与所述SDK标识相同时,将所述文件夹内的反编译代码作为待检测SDK,并依据所述文件夹内的反编译代码和所述SDK标识生成所述待检测SDK的SDK指纹。
4.根据权利要求1或3所述的方法,其特征在于,在确定所述待检测SDK会收集用户信息后,所述方法还包括:
为所述待检测SDK生成检测报告;
在预设的历史检测记录库中保存所述待检测SDK的SDK指纹和所述检测报告的关联关系。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当确定所述待检测SDK不会收集用户信息后,为所述待检测SDK生成检测报告;
在所述历史检测记录库中保存所述待检测SDK的SDK指纹和所述检测报告的关联关系。
6.根据权利要求5所述的方法,其特征在于,在所述依据对应于敏感函数的第一正则表...
【专利技术属性】
技术研发人员:邵淼,徐江林,胡高岩,
申请(专利权)人:微医云杭州控股有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。