1.一种基于服务粒度的隐私权限管理方法,其特征在于:包括以下步骤:
步骤一:先为所有应用服务绑定的一个其正常运行需要的最小隐私权限集合,所述最小隐私权限集合是指同类应用提供相同服务需要申请的隐私权限集合的交集;
步骤二:获取待测应用的应用服务、并验证应用服务是否合理;
步骤三:获取应用的唯一标识,利用唯一标识从数据库中查询历史检测结果,如果数据库中已经存在应用服务的检测结果,则获取检测结果并结合预设的隐私权限开启限制,为用户选择的应用服务绑定的隐私权限的赋予问题给予合理的提示;如果数据库中没有存在应用服务的检测结果,则执行步骤四;
步骤四:根据应用服务获取需要检测的最小隐私权限集合,然后使用静态分析获取隐私权限相关API之间的敏感数据流路径;
步骤五:将步骤四获取的敏感数据流路径按照特征向量定义量化成特征向量;
步骤六:分析良性样本应用和恶性样本应用的差异敏感数据流路径量化并构建特征样本矩阵;
步骤七:使用机器学习算法对应用服务的特征向量进行学习分类,再确定应用是良性还是恶性,其中恶性是指应用具有隐私泄露行为,良性是指应用安全;
步骤八:根据步骤七得到的检测结果,并结合预设的隐私权限开启限制,为用户选择的应用服务绑定的隐私权限的赋予问题给予合理的提示。
2.根据权利要求一种基于服务粒度的隐私权限管理方法,其特征在于:在步骤二中,系统会验证待测应用是否拥有用户选择使用的应用服务,如果待测应用拥有用户选择使用的应用服务,系统正常向下执行,如果待测应用不拥有用户选择使用的应用服务,系统会提示用户继续选择需要使用的应用服务。
3.根据权利要求1所述的一种基于服务粒度的隐私权限管理方法,其特征在于:在步骤二中,验证应用服务是否合理的方法包括以下步骤:步骤(1):先反编译应用权限申请文件,获取应用申请权限集合;
步骤(2):接着分析判断应用申请权限集合是否包含用户选择的应用服务绑定的最小隐私权限集合,如果应用申请权限集合包含用户选择的应用服务绑定的最小隐私权限集合,则判断用户选择的应用服务合理,如果应用申请权限集合不包含用户选择的应用服务绑定的最小隐私权限集合,则判断用户选择的应用服务不合理。
4.根据权利要求1所述的一种基于服务粒度的隐私权限管理方法,其特征在于:隐私权限包括:读通讯录、读用户账号、读日历、读模糊地址、读精确地址、摄像头、录音、读手机状态、读通话记录、读日志、读浏览器历史访问、读短信、网络。
5.根据权利要求1所述的一种基于服务粒度的隐私权限管理方法,其特征在于:隐私权限开启限制包括:开启时间段、开启次数。
6.根据权利要求1所述的一种基于服务粒度的隐私权限管理方法,其特征在于:应用的唯一标识包括:包名、版本及签名。