System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及信息安全,特别是涉及一种安全检测方法、装置、设备和计算机可读存储介质。
技术介绍
1、随着信息网络技术迅猛发展和移动智能终端广泛普及,应用程序市场呈现出了爆发式增长的态势。但是,随着应用程序数量的不断增加和技术的不断创新,安全风险也日益凸显,如钓鱼攻击、破坏应用程序正常运行、安全漏洞、恶意软件等技术风险。各种应用程序满足社会需求日益增长的需求趋势不可逆转,而针对应用程序的安全检测成为一项迫切的需求。
技术实现思路
1、本申请提供了一种安全检测方法、装置、系统和计算机可读存储介质,以实现应用程序的安全检测。
2、本申请提供了如下方案:
3、第一方面,提供了一种安全检测方法,所述方法包括:
4、对目标程序进行静态分析,得到静态分析结果;
5、利用所述静态分析结果生成测试用例;
6、将生成的测试用例提供给所述目标程序执行,并获取所述目标程序执行所述测试用例的上下文信息;
7、基于所述上下文信息进行风险识别,得到所述目标程序的风险信息。
8、根据本申请实施例中一可实现的方式,在将所述测试用例提供给所述目标程序执行之前,所述方法还包括:
9、初始化执行系统环境,将所述目标程序安装于所述执行系统中。
10、根据本申请实施例中一可实现的方式,所述对目标程序进行静态分析包括:
11、对所述目标程序进行源代码分析或对所述目标程序的二进制文件进行分析,以获取所述目标程序的配
12、解析所述目标程序的配置文件,得到所述目标程序的暴露组件以及暴露组件的触发条件信息。
13、根据本申请实施例中一可实现的方式,所述静态分析结果包括:所述目标程序的暴露组件信息以及暴露组件的触发条件信息;
14、所述利用所述静态分析结果生成测试用例包括:
15、利用所述暴露组件的触发条件信息,生成针对所述暴露组件的测试输入作为所述测试用例。
16、根据本申请实施例中一可实现的方式,所述获取所述目标程序执行所述测试用例的上下文信息包括:
17、利用预先在所述目标程序对应的执行系统安装的钩子hook,获取所述目标程序在执行所述测试用例的过程中产生的事件信息;
18、从所述事件信息中解析得到所述上下文信息。
19、根据本申请实施例中又一可实现的方式,所述基于所述上下文信息进行风险识别,得到所述目标程序的风险信息包括:
20、基于预设的风险识别策略,对所述事件行为信息进行分析以确定所述目标程序的风险信息。
21、根据本申请实施例中又一可实现的方式,所述方法还包括:
22、利用获取到的上下文信息以及所述静态分析结果,生成新的测试用例;
23、利用生成的新的测试用例,转至执行所述将生成的测试用例提供给所述目标程序进行执行的步骤,直至满足预设的循环结束条件。
24、根据本申请实施例中又一可实现的方式,所述静态分析结果包括暴露组件信息;
25、利用所述获取到的上下文信息以及所述静态分析结果,生成新的测试用例包括:
26、利用所述上下文信息中包括的事件行为对应的触发条件信息,生成针对所述暴露组件的系统命令作为所述新的测试用例;或者,
27、利用所述上下文信息中包括的事件行为对应的触发条件信息,生成调用所述暴露组件所对应接口的入参作为所述新的测试用例。
28、第二方面,公开了一种安全检测方法,应用于云端服务器,其特征在于,所述方法包括:
29、获取用户终端上传的目标程序安装文件;
30、利用所述目标程序安装文件,将目标程序安装于执行系统中;
31、对目标程序进行静态分析,得到的静态分析结果包括:所述目标程序的暴露组件以及暴露组件的触发条件信息;
32、利用所述静态分析结果生成测试用例;
33、将生成的测试用例提供给所述目标程序执行,并获取所述目标程序执行所述测试用例的上下文信息;
34、基于所述上下文信息进行风险识别,得到所述目标程序的风险信息;
35、将所述风险信息发送至所述用户终端。
36、根据本申请实施例中一可实现的方式,若识别得到所述目标程序具有安全风险,则所述风险信息包括:指示所述目标程序具有安全风险的信息、以及识别出所述目标程序具有安全风险所基于的上下文信息。
37、第三方面,公开了一种安全检测系统,其特征在于,所述安全检测系统包括:
38、静态分析单元,被配置为对目标程序进行静态分析,得到的静态分析结果包括:所述目标程序的暴露组件以及暴露组件的触发条件信息;
39、用例生成单元,被配置为利用所述静态分析结果生成测试用例;
40、动态执行单元,被配置为将生成的测试用例提供给所述目标程序执行,并获取所述目标程序执行所述测试用例的上下文信息;
41、风险识别单元,被配置为基于所述上下文信息进行风险识别,得到所述目标程序的风险信息。
42、第四方面,公开了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行上述第一方面中任一项所述的方法的步骤。
43、第五方面,公开了一种电子设备,其特征在于,包括:
44、一个或多个处理器;以及
45、与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行上述第一方面中任一项所述的方法的步骤。
46、根据本申请提供的具体实施例,本申请公开了以下技术效果:
47、1)通过本申请,对目标程序静态分析,获得静态分析结果,利用静态分析结果生成测试用例,并利用目标程序执行所述测试用例的上下文信息,进行风险识别,从而实现对目标程序的安全检测。
48、2)本申请在对目标程序进行静态分析的基础上生成测试用例,并利用目标程序执行测试用例所得到的上下文信息,进行风险识别,这种方式相比较传统仅采用静态分析的安全检测方式,检测结果更准确。
49、3)本申请可以利用动态执行测试用例所得到的上下文信息,生成新的安全测试用例,触发更多、更深层次的事件行为,发现更多的安全风险,这种方式能够提高对应用程序进行安全测试的漏洞覆盖率,对于复杂条件触发的安全漏洞也能够实现检测。
50、4)本申请可以利用执行系统安装的钩子hook,获取所述目标程序在执行所述测试用例的过程中产生的事件信息,并且可以按照预设的风险识别策略,对上下文信息进行识别,获得多种风险信息,并基于预设的风险识别策略,对应用行为的风险信息进行个性化的设置。
51、当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
本文档来自技高网...【技术保护点】
1.一种安全检测方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在将所述测试用例提供给所述目标程序执行之前,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述对目标程序进行静态分析包括:
4.根据权利要求1所述的方法,其特征在于,所述静态分析结果包括:所述目标程序的暴露组件信息以及暴露组件的触发条件信息;
5.根据权利要求1所述的方法,其特征在于,获取所述目标程序执行所述测试用例的上下文信息包括:
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述上下文信息包括:事件行为信息以及事件行为对应的触发条件信息。
7.根据权利要求6所述的方法,其特征在于,基于所述上下文信息进行风险识别,得到所述目标程序的风险信息包括:
8.根据权利要求1至5中任一项所述的方法,其特征在于,在获取所述目标程序执行所述测试用例的上下文信息之后,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,所述静态分析结果包括暴露组件信息;
10.一种安
11.根据权利要求10所述的方法,其特征在于,若识别得到所述目标程序具有安全风险,则所述风险信息包括:指示所述目标程序具有安全风险的信息、以及识别出所述目标程序具有安全风险所基于的上下文信息。
12.一种安全检测系统,其特征在于,所述安全检测系统包括:
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
14.一种电子设备,其特征在于,包括:
...【技术特征摘要】
1.一种安全检测方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在将所述测试用例提供给所述目标程序执行之前,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述对目标程序进行静态分析包括:
4.根据权利要求1所述的方法,其特征在于,所述静态分析结果包括:所述目标程序的暴露组件信息以及暴露组件的触发条件信息;
5.根据权利要求1所述的方法,其特征在于,获取所述目标程序执行所述测试用例的上下文信息包括:
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述上下文信息包括:事件行为信息以及事件行为对应的触发条件信息。
7.根据权利要求6所述的方法,其特征在于,基于所述上下文信息进行风险识别,得到所述目标程序的风险信息包括:
8.根...
【专利技术属性】
技术研发人员:林子敏,鲁璐,裴开明,李奇,卢一宁,
申请(专利权)人:阿里巴巴中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。