-
公开(公告)号:CN106055479B
公开(公告)日:2019-03-01
申请号:CN201610382056.7
申请日:2016-06-01
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于强制执行的Android应用软件测试方法。该方法通过结合静态和动态分析方法克服当前Android应用测试过程中存在的不足。首先基于静态方法确定关键行为相关的执行路径;然后通过控制应用的执行过程,限制应用的执行过程,并且首次采用异常容忍的执行沙盒对Android应用执行过程中的异常进行容忍,保证关键行为一定被触发。因此,该方法能够提取一些静态方法无法提取的执行参数信息,同时也能克服动态方法无法有效触发应用行为的问题。通过对多种恶意软件样本进行分析,本发明的方法能够以高概率的对它们的执行参数如URL等信息进行提取。
-
公开(公告)号:CN105653956B
公开(公告)日:2019-01-25
申请号:CN201610119003.6
申请日:2016-03-02
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于动态行为依赖图的Android恶意软件分类方法。其步骤包括:通过自定义的Dalvik虚拟机运行APP,提取框架层接口调用行为和行为间的依赖关系等动态行为信息;根据动态行为信息构建相应的动态行为依赖图;优化动态行为依赖图,并将行为依赖图划分成子图;从由不同族的Android恶意软件组成的集合中提取相似的子图结构,将其作为基本特征;根据基本特征,对由已知的恶意软件和正常软件组成的训练集进行模型训练,得到分类器;通过分类器,对未知的APP进行归类判断;对该方法进行验证和评估。本发明通过图的编辑距离来衡量行为子图的相似性,以此来寻找基本特征,具有良好的灵活性和可扩展性。
-
公开(公告)号:CN104598808B
公开(公告)日:2018-02-16
申请号:CN201510009389.0
申请日:2015-01-08
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于寄存器架构的Android应用完整性验证方法,其步骤包括:将Android应用程序代码转化为Dalvik虚拟指令代码;针对需要保护的代码段进行胎记分析,得到可用于胎记提取的指令代码状态和寄存器状态信息,并据此生成相应的胎记提取代码;通过代码插桩过程将胎记提取代码植入Smali格式虚拟指令代码中,并重新进行编译生成新的应用;通过动态执行应用预计算出胎记信息,在应用使用过程中,用胎记信息对应用进行完整性验证。本发明通过提取的应用执行过程中的胎记信息,能够主动验证应用代码段的运行过程是否存在异常,从而实现核心代码段、执行过程的验证。
-
公开(公告)号:CN103810427B
公开(公告)日:2016-09-21
申请号:CN201410058889.9
申请日:2014-02-20
Applicant: 中国科学院信息工程研究所
IPC: G06F21/56
Abstract: 本发明涉及一种恶意代码隐藏行为挖掘方法及系统,其步骤包括:在虚拟环境中运行恶意代码;判断恶意代码执行的指令信息和函数信息中是否有隐藏行为路径相关的指令和函数;若检测到延时隐藏相关的执行信息,通过结束相应的延时行为使恶意代码继续执行其后续指令和函数;若检测到条件判断隐藏相关的执行信息,根据其条件判断分类,通过满足其不同路径的执行条件,发掘恶意代码的可能执行路径;将分析完成的恶意代码执行的多种行为路径信息生成恶意代码行为路径树。本发可有效挖掘恶意代码通过延时隐藏和条件判断隐藏的方式躲避分析的隐藏行为,有效发现其可能存在的多种隐藏行为路径,提高恶意代码的隐藏行为分析和挖掘能力。
-
公开(公告)号:CN105589807B
公开(公告)日:2018-05-11
申请号:CN201510964190.3
申请日:2015-12-21
Applicant: 中国科学院信息工程研究所
IPC: G06F11/36
Abstract: 本发明涉及一种应用程序间组件能力泄露动态检测方法和系统。该方法包括:1)设置Android应用程序的调用链初始信息;2)扩展Android Binder通信机制,在不同进程之间传递线程级调用链并对其进行扩展;3)扩展组件间通信监控机制,捕获组件间通信信息,并根据线程级调用链获取组件级调用链;4)根据组件调用链追踪Android的跨应用程序通信,在执行敏感操作时,获取当前线程的线程级调用链及组件级调用链,并根据调用链分析组件间通信是否发生组件能力泄露。本发明能够检测跨应用程序通信中存在的组件能力泄露问题,并通过对权限机制进行加强阻止跨应用程序导致的组件通信能力泄露。
-
公开(公告)号:CN105653956A
公开(公告)日:2016-06-08
申请号:CN201610119003.6
申请日:2016-03-02
Applicant: 中国科学院信息工程研究所
CPC classification number: G06F21/566 , G06F21/53
Abstract: 本发明涉及一种基于动态行为依赖图的Android恶意软件分类方法。其步骤包括:通过自定义的Dalvik虚拟机运行APP,提取框架层接口调用行为和行为间的依赖关系等动态行为信息;根据动态行为信息构建相应的动态行为依赖图;优化动态行为依赖图,并将行为依赖图划分成子图;从由不同族的Android恶意软件组成的集合中提取相似的子图结构,将其作为基本特征;根据基本特征,对由已知的恶意软件和正常软件组成的训练集进行模型训练,得到分类器;通过分类器,对未知的APP进行归类判断;对该方法进行验证和评估。本发明通过图的编辑距离来衡量行为子图的相似性,以此来寻找基本特征,具有良好的灵活性和可扩展性。
-
公开(公告)号:CN104598808A
公开(公告)日:2015-05-06
申请号:CN201510009389.0
申请日:2015-01-08
Applicant: 中国科学院信息工程研究所
Abstract: 本发明涉及一种基于寄存器架构的Android应用完整性验证方法,其步骤包括:将Android应用程序代码转化为Dalvik虚拟指令代码;针对需要保护的代码段进行胎记分析,得到可用于胎记提取的指令代码状态和寄存器状态信息,并据此生成相应的胎记提取代码;通过代码插桩过程将胎记提取代码植入Smali格式虚拟指令代码中,并重新进行编译生成新的应用;通过动态执行应用预计算出胎记信息,在应用使用过程中,用胎记信息对应用进行完整性验证。本发明通过提取的应用执行过程中的胎记信息,能够主动验证应用代码段的运行过程是否存在异常,从而实现核心代码段、执行过程的验证。
-
公开(公告)号:CN103810427A
公开(公告)日:2014-05-21
申请号:CN201410058889.9
申请日:2014-02-20
Applicant: 中国科学院信息工程研究所
IPC: G06F21/56
CPC classification number: G06F21/566
Abstract: 本发明涉及一种恶意代码隐藏行为挖掘方法及系统,其步骤包括:在虚拟环境中运行恶意代码;判断恶意代码执行的指令信息和函数信息中是否有隐藏行为路径相关的指令和函数;若检测到延时隐藏相关的执行信息,通过结束相应的延时行为使恶意代码继续执行其后续指令和函数;若检测到条件判断隐藏相关的执行信息,根据其条件判断分类,通过满足其不同路径的执行条件,发掘恶意代码的可能执行路径;将分析完成的恶意代码执行的多种行为路径信息生成恶意代码行为路径树。本发可有效挖掘恶意代码通过延时隐藏和条件判断隐藏的方式躲避分析的隐藏行为,有效发现其可能存在的多种隐藏行为路径,提高恶意代码的隐藏行为分析和挖掘能力。
-
公开(公告)号:CN106055479A
公开(公告)日:2016-10-26
申请号:CN201610382056.7
申请日:2016-06-01
Applicant: 中国科学院信息工程研究所
CPC classification number: G06F11/3688 , G06F21/53
Abstract: 本发明涉及一种基于强制执行的Android应用软件测试方法。该方法通过结合静态和动态分析方法克服当前Android应用测试过程中存在的不足。首先基于静态方法确定关键行为相关的执行路径;然后通过控制应用的执行过程,限制应用的执行过程,并且首次采用异常容忍的执行沙盒对Android应用执行过程中的异常进行容忍,保证关键行为一定被触发。因此,该方法能够提取一些静态方法无法提取的执行参数信息,同时也能克服动态方法无法有效触发应用行为的问题。通过对多种恶意软件样本进行分析,本发明的方法能够以高概率的对它们的执行参数如URL等信息进行提取。
-
公开(公告)号:CN105589807A
公开(公告)日:2016-05-18
申请号:CN201510964190.3
申请日:2015-12-21
Applicant: 中国科学院信息工程研究所
IPC: G06F11/36
CPC classification number: G06F11/3636 , G06F11/3644
Abstract: 本发明涉及一种应用程序间组件能力泄露动态检测方法和系统。该方法包括:1)设置Android应用程序的调用链初始信息;2)扩展Android Binder通信机制,在不同进程之间传递线程级调用链并对其进行扩展;3)扩展组件间通信监控机制,捕获组件间通信信息,并根据线程级调用链获取组件级调用链;4)根据组件调用链追踪Android的跨应用程序通信,在执行敏感操作时,获取当前线程的线程级调用链及组件级调用链,并根据调用链分析组件间通信是否发生组件能力泄露。本发明能够检测跨应用程序通信中存在的组件能力泄露问题,并通过对权限机制进行加强阻止跨应用程序导致的组件通信能力泄露。
-
-
-
-
-
-
-
-
-