一种评估应用数据安全风险的方法及装置的制造方法

文档序号:9888024阅读:196来源:国知局
一种评估应用数据安全风险的方法及装置的制造方法
【技术领域】
[0001] 本发明涉及数据安全技术领域,特别涉及一种评估应用数据安全风险的方法及装 置。
【背景技术】
[0002] 随着移动互联网的快速发展,目前移动智能终端已越来越普及,据相关数据报告, 2013年第四季度中国活跃的智能设备数量超过7亿,其中基于Android(安卓)操作系统 的移动终端设备已占据了超过80%的市场份额。Android操作系统的广泛使用也带动了 Android应用市场的繁荣发展,截止目前GooglePlay官方市场上的应用已过百万。
[0003] 然而Android应用开发者的安全意识并没有跟上应用发展的步伐,导致应用可以 被破解篡改,插入恶意广告插件,应用自身存储和处理的用户数据(包括用户使用应用过 程中输入的用户名、密码、银行卡号、手机号等)泄露等等诸多安全问题。目前使用最广泛 的解决方案是在应用被攻击利用后,通过恶意软件检测工具(例如手机安全软件)进行查 杀,或是在手机上对应用的敏感行为进行监控。但追根究底,一方面原因是Android本身安 全机制的不足,另一方面是由于应用开发者疏忽导致的Android应用本身存在的可被利用 的安全问题。因此需要通过对应用进行安全评估,发现移动应用中存在的安全风险,帮助提 升应用本身的安全性。
[0004] 针对应用的安全评估主要可分为代码安全(程序代码可被破解、可读性较强等)、 数据安全(应用在存储、读取、显示用户输入的数据时,可能导致的数据泄露)、通讯安全 (通讯过程中敏感数据的传输安全性分析)和业务安全(业务逻辑安全性分析)四类,目前 主要通过手工测试完成评估,需要耗费大量人工时间,且由于文件内容查找和过滤的流程 相对固定,操作内容比较重复。互联网上提供的应用自动安全评估服务,只支持代码安全方 面安全风险的发现,例如是否可被篡改、代码是否混淆等,多是通过自动代码漏洞静态扫描 完成,无法扫描出应用使用过程中用户所输入的敏感数据(例如用户名、密码等)的明文或 简单处理后存储在本地等问题。然而依据对应用安全评估的经验数据,多数应用中存在数 据安全方面的风险问题,应用存在这种数据安全风险,可以使得攻击者很容易的获取到用 户在使用应用过程中输入的敏感数据,用于不法行为中。
[0005] 经过对现有技术的文献检索发现,Android应用的数据风险方面多是检测应用未 经用户允许窃取通讯录、短信等手机系统中的隐私数据,例如,一种Android应用程序隐私 数据泄露离线检测方法,提出了一种通过定制基于动态污点检测的Android系统,为不同 类型的隐私数据添加相应的污点标签,检测Android应用程序隐私数据泄露的方法。该方 法通过修改Android系统源代码中的隐私数据存储机制,增加一位或多位空间用于存储污 点标签;为不同类型的隐私数据(如联系人、短信、通话记录、IMEI (International Mobile Equipment Identity,移动设备国际身份码)、手机号码等)添加相应的污点标签;在定制 系统中安装并运行待测APK(Android Package的缩写,即Android安装包)中的应用程 序,通过自动化测试脚本自动遍历应用程序中的控件;跟踪污点标签传播,在系统边界(短 信、文件、网络的数据出口)检测所传输的数据是否带有污点标签,记录隐私数据泄露的内 容和途径(如短信息、彩信、网络数据发送以及文件写入),供测试人员进一步分析提供参 考。但该方案需要修改应用所运行的Android系统,为所有的待匹配的隐私数据添加污点 标签,并为每一个待测应用编写自动化测试脚本(每个应用的测试脚本不同,无法复用), 这些运行环境上的准备都需要耗费大量时间、人力等资源,对运行环境进行了限定;且该方 案的隐私数据是指手机上用户存储的短信、通讯录等数据,主要为检测应用进行的隐私窃 取的恶意行为,无法发现应用存在的数据安全风险。

【发明内容】

[0006] 本发明要解决的技术问题是提供一种评估应用数据安全风险的方法及装置,用以 解决现有的通过手工测试完成评估,需要耗费大量人工时间,且由于文件内容查找和过滤 的流程相对固定,操作内容比较重复的问题。
[0007] 为了解决上述技术问题,本发明实施例提供一种评估应用数据安全风险的方法, 包括:
[0008] 获取输入应用中的第一字串数据;
[0009] 根据所述第一字串数据生成敏感数据特征库;
[0010] 获取应用运行时产生文件修改的第一文件列表信息;
[0011] 根据所述第一文件列表信息生成本地存储字串库;
[0012] 将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项 及所述风险项对应的风险值。
[0013] 进一步地,所述获取输入应用中的第一字串数据的步骤包括:
[0014] 从预设目录下的保存键盘输入监听结果的文件中获取输入应用中的第一字串数 据。
[0015] 进一步地,所述根据所述第一字串数据生成敏感数据特征库的步骤包括:
[0016] 将所述第一字串数据进行去重处理,生成第二字串数据;
[0017] 将所述第二字串数据进行变形处理,得到第三字串数据;
[0018] 根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
[0019] 进一步地,所述获取应用运行时产生文件修改的第一文件列表信息的步骤包括:
[0020] 从预设目录下的保存文件操作运行监听结果的文件中获取应用运行时产生文件 修改的第一文件列表信息,所述第一文件列表信息中包含:修改的文件对应的路径信息。
[0021] 进一步地,所述根据所述第一文件列表生成本地存储字串库的步骤包括:
[0022] 获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表 信息中包含的数据库中的第二内容;
[0023] 将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
[0024] 进一步地,所述将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输 入数据的风险项及所述风险项对应的风险值的步骤包括:
[0025] 在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据 泄露点信息;
[0026] 对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的 风险项信息;
[0027] 计算所述风险项信息中的每个风险项对应的风险值。
[0028] 进一步地,所述计算所述风险项信息中的每个风险项对应的风险值的步骤包括:
[0029] 计算得到每个风险项中的各个敏感数据泄露点的风险权值;
[0030] 将所述敏感数据泄露点的风险权值相加得到所述风险项的风险值。
[0031] 进一步地,所述计算得到每个风险项中的各个敏感数据泄露点的风险权值的步骤 包括:
[0032] 依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值X用户敏感数据 字串变形类型权值X存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中 的各个敏感数据泄露点的风险权值。
[0033] 本发明实施例提供一种评估应用数据安全风险的装置,包括:
[0034] 第一获取模块,用于获取输入应用中的第一字串数据;
[0035] 第一生成模块,用于根据所述第一字串数据生成敏感数据特征库;
[0036] 第二获取模块,用于获取应用运行时产生文件修改的第一文件列表信息;
[0037] 第二生成模块,用于根据所述第一文件列表信息生成本地存储字串库;
[0038] 匹配获取模块,用于将所述敏感数据特征库与所述本地存储字串库进行匹配,获 取输入数据的风险项及所述风险项对应的风
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1