【技术实现步骤摘要】
一种安卓应用流氓行为的识别方法及系统
本专利技术属于安卓应用安全
,更具体地,涉及一种安卓应用流氓行为的识别方法及系统。
技术介绍
安卓系统是一个开源的用于移动设备的操作系统,安卓应用是运行在安卓操作系统上的应用,用户可以选择在第三方市场下载和安装安卓应用,安卓应用第三方市场需要提高自己的应用质量来提升用户满意度,然而,当前安卓应用市场中的应用依然广泛存在流氓行为。根据通信行业标准YD/T2439-2012《移动互联网恶意程序描述格式》,对于执行后对系统没有直接损害,也不对用户个人信息、资费造成侵害的其它恶意行为统称为流氓行为。流氓广告和流氓弹框是两种常见的流氓行为;其中,流氓广告有三种,包括诱导点击广告,覆盖可点击组件广告和应用退出时广告;而流氓弹框是指强制用户升级且点击安卓设备上回退按键无法退出的弹框。这些安卓应用中的流氓行为在影响用户使用体验的同时,也存在着潜在的安全隐患,故研究一种面向安卓应用流氓行为的识别方法及系统存在重要的意义。现有的安卓应用行为识别的方法主要有静态分析方法和动态分析方法。其中,静态方法分析速度快,但是目前应用越来越多采用反射机制和混淆技术等,导致静态分析无法进行。动态分析是采用动态运行应用,收集运行过程中的一些信息用于识别特定行为。目前的动态安卓应用行为识别方法主要在应用运行的过程中采集应用运行过程中的CPU和内存使用情况、网络流量、函数调用、意图以及数据流信息等,然后根据行为特征匹配的方式或提取特征采用机器学习等方法进行特定行为的识别。这些行为识别方法能够有效地识别具有泄 ...
【技术保护点】
1.一种安卓应用流氓广告的识别方法,其特征在于,包括以下步骤:/nS11、动态运行和遍历待识别的安卓应用,获取安卓应用运行时的界面状态转换图;其中,界面状态转换图包括:安卓应用运行过程中的界面、触发界面状态转换的操作事件和界面组件树信息;/nS12、从界面状态转换图中选取一个未识别的界面作为当前界面;/nS13、采用预训练好的广告目标检测模型检测当前界面中的广告及其所在的位置,若未检测到,则当前界面不存在流氓广告,转至步骤S15;否则,基于广告所在的位置,从当前界面中提取出各广告后,转至步骤S14;/nS14、判断当前界面中的广告是否为包含诱导点击内容的广告、包含覆盖可点击组件的广告以及应用退出时的广告中的至少一种类型的广告,若是,则判定该安卓应用存在流氓广告,识别结束;否则,该界面不存在流氓广告,转至步骤S15;/nS15、判断是否已完成对界面状态转换图中的所有界面的流氓广告识别,若是,转至步骤S16,否则,转至步骤S12;/nS16、若安卓应用运行过程中的所有界面均不存在流氓广告,则该安卓应用不存在流氓广告;否则,该安卓应用存在流氓广告;/n其中,广告目标检测模型为RetinaNe ...
【技术特征摘要】
1.一种安卓应用流氓广告的识别方法,其特征在于,包括以下步骤:
S11、动态运行和遍历待识别的安卓应用,获取安卓应用运行时的界面状态转换图;其中,界面状态转换图包括:安卓应用运行过程中的界面、触发界面状态转换的操作事件和界面组件树信息;
S12、从界面状态转换图中选取一个未识别的界面作为当前界面;
S13、采用预训练好的广告目标检测模型检测当前界面中的广告及其所在的位置,若未检测到,则当前界面不存在流氓广告,转至步骤S15;否则,基于广告所在的位置,从当前界面中提取出各广告后,转至步骤S14;
S14、判断当前界面中的广告是否为包含诱导点击内容的广告、包含覆盖可点击组件的广告以及应用退出时的广告中的至少一种类型的广告,若是,则判定该安卓应用存在流氓广告,识别结束;否则,该界面不存在流氓广告,转至步骤S15;
S15、判断是否已完成对界面状态转换图中的所有界面的流氓广告识别,若是,转至步骤S16,否则,转至步骤S12;
S16、若安卓应用运行过程中的所有界面均不存在流氓广告,则该安卓应用不存在流氓广告;否则,该安卓应用存在流氓广告;
其中,广告目标检测模型为RetinaNet网络。
2.根据权利要求1所述的安卓应用流氓广告的识别方法,其特征在于,所述RetinaNet网络的主干网络为Xception网络。
3.根据权利要求1所述的安卓应用流氓广告的识别方法,其特征在于,所述步骤S1中,采用深度优先遍历策略动态运行安卓应用,遍历过程中不执行包含“更新”或“升级”含义文本的组件对应的操作事件,并记录界面状态转换图。
4.根据权利要求1所述的安卓应用流氓广告的识别方法,其特征在于,在判断当前界面上的广告是否为包含诱导点击内容的广告时,采用图像文字识别API识别当前界面各广告中的文字,得到广告语,并输入到预训练好的广告语分类模型中,判断广告语是正常广告语还是包含诱导点击内容的广告语;若各广告语中至少有一个是包含诱导点击内容的广告语,则判定当前界面上的广告为包含诱导用户点击内容的流氓广告;否则,当前界面上的广告不为包含诱导用户点击内容的流氓广告;
其中,广告语分类模型为基于词向量的文本分类模型,用于将广告语分类为正常广告语和包含诱导点击内容的广告语。
5.根据权利要求1所述的安卓应用流氓广告的识别方法,其特征在于,判断当前界面上的广告是否为包含覆盖可点击组件的广告的方法,包括以下步骤:
S1411、根据当前界面组件树信息提取当前界面的组件特征后,将其输入预训练好的弹框界面分类器中,判断当前界面是否为弹框界面;若是,则转至步骤S1412;否则,当前界面上的广告不为包含覆盖可点击组件的广告,操作结束;
S1412、若当前界面上至少存在一个占据该界面面积比例大于预设比例的广告,则转至步骤S1413,否则,当前界面上的广告不为包含覆盖可点击组件的广告,操作结束;
S1413、若界面状态转换图中存在当前界面的下一个界面,且下一个界面的ID与当前界面的ID不同,则转至步骤S1414;否则,当前界面上的广告不为包含覆盖可点击组件的广告,操作结束;
S1414、按照步骤S1411所述的方法判断下一个界面是否为弹框界面,若是弹框界面,则转至步骤S1415;否则,当前界面上的广告不为包含覆盖可点击组件的广告,操作结束;
S1415、根据下一个界面组件树信息,若下一个界面中至少包含一个可点击组件,则当前界面上的广告为包含覆盖可点击组件的广告;否则,当前界面上的广告不为包含覆盖可点击组件的广告。
6.根据权利要求1所述的安卓应用流氓广告的识别方法,其特征在于,判断当前界面上的广告是否为应用退出时的广告的方法,包括以下步骤:
S1421、尝试在界面状态转换图中获取当前界面之前的第一个界面,若存在这样一个界面,且当前界面之前的第一个界面中存在包含“退出”含义文本的组件,则转至步骤S1422,否则,当前界面上的广告不为应用退出时的广告,操作结束;
S1422、尝试在界面状态转换图中获取当前界面之前的第二个界面,若存在这样一个界面,且当前界面之前的第二个界面的ID与当前界面的ID不同,则当前界面上的广告为应用退出时的广告,否则,当前界面上的广告不为应用退出时的广告。
7.一种安卓应用流氓弹...
【专利技术属性】
技术研发人员:李瑞轩,张双敏,辜希武,李玉华,汤俊伟,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:湖北;42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。