本技术涉及测试,尤其涉及一种安全检测方法及装置。
背景技术:
1、针对web(world wide web,全球广域网)端http(hypertext transfer protocol,超文本传输协议)安全响应头的检测是各安全厂商开发的安全漏洞扫描器中的必备的检测项目。而现有的安全漏洞扫描器,针对web端http安全响应头的配置进行检测的误报率、客诉率一直居高不下。因此,亟需一种有效的方案以解决上述问题。
技术实现思路
1、本技术的目的是提供一种安全检测方法及装置,用于解决针对web端http安全响应头的配置进行检测的误报率高的问题。
2、本技术提供一种安全检测方法,包括:
3、识别目标应用配置的至少一个第一安全响应头;
4、根据各所述第一安全响应头,从预设的至少一个初始检测标准筛选目标检测标准;
5、根据所述目标检测标准,对各所述第一安全响应头进行安全检测,得到所述目标应用的安全检测结果。
6、可选地,所述根据各所述第一安全响应头,从预设的至少一个初始检测标准筛选目标检测标准,包括:
7、对各所述第一安全响应头进行布尔数组转化,确定所述目标应用对应的第一布尔数组,并获取各所述初始检测标准分别对应的第二布尔数组;
8、计算所述第一布尔数组分别与各所述第二布尔数组的相似度;
9、根据各所述相似度,从各所述初始检测标准中筛选出目标检测标准。
10、可选地,所述计算所述第一布尔数组分别与各所述第二布尔数组之间的相似度,包括:
11、将所述第一布尔数组分别与各所述第二布尔数组进行数据拟合,得到各所述第二布尔数组对应的拟合参数;
12、根据所述拟合参数,确定各所述第二布尔数组对应的相似度。
13、可选地,所述将所述第一布尔数组分别与各所述第二布尔数组进行数据拟合,得到各所述第二布尔数组对应的拟合参数,包括:
14、针对每个所述第二布尔数组执行以下步骤:
15、计算所述第一布尔数组中第一元素与所述第二布尔数组中第二元素的差值,所述第一元素为所述第一布尔数组中的任一元素,所述第二元素的下标与所述第一元素的下标相同;
16、根据各所述差值,确定所述第二布尔数组对应的拟合参数。
17、可选地,所述根据各所述差值,确定所述第二布尔数组对应的拟合参数,包括:
18、将各所述差值的绝对值相加,得到所述第二布尔数组对应的拟合参数。
19、可选地,所述根据各所述相似度,从各所述初始检测标准中筛选出目标检测标准,包括:
20、确定各所述相似度中的最大相似度;
21、将所述最大相似度对应的初始检测标准,确定为目标检测标准。
22、可选地,所述对各所述第一安全响应头进行布尔数组转化,确定所述目标应用对应的第一布尔数组,包括:
23、步骤1:将n个已知安全响应头进行排序,得到安全响应头序列,并令i=1,n为正整数;
24、步骤2:将所述安全响应头序列中的第i个已知安全响应头作为第一指定响应头;
25、步骤3:若各所述第一安全响应头中存在所述第一指定响应头,则令第i个元素为第一数值;若各所述第一安全响应头中不存在所述第一指定响应头,则令第i个元素为第二数值;所述第一数值与所述第二数值不同;
26、步骤4:在i小于n的情况下,令i=i+1,继续执行所述步骤2、所述步骤3和所述步骤4;在i等于n的情况下,按照从第一个元素到第n个元素的顺序,将各所述元素进行拼接,得到所述目标应用对应的第一布尔数组。
27、可选地,所述获取各所述初始检测标准分别对应的第二布尔数组,包括:
28、步骤a:获取各所述初始检测标准分别对应的至少一个第二安全响应头,并令k=1,j=1;
29、步骤b:将所述安全响应头序列中的第j个已知安全响应头作为第二指定响应头;
30、步骤c:若第k个初始检测标准对应的各所述第二安全响应头中,存在所述第二指定响应头,则令第j个元素为所述第一数值;若所述第k个初始检测标准对应的各所述第二安全响应头中不存在所述第二指定响应头,则令第j个元素为所述第二数值;
31、步骤d:在j小于n的情况下,令j=j+1,继续执行所述步骤b、所述步骤c和所述步骤d;在i等于n的情况下,按照从第一个元素到第n个元素的顺序,将各所述元素进行拼接,得到所述第k个初始检测标准对应的第二布尔数组,并执行步骤e;
32、步骤e:在k小于m的情况下,令k=k+1,j=1,继续执行所述步骤b、所述步骤c、所述步骤d和所述步骤e,m为所述初始检测标准的数量;在k小于m的情况下,结束。
33、可选地,所述根据所述目标检测标准,对各所述第一安全响应头进行安全检测,得到所述目标应用的安全检测结果,包括:
34、从所述目标检测标准对应的各第二安全响应头中,分别确定各所述第一安全响应头对应的目标安全响应头;
35、确定各所述第一安全响应头对应的第一value值和各所述目标安全响应头对应的第二value值;
36、针对每个所述第一安全响应头,若所述第一安全响应头对应的第一value值和第二value值相同,则所述第一安全响应头为正常安全响应头;若所述第一安全响应头对应的第一value值和第二value值不同,则所述第一安全响应头为异常安全响应头;
37、在各所述第一安全响应头中不存在所述异常安全响应头的情况下,所述目标应用的安全检测结果为安全;在各所述第一安全响应头中存在所述异常安全响应头的情况下,所述目标应用的安全检测结果为不安全。
38、可选地,所述方法还包括:
39、输出所述安全检测结果和相关信息,所述相关信息包括安全等级和/安全建议;所述安全等级基于所述目标检测标准对应的所述第二安全响应头确定;所述安全建议包括各所述异常安全响应头。
40、本技术还提供一种安全检测装置,所述装置包括:
41、识别模块,被配置为识别目标应用配置的至少一个第一安全响应头;
42、筛选模块,被配置为根据各所述第一安全响应头,从预设的至少一个初始检测标准筛选目标检测标准;
43、检测模块,被配置为根据所述目标检测标准,对各所述第一安全响应头进行安全检测,得到所述目标应用的安全检测结果。
44、本技术还提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现如上述任一种所述安全检测方法的步骤。
45、本技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述安全检测方法的步骤。
46、本技术还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述安全检测方法的步骤。
47、本技术提供的安全检测方法及装置,通过设置至少一个初始检测标准,根据目标应用配置的第一安全响应头,自适应地从至少一个初始检测标准筛选出目标检测标准,按照目标检测标准进行安全检查,可以适用于不同的目标应用的使用场景,能够提高检测的准确率,进而降低误报率,提高用户满意度并降低客诉率。