信息泄露路径跟踪方法和设备技术

技术编号:14290597 阅读:25 留言:0更新日期:2016-12-25 20:52
本申请提供一种信息泄露路径跟踪方法及设备,通过首先对待测对象的函数调用信息进行分析,以获取所有从信息源函数到泄漏点函数之间的可疑路径,然后从信息源函数中输入动态测试信息,并监控可疑路径对应的泄漏点函数的输出信息,与动态测试信息进行比较筛选,以确认所有信息泄露路径,减少误判。

【技术实现步骤摘要】

本申请涉及通信及计算机领域,尤其涉及信息泄露路径跟踪方法和设备
技术介绍
当前电子设备,尤其是移动终端电子设备及手持终端电子设备,当前每天都有数以万计的针对电子设备的系统软件、应用软件及插件等应用程序涌现到市场中。而用户的各种隐私信息也更多的出现在了电子设备之中,有些恶意应用可以直接接触到用户的隐私信息,从而盗取用户信息。另外,用户的交易信息频繁的出现在了网路之上,如何保证用户密码不泄露、订单信息保密等等都是需要解决的问题。因此,针对应用程序的信息泄露的跟踪方法及设备,可以有效地提醒用户,个人隐私信息和应用业务信息是如何从哪些渠道泄露出去的,从而让用户甄别筛选可信应用;同时,可以让应用开发者完善自己的程序代码,保护应用业务信息不被泄露。在现有技术中,TaintDroid(一种动态智能手机监控实时隐私信息流跟踪系统)通过改写系统底层API(Application Programming Interface,应用程序编程接口),对能够接触到用户隐私的方法调用都进行了状态跟踪。它在系统原始镜像ROM(手机系统固件)的基础上,生成一个新的系统镜像ROM。用户使用它时,需要重新覆盖安装整个ROM(也就是刷机),然后在使用app应用时,由系统底层API跟踪程序来监控个人隐私信息泄露。FlowDroid(一种动态智能手机监控实时隐私信息流跟踪系统)通过静态代码分析,构建应用程序的方法调用树,通过污点传播规则,寻找信息的泄露路径。用户使用它时,输入应用安装文件,输出所有数据的泄露路径。TaintDroid动态地监控信息泄露,但是不能跟踪给出详细的信息泄露路径,而且只有个人隐私信息的监控,对用户的应用业务信息无从下手。另外,
TaintDroid使用起来需要刷机重装ROM,用户体验/机型等都有很多限制。FlowDroid采用静态分析的方法,依靠初始信息定义和污点传播规则,输出信息泄露路径。但是,由于缺少动态监控,存在很多的误判和漏判。
技术实现思路
本专利技术的目的是提供一种信息泄露路径跟踪方法和设备,以在无需重装系统尽量减轻系统负担的情况下,降低信息泄露的误判。有鉴于此,本申请提供一种信息泄露路径跟踪方法,其中,所述方法包括:获取待测对象的函数调用信息,并提取所述函数调用信息中所有可疑路径;向每一所述可疑路径输入相应动态测试信息,经所述待测对象动态执行后获取所述可疑路径的输出信息;以及将所述输出信息与所述动态测试信息进行匹配,根据匹配结果判定所述可疑路径是否为信息泄露路径。进一步的,获取待测对象的函数调用信息包括:获取所述待测对象;以及对所述待测对象进行反编译,以获得所述待测对象的函数调用信息。进一步的,提取所述函数调用信息中所有可疑路径包括:提取所述函数调用信息中所有函数,并建立关于所述函数之间的连通关系的函数邻接矩阵;对所有所述函数进行分类,分为信息源函数、泄露点函数和其他类函数;以及基于所述函数邻接矩阵,建立关于所述信息源与所述泄露点函数之间连通关系的函数连通矩阵,其中,所述函数连通矩阵包括所述函数调用信息中所有可疑路径。优选的,在所述函数邻接矩阵中,所述函数之间的邻接关系和不邻接关系采用不同数值标记。优选的,在所述函数连通矩阵中,所述信息源函数和所述泄露点函数
之间的连通关系和不连通关系采用不同数值标记。优选的,所述信息源函数为读取信息的函数,所述泄露点函数为信息输出的函数。优选的,所述信息源函数包括个人隐私信息源函数和应用业务信息源函数。进一步的,将所述输出信息与所述动态测试信息进行匹配包括:获取所述输出信息;解析所述输出信息;以及将所述输出信息与所述动态测试信息进行匹配。进一步的,解析所述输出信息包括:获取所述输出信息的密钥;利用所述密钥对所述输出信息进行解密。进一步的,根据匹配结果判定所述可疑路径是否为信息泄露路径包括:当所述输出信息与所述动态测试信息的内容相同时,则判定所述可疑路径为信息泄露路径;或所述输出信息与所述动态测试信息的内容为倒置关系、循环关系或字符顺序打乱关系,则判定所述可疑路径为信息泄露路径;或所述输出信息与所述动态测试信息的内容之间存在线性关系,则判定所述可疑路径为信息泄露路径。进一步的,所述方法还包括:记录所述信息泄露路径。本申请还提供一种信息泄露路径跟踪设备,其中,所述设备包括:第一装置,用于获取待测对象的函数调用信息,并提取所述函数调用信息中所有可疑路径;第二装置,用于向每一所述可疑路径输入相应动态测试信息,经所述待测对象动态执行后获取所述可疑路径的输出信息;以及第三装置,用于将所述输出信息与所述动态测试信息进行匹配,根据匹配结果判定所述可疑路径是否为信息泄露路径。进一步的,所述第一装置包括:第一单元,用于获取所述待测对象;以及第二单元,用于对所述待测对象进行反编译,以获得所述待测对象的函数调用信息。进一步的,所述第一装置还包括:第三单元,用于提取所述函数调用信息中所有函数,并建立关于所述函数之间的连通关系的函数邻接矩阵;第四单元,用于对所有所述函数进行分类,分为信息源函数、泄露点函数和其他类函数;以及第五单元,基于所述函数邻接矩阵,建立关于所述信息源与所述泄露点函数之间连通关系的函数连通矩阵,其中,所述函数连通矩阵包括所述函数调用信息中所有可疑路径。进一步的,在所述函数邻接矩阵中,所述函数之间的邻接关系和不邻接关系采用不同数值标记。优选的,在所述函数连通矩阵中,所述信息源函数和所述泄露点函数之间的连通关系和不连通关系采用不同数值标记。优选的,所述信息源函数为读取信息的函数,所述泄露点函数为信息输出的函数。优选的,所述信息源函数包括个人隐私信息源函数和应用业务信息源函数。进一步的,所述第三装置包括:第六单元,用于获取所述输出信息;第七单元,用于解析所述输出信息;以及第八单元,用于将所述输出信息与所述动态测试信息进行匹配。进一步的,所述第七单元包括:第一子单元,用于获取所述输出信息的密钥;第二子单元,用于利用所述密钥对所述输出信息进行解密。进一步的,所述第三装置还包括:第九单元,用于根据匹配结果判定所述可疑路径是否为信息泄露路
径,包括:当所述输出信息与所述动态测试信息的内容相同时,则判定所述可疑路径为信息泄露路径;或所述输出信息与所述动态测试信息的内容为倒置关系、循环关系或字符顺序打乱关系,则判定所述可疑路径为信息泄露路径;或所述输出信息与所述动态测试信息的内容之间存在线性关系,则判定所述可疑路径为信息泄露路径。本申请还提供一种信息泄露路径跟踪设备,其中,所述检测设备还包括:第四装置,用于记录所述信息泄露路径。与现有技术相比,本申请所述信息泄露路径跟踪方法及设备通过首先对待测对象的函数调用信息进行分析,以获取所有从信息源函数到泄漏点函数之间的可疑路径,然后从信息源函数中输入动态测试信息,并监控可疑路径对应的泄漏点函数的输出信息,与动态测试信息进行比较筛选,以确认所有信息泄露路径,减少误判。进一步的,通过根据待测对象的函数调用信息中各函数之间的邻接关系建立函数邻接矩阵,通过遍历计算方式能够准确快速地根据函数邻接矩阵获得关于信息源函数到泄漏点函数之间的函数连通矩阵,从而快速且全面地获得信息连通矩阵。附图说明通过阅读参照以下附图所作的对非限制性本文档来自技高网
...
信息泄露路径跟踪方法和设备

【技术保护点】
一种信息泄露路径跟踪方法,其中,所述方法包括:获取待测对象的函数调用信息,并提取所述函数调用信息中所有可疑路径;向每一所述可疑路径输入相应动态测试信息,经所述待测对象动态执行后获取所述可疑路径的输出信息;以及将所述输出信息与所述动态测试信息进行匹配,根据匹配结果判定所述可疑路径是否为信息泄露路径。

【技术特征摘要】
1.一种信息泄露路径跟踪方法,其中,所述方法包括:获取待测对象的函数调用信息,并提取所述函数调用信息中所有可疑路径;向每一所述可疑路径输入相应动态测试信息,经所述待测对象动态执行后获取所述可疑路径的输出信息;以及将所述输出信息与所述动态测试信息进行匹配,根据匹配结果判定所述可疑路径是否为信息泄露路径。2.根据权利要求1所述的信息泄露路径跟踪方法,其中,获取待测对象的函数调用信息包括:获取所述待测对象;以及对所述待测对象进行反编译,以获得所述待测对象的函数调用信息。3.根据权利要求1或2所述的信息泄露路径跟踪方法,其中,提取所述函数调用信息中所有可疑路径包括:提取所述函数调用信息中所有函数,并建立关于所述函数之间的连通关系的函数邻接矩阵;对所有所述函数进行分类,分为信息源函数、泄露点函数和其他类函数;以及基于所述函数邻接矩阵,建立关于所述信息源与所述泄露点函数之间连通关系的函数连通矩阵,其中,所述函数连通矩阵包括所述函数调用信息中所有可疑路径。4.根据权利要求3所述的信息泄露路径跟踪方法,其中,在所述函数邻接矩阵中,所述函数之间的邻接关系和不邻接关系采用不同数值标记。5.根据权利要求3或4所述的信息泄露路径跟踪方法,其中,在所述函数连通矩阵中,所述信息源函数和所述泄露点函数之间的连通关系和不连通关系采用不同数值标记。6.根据权利要求3至5中任一项所述的信息泄露路径跟踪方法,其中,所述信息源函数为读取信息的函数,所述泄露点函数为信息输出的函数。7.根据权利要求6所述的信息泄露路径跟踪方法,其中,所述信息源函数
\t包括个人隐私信息源函数和应用业务信息源函数。8.根据权利要求1至7中任一项所述的信息泄露路径跟踪方法,其中,将所述输出信息与所述动态测试信息进行匹配包括:获取所述输出信息;解析所述输出信息;以及将所述输出信息与所述动态测试信息进行匹配。9.根据权利要求8所述的信息泄露路径跟踪方法,其中,解析所述输出信息包括:获取所述输出信息的密钥;利用所述密钥对所述输出信息进行解密。10.根据权利要求8或9所述的信息泄露路径跟踪方法,其中,根据匹配结果判定所述可疑路径是否为信息泄露路径包括:当所述输出信息与所述动态测试信息的内容相同时,则判定所述可疑路径为信息泄露路径;或所述输出信息与所述动态测试信息的内容为倒置关系、循环关系或字符顺序打乱关系,则判定所述可疑路径为信息泄露路径;或所述输出信息与所述动态测试信息的内容之间存在线性关系,则判定所述可疑路径为信息泄露路径。11.根据权利要求1至10中任一项所述的信息泄露路径跟踪方法,其中,所述方法还包括:记录所述信息泄露路径。12.一种信息泄露路径跟踪设备,其中,所述设备包括:第一装置,用于获取待测对象的函数调用信息,并提取所述函数...

【专利技术属性】
技术研发人员:肖鹏徐胜梁家辉
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1