CN105653947B - 一种评估应用数据安全风险的方法及装置 - Google Patents

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

Info

Publication number
CN105653947B
CN105653947B CN201410642187.5A CN201410642187A CN105653947B CN 105653947 B CN105653947 B CN 105653947B CN 201410642187 A CN201410642187 A CN 201410642187A CN 105653947 B CN105653947 B CN 105653947B
Authority
CN
China
Prior art keywords
data
word string
risk
sensitive data
sensitive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410642187.5A
Other languages
English (en)
Other versions
CN105653947A (zh
Inventor
刘颖卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201410642187.5A priority Critical patent/CN105653947B/zh
Publication of CN105653947A publication Critical patent/CN105653947A/zh
Application granted granted Critical
Publication of CN105653947B publication Critical patent/CN105653947B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种评估应用数据安全风险的方法及装置。所述方法,包括:获取输入应用中的第一字串数据;根据所述第一字串数据生成敏感数据特征库;获取应用运行时产生文件修改的第一文件列表信息;根据所述第一文件列表信息生成本地存储字串库;将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值。上述方案,通过自动化的生成敏感数据特征库,收集存储内容,并进行匹配,替代了大量重复的人工工作,降低了应用数据安全评估的成本。

Description

一种评估应用数据安全风险的方法及装置
技术领域
本发明涉及数据安全技术领域,特别涉及一种评估应用数据安全风险的方法及装置。
背景技术
随着移动互联网的快速发展,目前移动智能终端已越来越普及,据相关数据报告,2013年第四季度中国活跃的智能设备数量超过7亿,其中基于Android(安卓)操作***的移动终端设备已占据了超过80%的市场份额。Android操作***的广泛使用也带动了Android应用市场的繁荣发展,截止目前GooglePlay官方市场上的应用已过百万。
然而Android应用开发者的安全意识并没有跟上应用发展的步伐,导致应用可以被破解篡改,***恶意广告插件,应用自身存储和处理的用户数据(包括用户使用应用过程中输入的用户名、密码、银行***、手机号等)泄露等等诸多安全问题。目前使用最广泛的解决方案是在应用被攻击利用后,通过恶意软件检测工具(例如手机安全软件)进行查杀,或是在手机上对应用的敏感行为进行监控。但追根究底,一方面原因是Android本身安全机制的不足,另一方面是由于应用开发者疏忽导致的Android应用本身存在的可被利用的安全问题。因此需要通过对应用进行安全评估,发现移动应用中存在的安全风险,帮助提升应用本身的安全性。
针对应用的安全评估主要可分为代码安全(程序代码可被破解、可读性较强等)、数据安全(应用在存储、读取、显示用户输入的数据时,可能导致的数据泄露)、通讯安全(通讯过程中敏感数据的传输安全性分析)和业务安全(业务逻辑安全性分析)四类,目前主要通过手工测试完成评估,需要耗费大量人工时间,且由于文件内容查找和过滤的流程相对固定,操作内容比较重复。互联网上提供的应用自动安全评估服务,只支持代码安全方面安全风险的发现,例如是否可被篡改、代码是否混淆等,多是通过自动代码漏洞静态扫描完成,无法扫描出应用使用过程中用户所输入的敏感数据(例如用户名、密码等)的明文或简单处理后存储在本地等问题。然而依据对应用安全评估的经验数据,多数应用中存在数据安全方面的风险问题,应用存在这种数据安全风险,可以使得攻击者很容易的获取到用户在使用应用过程中输入的敏感数据,用于不法行为中。
经过对现有技术的文献检索发现,Android应用的数据风险方面多是检测应用未经用户允许窃取通讯录、短信等手机***中的隐私数据,例如,一种Android应用程序隐私数据泄露离线检测方法,提出了一种通过定制基于动态污点检测的Android***,为不同类型的隐私数据添加相应的污点标签,检测Android应用程序隐私数据泄露的方法。该方法通过修改Android***源代码中的隐私数据存储机制,增加一位或多位空间用于存储污点标签;为不同类型的隐私数据(如联系人、短信、通话记录、IMEI(International MobileEquipment Identity,移动设备国际身份码)、手机号码等)添加相应的污点标签;在定制***中安装并运行待测APK(Android Package的缩写,即Android安装包)中的应用程序,通过自动化测试脚本自动遍历应用程序中的控件;跟踪污点标签传播,在***边界(短信、文件、网络的数据出口)检测所传输的数据是否带有污点标签,记录隐私数据泄露的内容和途径(如短信息、彩信、网络数据发送以及文件写入),供测试人员进一步分析提供参考。但该方案需要修改应用所运行的Android***,为所有的待匹配的隐私数据添加污点标签,并为每一个待测应用编写自动化测试脚本(每个应用的测试脚本不同,无法复用),这些运行环境上的准备都需要耗费大量时间、人力等资源,对运行环境进行了限定;且该方案的隐私数据是指手机上用户存储的短信、通讯录等数据,主要为检测应用进行的隐私窃取的恶意行为,无法发现应用存在的数据安全风险。
发明内容
本发明要解决的技术问题是提供一种评估应用数据安全风险的方法及装置,用以解决现有的通过手工测试完成评估,需要耗费大量人工时间,且由于文件内容查找和过滤的流程相对固定,操作内容比较重复的问题。
为了解决上述技术问题,本发明实施例提供一种评估应用数据安全风险的方法,包括:
获取输入应用中的第一字串数据;
根据所述第一字串数据生成敏感数据特征库;
获取应用运行时产生文件修改的第一文件列表信息;
根据所述第一文件列表信息生成本地存储字串库;
将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值。
进一步地,所述获取输入应用中的第一字串数据的步骤包括:
从预设目录下的保存键盘输入监听结果的文件中获取输入应用中的第一字串数据。
进一步地,所述根据所述第一字串数据生成敏感数据特征库的步骤包括:
将所述第一字串数据进行去重处理,生成第二字串数据;
将所述第二字串数据进行变形处理,得到第三字串数据;
根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
进一步地,所述获取应用运行时产生文件修改的第一文件列表信息的步骤包括:
从预设目录下的保存文件操作运行监听结果的文件中获取应用运行时产生文件修改的第一文件列表信息,所述第一文件列表信息中包含:修改的文件对应的路径信息。
进一步地,所述根据所述第一文件列表生成本地存储字串库的步骤包括:
获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表信息中包含的数据库中的第二内容;
将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
进一步地,所述将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值的步骤包括:
在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据泄露点信息;
对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的风险项信息;
计算所述风险项信息中的每个风险项对应的风险值。
进一步地,所述计算所述风险项信息中的每个风险项对应的风险值的步骤包括:
计算得到每个风险项中的各个敏感数据泄露点的风险权值;
将所述敏感数据泄露点的风险权值相加得到所述风险项的风险值。
进一步地,所述计算得到每个风险项中的各个敏感数据泄露点的风险权值的步骤包括:
依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值×用户敏感数据字串变形类型权值×存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中的各个敏感数据泄露点的风险权值。
本发明实施例提供一种评估应用数据安全风险的装置,包括:
第一获取模块,用于获取输入应用中的第一字串数据;
第一生成模块,用于根据所述第一字串数据生成敏感数据特征库;
第二获取模块,用于获取应用运行时产生文件修改的第一文件列表信息;
第二生成模块,用于根据所述第一文件列表信息生成本地存储字串库;
匹配获取模块,用于将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值。
进一步地,所述第一生成模块,包括:
第一处理单元,用于将所述第一字串数据进行去重处理,生成第二字串数据;
第二处理单元,用于将所述第二字串数据进行变形处理,得到第三字串数据;
第一生成单元,用于根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
进一步地,所述第二生成模块,包括:
第一获取单元,用于获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表信息中包含的数据库中的第二内容;
第二生成单元,用于将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
进一步地,所述匹配获取模块,包括:
查找单元,用于在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据泄露点信息;
统计单元,用于对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的风险项信息;
计算单元,用于计算所述风险项信息中的每个风险项对应的风险值。
进一步地,所述计算单元,包括:
第一计算子单元,用于计算得到每个风险项中的各个敏感数据泄露点的风险权值;
第二计算子单元,用于将所述敏感数据泄露点的风险权值相加得到所述风险项的风险值。
进一步地,所述第一计算子单元依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值×用户敏感数据字串变形类型权值×存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中的各个敏感数据泄露点的风险权值。
本发明的有益效果是:
上述方案,通过自动化的生成敏感数据特征库,收集本地存储内容,并将敏感数据特征库内容与本地存储内容进行匹配,替代了大量重复的人工工作,节省了评估时间,同时降低了应用数据安全评估的成本。
附图说明
图1表示本发明实施例的所述评估应用数据安全风险的方法的总体流程图;
图2表示本发明实施例的所述评估应用数据安全风险的方法的详细流程图;
图3表示本发明实施例的所述评估应用数据安全风险的装置的模块示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
本发明针对现有的通过手工测试完成评估,需要耗费大量人工时间,且由于文件内容查找和过滤的流程相对固定,操作内容比较重复的问题,提供一种评估应用数据安全风险的方法及装置。
如图1所示,本发明实施例的所述评估应用数据安全风险的方法,包括:
步骤10,获取输入应用中的第一字串数据;
步骤20,根据所述第一字串数据生成敏感数据特征库;
步骤30,获取应用运行时产生文件修改的第一文件列表信息;
步骤40,根据所述第一文件列表信息生成本地存储字串库;
步骤50,将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值。
本发明上述实施例通过自动化的生成敏感数据特征库,收集本地存储内容,并将敏感数据特征库内容与本地存储内容进行匹配,替代了大量重复的人工工作,节省了评估时间,同时降低了应用数据安全评估的成本。
应当说明的是,本发明可在任意Android操作***上进行,在Android操作***中,运行文件操作监听程序,监听内容包括待测应用程序进行期间,待测应用程序创建和修改文件的操作及相应的文件路径;运行键盘输入监听程序,监听内容为待测应用程序运行期间,在待测应用程序界面上输入的数据,不同单个字串间通过换行或确定等操作来进行区分。文件操作和键盘输入监听结果分别存储至手机指定目录下的FileOp.txt和KeyInput.txt文件中。
具体地,监听文件操作的方法可使用Linux内核的Inotify(Inotify是一个Linux特性,它监控文件***操作,比如读取、写入和创建)机制来实现。首先定义Android提供的FileObserver类的子类,实现FileObserver类的onEvent抽象方法。定义子类对象时将监听目录设置为整个SD卡目录,当SD卡目录下文件发生变更事件时,将回调FileObserver的onEvent(int paramInt,String paramString)函数,其中参数paramInt为文件的操作类型(创建、删除等),参数paramString为有变更的文件的路径;
键盘输入的监听方法可通过读取键盘输入事件记录来实现。输入事件记录在“/dev/input/event0”文件中,循环读取其中的事件记录结构体struct input_event(包括按键类型和按键值),可获得监听过程中所有的按键输入。
在安装完待测应用程序后,依据应用功能,人工遍历程序所有可以输入用户敏感数据的控件,进行数据输入操作,输入的数据最好具备一定的可识别性,例如,最好不要使用随意的乱码组合或单个的数字等,用户敏感数据的限定范围为:该数据是由用户使用时主动输入生成的,且无法复用至其他用户的该应用中,例如用户名、密码、身份证号、手机号、聊天记录、好友列表等。
在从预设目录下的保存键盘输入监听结果的文件(KeyInput.txt文件)中获取输入应用中的第一字串数据后,本发明另一实施例中,所述步骤20包括:
步骤21,将所述第一字串数据进行去重处理,生成第二字串数据;
步骤22,将所述第二字串数据进行变形处理,得到第三字串数据;
步骤23,根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
在读取KeyInput.txt文件中的所有内容后,对所有字串进行去重处理,即从第一个字串开始向后循环执行搜索操作,搜索剩余字串中是否存在相同的字串,若存在则删除,删除掉字串数据中完全重复的单个字串,得到第二字串数据(即用户输入字串数据a)。
因在应用程序运行过程中,应用程序或***本身为了使得传输的数据更安全,可能会对用户输入的数据进行加密处理,因此,在本发明中在获取得到用户输入字串数据a后,还会对a进行变形处理,这里变形处理即为对用户输入字串数据a的加密处理,例如可以把用户输入字串数据a进行BASE64(最常见的用于传输8Bit字节代码的编码方式之一)加密处理得到字串b,或对用户输入字串数据a进行MD5(Message-Digest Algorithm 5即信息-摘要算法5)加密处理形成字串c,将a、b和c一起存储起来形成用户敏感数据特征库,并且记录字串b和c中每个字串在a中对应的原始字串数据。应当说明的是,此处的变形处理,不仅限于BASE64处理和MD5处理。操作举例如下:
用户输入字串a为“13512341234”,经过BASE64加密处理形成字串b“MTM1MTIzNDEyMzQ=”,经过MD5加密处理形成字串c“0ADCA3220B1B907805CCD70D110BF38A”,用户敏感数据特征库中的存储内容如表1和表2所示。
评估应用唯一标识编号 原始字串唯一标识编号 原始字串
1 1 13512341234
…… …… ……
表1原始字串库
表2变形字串库
在形成敏感数据特征库后,还需要本地存储字串库才能完成应用数据安全风险的评估,因此,本发明中,在从预设目录下的保存文件操作运行监听结果的文件(FileOp.txt)中获取应用运行时产生文件修改的第一文件列表信息(所述第一文件列表信息中包含:修改的文件对应的路径信息)后,所述步骤40包括:
步骤41,获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表信息中包含的数据库中的第二内容;
步骤42,将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
在进行文件内容读取时,首先要检查存在于FileOp.txt中的文件列表中的文件是否存在,删掉不存在的文件路径信息,得到文件列表数据d,依据文件列表数据d,从***中将文件中的可读性内容(可读性内容是指可通过***函数打开的文件的内容,不包含无法打开的文件数据)提取出来,存储至本地存储字串库,存储的内容包含提取的内容字串及相对应的文件路径,文件可读性内容提取方法为调用FileInputStream类的read函数,将从文件列表数据d中读取的文件路径作为输入参数,读取文件中的所有内容。
应当说明的是,本地存储字串库中还包括:待测应用程序的数据库文件中的所有字段数据,存储的内容包含提取的内容字串及相对应的数据库文件名、表名,应当说明的是,在现有的Android***中,可能会监听不出具体修改的是数据库中的哪个表中的数据,因此,数据库文件字段数据读取方法为遍历***目录下/data/data/应用包名(例如com.tencent.qq)/databases下(此路径为应用程序的数据库文件的固定存储路径)的所有数据库文件(.db文件),使用android.database.sqlite.SQLiteOpenHelper类读取文件中的所有表及内容。
在得到本地存储字串库和敏感数据特征库后,便是二者的相互匹配,因此本发明实施例的所述步骤50包括:
步骤51,在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据泄露点信息;
步骤52,对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的风险项信息;
步骤53,计算所述风险项信息中的每个风险项对应的风险值。
应当说明的是,将用户敏感数据特征库中的字串以及敏感关键词(所述敏感关键词为预先设置存储的,它是应用存储用户隐私时可能使用到的字段名称,举例如表3所示)作为匹配的对标字串内容,在本地存储字串库中进行一一查找,将查找到的数据并且对应到敏感关键词一起输出形成敏感数据泄露点列表(因对输入的数据进行存储时,对存储的每一项都会设置相应的标记,提取此标记便能得到存储的每项字串对应的敏感关键词),每一个泄露点信息包含:泄露点唯一标识编号(可以通过自动编号的方式形成)、匹配到的用户敏感数据字串、匹配到的用户敏感数据字串的变形类型、原始的用户特征字串、匹配到的本地存储内容字串、匹配到的敏感关键词、内容字串所存储的文件路径或数据库文件名及表名、相应的泄露点信息对应的权值。
所述泄露点信息对应的权值的计算,依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值×用户敏感数据字串变形类型权值×存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中的各个泄露点的风险权值;应当说明的是,所述敏感关键词权值、用户敏感数据字串变形类型权值和文件类型权值均为预先规定并存储的数据,具体的权值规定方法举例说明如下:敏感关键词权值依据关键词的重要程度划分,例如密码为最高分,其他内容为最低分;用户敏感数据字串类型权值依据变形处理的还原难度划分,例如未变形为最高分,MD5为最低分;文件类型权值依据文件的读取难度划分,例如直接存储在SD卡目录下的文件为最高分,存储在数据库文件中为最低分。
类型 关键词
password 密码
password mima
password password
password passwd
username 用户名
card_no 银行***
ID 身份证号
other 姓名
other 性别
…… ……
表3敏感关键词存储表
在得到敏感数据泄露点列表后,需要对所述敏感数据泄露点列表中的数据泄露点依据敏感关键词进行归类,输出相关风险项,所述风险项即为敏感关键词对应的风险项;然后将每个风险项中的敏感数据泄露点的权值相加便得到了所述风险项对应的风险值。
对以上内容举例说明如下:
假设匹配到的敏感数据泄露点的内容输出如下:
1)13512341234、NULL、13512341234、user、/data/data/com.cmdm.polychrome.ui/databases/caixiang.db/contact_info、权值1
2)MTM1MTIzNDEyMzQ=BASE64、13512341234、username、/data/data/com.cmdm.polychrome.ui/share_prefs/com.cmdm.polychrome.ui.xml、权值2
3)aGgxMjM=BASE64、hh123、password、/data/data/com.cmdm.polychrome.ui/share_prefs/com.cmdm.polychrome.ui.xml权值3
依据敏感关键词类型进行敏感数据泄露点的归类,则输出的风险项及风险值为:
风险1用户名存储数据风险,风险值1=权值1+权值2;
风险2密码存储数据风险,风险值2=权值3。
如图2所示,本发明的详细实现方案为:
步骤A,运行文件操作、键盘输入监听程序;
步骤B,安装并运行应用程序,操作应用程序的所有功能;
步骤C,键盘输入监听程序输出监听到的用户输入的字串数据;
步骤D,将用户输入的字串数据进行处理,与原始字串数据一起存储至用户敏感数据特征库中;
步骤E,文件操作监听程序输出应用运行时修改过的文件列表;
步骤F,从***中将文件列表中的可读性内容及应用数据库中的内容提取出来,形成本地存储字串库;
步骤G,将用户敏感数据特征库与本地存储字串库中的内容进行特征匹配;
步骤H,输出用户敏感数据泄露点列表以及相关风险项和相应的风险值列表。
应当说明的是,所述步骤C和所述步骤E并无顺序关系,可以为同时进行的步骤。
本发明上述实施例,通过自动化的生成敏感数据特征库,收集存储内容,并进行匹配,替代了大量重复的人工工作;本发明只需要在Android***上运行评估程序,不需要对Android***进行改造,可在任意Android***上进行,特征数据无需在运行前添加标签。
如图3所示,本发明实施例提供一种评估应用数据安全风险的装置,包括:
第一获取模块100,用于获取输入应用中的第一字串数据;
第一生成模块200,用于根据所述第一字串数据生成敏感数据特征库;
第二获取模块300,用于获取应用运行时产生文件修改的第一文件列表信息;
第二生成模块400,用于根据所述第一文件列表信息生成本地存储字串库;
匹配获取模块500,用于将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值。
具体地,所述第一生成模块200,包括:
第一处理单元,用于将所述第一字串数据进行去重处理,生成第二字串数据;
第二处理单元,用于将所述第二字串数据进行变形处理,得到第三字串数据;
第一生成单元,用于根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
具体地,所述第二生成模块400,包括:
第一获取单元,用于获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表信息中包含的数据库中的第二内容;
第二生成单元,用于将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
具体地,所述匹配获取模块500,包括:
查找单元,用于在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据泄露点信息;
统计单元,用于对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的风险项信息;
计算单元,用于计算所述风险项信息中的每个风险项对应的风险值。
具体地,所述计算单元,包括:
第一计算子单元,用于计算得到每个风险项中的各个敏感数据泄露点的风险权值;
第二计算子单元,用于将所述敏感数据泄露点的风险权值相加得到所述风险项的风险值。
具体地,所述第一计算子单元依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值×用户敏感数据字串变形类型权值×存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中的各个泄露点的风险权值。
需要说明的是,该装置实施例是与上述方法相对应的装置,上述方法的所有实现方式均适用于该装置实施例中,也能达到与上述方法相同的技术效果。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本发明的保护范围内。

Claims (11)

1.一种评估应用数据安全风险的方法,其特征在于,包括:
获取输入应用中的第一字串数据;
根据所述第一字串数据生成敏感数据特征库;
获取应用运行时产生文件修改的第一文件列表信息;
根据所述第一文件列表信息生成本地存储字串库;
将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值;
其中,所述将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值的步骤包括:
在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据泄露点信息;
对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的风险项信息;
计算所述风险项信息中的每个风险项对应的风险值;
其中,所述获取输入应用中的第一字串数据的步骤包括:
从预设目录下的保存键盘输入监听结果的文件中获取输入应用中的第一字串数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一字串数据生成敏感数据特征库的步骤包括:
将所述第一字串数据进行去重处理,生成第二字串数据;
将所述第二字串数据进行变形处理,得到第三字串数据;
根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
3.根据权利要求1所述的方法,其特征在于,所述获取应用运行时产生文件修改的第一文件列表信息的步骤包括:
从预设目录下的保存文件操作运行监听结果的文件中获取应用运行时产生文件修改的第一文件列表信息,所述第一文件列表信息中包含:修改的文件对应的路径信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第一文件列表生成本地存储字串库的步骤包括:
获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表信息中包含的数据库中的第二内容;
将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
5.根据权利要求1所述的方法,其特征在于,所述计算所述风险项信息中的每个风险项对应的风险值的步骤包括:
计算得到每个风险项中的各个敏感数据泄露点的风险权值;
将所述敏感数据泄露点的风险权值相加得到所述风险项的风险值。
6.根据权利要求5所述的方法,其特征在于,所述计算得到每个风险项中的各个敏感数据泄露点的风险权值的步骤包括:
依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值×用户敏感数据字串变形类型权值×存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中的各个敏感数据泄露点的风险权值。
7.一种评估应用数据安全风险的装置,其特征在于,包括:
第一获取模块,用于获取输入应用中的第一字串数据;
第一生成模块,用于根据所述第一字串数据生成敏感数据特征库;
第二获取模块,用于获取应用运行时产生文件修改的第一文件列表信息;
第二生成模块,用于根据所述第一文件列表信息生成本地存储字串库;
匹配获取模块,用于将所述敏感数据特征库与所述本地存储字串库进行匹配,获取输入数据的风险项及所述风险项对应的风险值;
其中,所述匹配获取模块,包括:
查找单元,用于在本地存储字串库中查找所述敏感数据特征库中的字串数据,获取得到敏感数据泄露点信息;
统计单元,用于对所述敏感数据泄露点信息中的敏感数据泄露点进行归类,获取得到输入数据的风险项信息;
计算单元,用于计算所述风险项信息中的每个风险项对应的风险值;
其中,所述第一获取模块从预设目录下的保存键盘输入监听结果的文件中获取输入应用中的第一字串数据。
8.根据权利要求7所述的装置,其特征在于,所述第一生成模块,包括:
第一处理单元,用于将所述第一字串数据进行去重处理,生成第二字串数据;
第二处理单元,用于将所述第二字串数据进行变形处理,得到第三字串数据;
第一生成单元,用于根据所述第二字串数据和所述第三字串数据,生成敏感数据特征库。
9.根据权利要求7所述的装置,其特征在于,所述第二生成模块,包括:
第一获取单元,用于获取所述第一文件列表信息中的可读性文件的第一内容,以及所述第一文件列表信息中包含的数据库中的第二内容;
第二生成单元,用于将所述第一内容和所述第二内容分别进行存储,生成本地存储字串库。
10.根据权利要求9所述的装置,其特征在于,所述计算单元,包括:
第一计算子单元,用于计算得到每个风险项中的各个敏感数据泄露点的风险权值;
第二计算子单元,用于将所述敏感数据泄露点的风险权值相加得到所述风险项的风险值。
11.根据权利要求10所述的装置,其特征在于,所述第一计算子单元依据公式:风险权值=敏感数据泄露点对应的敏感关键词权值×用户敏感数据字串变形类型权值×存储所述敏感数据泄露点的文件类型权值,计算得到每个风险项中的各个敏感数据泄露点的风险权值。
CN201410642187.5A 2014-11-11 2014-11-11 一种评估应用数据安全风险的方法及装置 Active CN105653947B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410642187.5A CN105653947B (zh) 2014-11-11 2014-11-11 一种评估应用数据安全风险的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410642187.5A CN105653947B (zh) 2014-11-11 2014-11-11 一种评估应用数据安全风险的方法及装置

Publications (2)

Publication Number Publication Date
CN105653947A CN105653947A (zh) 2016-06-08
CN105653947B true CN105653947B (zh) 2019-09-13

Family

ID=56478732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410642187.5A Active CN105653947B (zh) 2014-11-11 2014-11-11 一种评估应用数据安全风险的方法及装置

Country Status (1)

Country Link
CN (1) CN105653947B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106161095B (zh) * 2016-07-15 2020-09-08 北京奇虎科技有限公司 数据泄露的预警方法及装置
CN106713067B (zh) * 2016-11-30 2020-03-17 广东电网有限责任公司信息中心 一种基于dpi的敏感文件流转监控方法
CN109597656A (zh) * 2017-09-28 2019-04-09 北京国双科技有限公司 应用程序执行方法及装置
CN110110521A (zh) * 2019-03-28 2019-08-09 江苏通付盾信息安全技术有限公司 一种基于iOS应用的安全检测方法、装置及***
CN111008401A (zh) * 2019-12-10 2020-04-14 中国银行股份有限公司 一种文本保存方法及装置
CN111143829B (zh) * 2019-12-25 2022-04-26 北京天融信网络安全技术有限公司 一种任务危险程度的确定方法、装置、电子设备及存储介质
CN114006776B (zh) * 2021-12-31 2022-03-18 北京微步在线科技有限公司 一种敏感信息泄露检测方法及装置
CN115357907B (zh) * 2022-10-19 2023-01-31 威海海洋职业学院 一种基于云计算的数据安全风险评估方法和***

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103839003B (zh) * 2012-11-22 2018-01-30 腾讯科技(深圳)有限公司 恶意文件检测方法及装置
CN103294950B (zh) * 2012-11-29 2016-07-06 北京安天电子设备有限公司 一种基于反向追踪的高威窃密恶意代码检测方法及***
CN103020526B (zh) * 2012-12-21 2016-04-13 北京奇虎科技有限公司 恶意程序主动拦截方法和装置及客户端设备
CN103354540B (zh) * 2012-12-21 2016-05-18 北京安天电子设备有限公司 一种android***的恶意代码检测方法和装置
CN103618626A (zh) * 2013-11-28 2014-03-05 北京奇虎科技有限公司 一种基于日志的安全分析报告生成的方法和***
CN103927481A (zh) * 2013-12-17 2014-07-16 哈尔滨安天科技股份有限公司 一种基于字符串调整权值的恶意代码检测方法及***

Also Published As

Publication number Publication date
CN105653947A (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
CN105653947B (zh) 一种评估应用数据安全风险的方法及装置
Malik et al. CREDROID: Android malware detection by network traffic analysis
Allix et al. A Forensic Analysis of Android Malware--How is Malware Written and How it Could Be Detected?
CN104200155A (zh) 基于苹果手机操作***iOS保护用户隐私的监测装置和方法
US11068583B2 (en) Management of login information affected by a data breach
CN110929264B (zh) 漏洞检测方法、装置、电子设备及可读存储介质
WO2014012500A1 (en) Method and device for processing messages
CN105825138A (zh) 一种敏感数据识别的方法和装置
CN106919841A (zh) 一种高效的基于旋转森林的Android恶意软件检测模型DroidDet
CN110795732A (zh) 基于SVM的Android移动网络终端恶意代码的动静结合检测方法
WO2017071148A1 (zh) 基于云计算平台的智能防御***
CN103839005A (zh) 移动操作***的恶意软件检测方法和恶意软件检测***
Moonsamy et al. Towards an understanding of the impact of advertising on data leaks
CN104182681B (zh) 基于hook的iOS***关键行为检测装置和方法
CN106778246A (zh) 沙箱虚拟化的检测方法及检测装置
CN114172703A (zh) 一种恶意软件识别方法、装置、介质
CN111259382A (zh) 恶意行为识别方法、装置、***和存储介质
EP4044057A1 (en) Method and system for identifying security vulnerabilities
CN107392033B (zh) 一种安卓设备渗透测试***及其自动化渗透测试方法
Wen et al. An empirical study of sdk credential misuse in ios apps
US20230179627A1 (en) Learning apparatus, detecting apparatus, learning method, detecting method, learning program, and detecting program
CN110287722B (zh) iOS应用中用于隐私条例检查的敏感权限提取方法
CN107169354A (zh) 多层级Android***恶意行为监控方法
CN107995167B (zh) 一种设备识别方法及服务器
CN113904828B (zh) 接口的敏感信息检测方法、装置、设备、介质和程序产品

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant