SCI论文(www.lunwensci.com)
摘 要 :随着移动互联网的迅猛发展,我国 App 数量和用户规模激增,极大便利了用户的生产生活。但另一方面, App 个 人信息收集过度现象普遍,因此加强 App 所涉个人信息保护迫在眉睫。本文提出一种基于机器学习的 Android App 违规收集个人 信息行为的检测方法,对 App 违规行为进行评估,能够有效地对 Android App 合规性进行检测,节约人工成本,提升检测效率。
关键词:App,个人信息,行为特征,机器学习
Research on Detection Method of Android App's Illegal Collection of Personal Information Based on Machine Learning
ZHANG Xiaoqing, ZHU Shaochi, LI Kai
(National Computer Network Emergency Response Technical Team/Coordination Center of Liaoning, Shenyang Liaoning 110036)
【Abstract】: With the rapid development of mobile Internet, the number of App and the scale of users in China have increased sharply, which greatly facilitates the production and life of users. However, on the other hand, the phenomenon of excessive collection of App personal information is common, so it is urgent to strengthen the protection of App related personal information. This paper proposes a detection method for Android App's illegal collection of personal information based on machine learning, which can effectively detect Android App's compliance, save labor costs and improve detection efficiency.
【Key words】: App;personal information;behavioral characteristics;machine learning
0 引言
国家出台的《中华人民共和国个人信息保护法》《信 息安全技术移动互联网应用(App) 收集个人信息基本 规范》等法律法规为开展 App 个人信息保护工作提供 了法律依据和准则,促进 App 行业发展与个人信息权 利保护齐头并进已成为社会发展趋势。针对应用广泛、 种类繁多的 App,急需一套高效检测和评估方法开展 App 个人信息使用收集合法合规性检测。
1 现状及信息违规收集分类研究
个人信息的泄露不但会让用户的隐私权受到严重侵 犯,还会让用户更容易受到诈骗、诱导的威胁,造成经 济损失。《2019 年中国网民信息安全状况研究报告》数据显示,在被调查的网民中, 77.7% 表示曾遇到过个人 信息泄露等信息安全事件,其中一部分人甚至因为个人 信息泄露导致直接或间接经济损失,总额为 194 亿元左 右 [1]。2018 年的调查报告《App 个人信息泄露情况调查 报告》数据显示,在被调查网民中,出现过 App 恶意收集 用户个人信息并泄露的人数占比高达 85.2%[2]。个人信息 泄露主要是 3 个方面 :(1) App 开发者或经营者收集一些 非使用 App 所必要的客户信息,如短信、通讯录(通话记 录)、相册、摄像头等,该类受害者占比为 26.2% ;(2)部 分 App 在未告知用户或未经用户同意的情况下恶意收集用 户隐私信息,该类情况情节比较严重,同时受害者也是最 多的,受害者占比为 62.6% ;(3) App 经营者或者不法分子不遵守隐私保护政策相关规定,故意泄露或者出售 用户个人信息的,情节最为严重,涉及违法,受害者占 比为 60.6%。当这些用户的个人信息被侵犯和泄露之后, 被调查的网民中有 86.5% 的人表示曾收到过推销电话或 者推广短信,甚至部分受访者收到过诈骗电话,占比高 达 75%[3]。由以上数据可以看出, 目前国内的 App 违法 违规手机用户个人信息的情况十分普遍,亟需整改。
2 检测方法研究
将机器学习理论应用于 App 行为检测中,首先选取 机器学习理论中的决策树和支持向量机作为识别模型,然 后对的 App 样本和其他样本的静态分析特征和动态行为 特征进行提取,将这些特征输入到模型中进行训练,同 时对模型的超参数进行调整,最后得到一个训练后的模 型 [4]。本文提出一套动静态分析与机器学习结合的基于 Android App 行为的检测框架,采用半自动化和部分人工 介入的方式,针对 Android App 收集隐私的行为进行检 测,并根据行为特征进行评估,判断 App 违规行为程度。
2.1 基于 Android App 行为检测算法
2.1.1 建立 Android App 行为检测框架
由于目前国内的各种 App 获取用户信息的目的和使 用方法都不一样,因此为了判断一个 App 行为是否规范, 可以通过机器学习的方法,利用技术手段从现有的 App 样本中分析其是否具有相应的行为特征。App 行为分析的 框架是利用机器学习具有处理同类事件的泛化能力, 方法 是从 App 样本中选取一部分作为训练集,另一部分作为 实验集,在对两个样本 App 行为特征进行分析之后找到 相同特征之后,将这些特征作为该维度的特征向量,并建 立分类模型,然后用试验集分析评估训练集的分类模型。 这里选择决策树模型作为 Android App 行为检测框架。
2.1.2 模型的前期训练
采用基于 ID3 决策树的 App 行为检测算法,首先 需要选取 n 个 App 样本,其次是对样本特征的进行分 析。通过 Smali 格式反汇编代码分析对 APK 的文件进 行分析检测,通过对样本行为特征的提取和对于 API 接 口的调试监测,确保样本行为被准确监测和覆盖。将 APK 反编译未 Smali 文件,抽取出关键 AOI 函数调用 序列,与已知库中基于行为的 API 函数调用进行对比, 判断出现某种行为的代码段及类文件 [5]。
静态检测 :通过自动化工具 ApkTool 提取 APK 文件 中的 AndroidMainfest.xml 文件以及 DEX 可执行文件 Classes.dex 文件, 将 EDX 文件分编译为 Smali 文件, 将 其作为特征提取输入数据 [6]。利用正则表达式、词法语法 分析、控制流分析、API 接口分析等方法,将 Smali 文件 中代码按照预设的规则提取,分析识别 App 行为,获取样本各项静态属性 [7], 如获取的样本名称、是否存在隐私 协议、是否默认勾选隐私协议、是否获取位置信息等 ;
动态检测 :通过反编译 system.img 等文件中相关 类、库添加敏感 API 调用输出日志,利用 Appium 自 动化测试框架运行样本,通过对 API 的调用日志分析, 精准监控 App 行为特征,有效获知 App 行为如 :网络 行为、索要权限信息、通讯录获取、通话记录获取、是 否回传个人隐私信息等 [8]。
样本的分析工作可以由以上任意一种、两种或三种 模式组成,最终得到样本的特征。设共有 m 个特征, 因而可以得到数据矩阵 Data(n×m)。
得到样本的特征后,参照《App 违法违规收集使用 个人信息行为认定方法》,根据 App 获取信息及其使用 情况等特征来判断 App 违法违规收集使用个人信息行 为。对 n 个样本进行标记,即 App 违法违规收集使用 个人信息行为,从而得到标记矩阵 :Label(n×1)。
2.1.3 使用数据矩阵和标记矩阵,构建决策树模型
决策树的搜索过程 [9] 即是分析 App 是否违法违规 收集使用个人信息行为的过程。在决策树模型中, App 的行为特征就是决策树的搜索空间,这些行为特征构成 了决策树的非叶子节点,而判定结果就是叶子节点。根 节点通过真或假两个属性判断 App 行为特征,进而就 可以把所有样本分为两个子树,子树的候选特征集中将 不含根节点代表的特征。如此对左右子树进行递归计算 就得出了剩余的非叶子节点的属性集。
2.1.4 App 行为检测的预测实现
选取待测的 App 样本后,一定时间 t 内,通过样本 分析,获得 App 的 m 个特征值,得到矩阵 A。通过矩 阵 A,以及之前训练好的决策树模型,可以得到该样本 标记的预测,即该 App 样本是否为存在违规收集使用 个人信息行为。
2.2 App 行为风险计算评估
2.2.1 行为特征评价矩阵的确定
针对上文 6 类行为特征,在一定时间 t 内,进行动 态分析,将得到的 App 的动态行为记录并进行统计。 该段时间内,设某一特定行为出现的次数为 u,行为总 数为 v,则 u/v 即可得到特定行为发生的概率。分别计 算各类行为的概率,并为行为影响力的权重进行赋值, 可得到 App 评价矩阵,如表 1 所示。
2.2.2 行为特征风险分数的计算
利用得到的行为特征评价矩阵I 及隶属矩阵P,可以得到针对 App 每类行为特征的风险分数。计算公式如 式(1)所示 :
2.2.3 行为特征风险评价的实施
得到了 App 六类违规行为的特征风险分数矩阵 R。 为了对 App 的行为特征进行风险评价,再确定一个针 对上述 6 类行为的评价权重矩阵 M 如式(2)所示 :
3 结语
本文提出的以决策树方法为模型构建的基于机 器学习的 Android App 异常行为检测算法实现了对 Android App 违规收集用户个人信息行为的监测和分 析,进而生成风险监测报告,实现了 App 违法违规使 用和收集的个人信息自动化检测方式,提高检测效率, 减少人工分析成本。但对于 Android App 违法违规收 集个人信息检测方式目前还不能实现完全自动化,仍需 要进行人工校验。同时本文所提到的机器学习训练样本 需要提取大量的样本特征值方可保证检测结果的准确 性。在下一步工作中,计划探索跨平台针对 iOS App 等多平台 App 的行为特征提取,不断完善检测算法, 进一步提升检测算法的深度与广度,早日实现高效、准 确的多维度 App 异常行为检测。
参考文献
[1] 齐志明,陈星月.拧紧个人信息保护阀[J].理财(经论),2019 (2):10-12.
[2] 孔祥仝.App个人信息泄露情况调查报告[J].中国宽带,2022 (2):39-40.
[3] 李悦.中国网民信息安全状况研究[J].合作经济与科技,2021 (5):182-183.
[4] 鲍美英.基于改进决策树分类的Android恶意软件检测[J]. 软件,2017.38(2):33-36.
[5] 文伟平,汤炀,谌力.一种基于Android内核的App敏感行为 检测方法及实现[J].信息网络安全,2016(8):18-23.
[6] 黄俊强.基于Android应用程序恶意行为逆向检测技术研究 [D].哈尔滨:哈尔滨工程大学,2017.
[7] 张丽.代码静态分析工具的能力评估与集成优化技术研究 [D].长沙:国防科学技术大学,2017.
[8] 赵一凡,曹晨业,刘斌,等.移动App个人信息安全检测分析 [J].信息化建设,2021(5):62-63.
[9] 罗芳,李志亮.基于分类的机器学习方法中的决策树算法[J]. 宁德师专学报(自然科学版),2009.21(1):40-42.
关注SCI论文创作发表,寻求SCI论文修改润色、SCI论文代发表等服务支撑,请锁定SCI论文网!
文章出自SCI论文网转载请注明出处:https://www.lunwensci.com/jisuanjilunwen/53967.html