一种基于响应时间的HTTP请求走私漏洞检测方法及系统与流程


一种基于响应时间的http请求走私漏洞检测方法及系统
技术领域
1.本技术涉及网络安全技术领域,具体而言,涉及一种基于响应时间的http请求走私漏洞检测方法及系统。


背景技术:



2.目前,随着互联网用户数量的剧增,许多互联网服务厂商为了提升用户的浏览速度,提高使用体验,减轻服务器的负担,很多网站都用上了内容分发网络(cdn,content delivery network)加速服务。最简单的加速服务,就是在源站的前面加上一个具有缓存功能的反向代理服务器,用户在请求某些静态资源时,直接从代理服务器中就可以获取到,不用再从源站所在服务器获取。这就成为了一个典型的拓扑结构,如图1所示。一般来说,反向代理服务器与后端的源站服务器之间,会重用传输控制协议(tcp,transmission control protocol)连接。原因是不同用户的请求通过代理服务器与源站服务器建立连接,而代理服务器与后端的源站服务器的网际互连协议(ip,internet protocol)地址是相对固定的,这就为两者之间的tcp连接复用提供了条件。
3.现有技术中,超文本传输协议(http,hyper text transfer protocol)请求走私漏洞就是利用代理服务器和后端的源站服务器处理请求方式的差异实现的。当我们向代理服务器发送一个比较模糊的http请求时,由于两者服务器的实现方式不同,可能代理服务器认为这是一个http请求,然后将其转发给了后端的源站服务器,但源站服务器经过解析处理后,只认为其中的一部分是正常请求,剩下的那一部分,即走私的请求,当走私的请求对正常用户的请求造成了影响之后,就实现了http走私攻击。
4.传统的http请求走私漏洞检测技术,利用反向代理服务器和后端的源站服务器执行策略标准的差异,构造并发送2个http请求:1个包含走私内容的请求,1个正常请求,检测第2个正常请求的响应进行验证。但是,部分http请求走私漏洞触发成功后,被影响的正常请求不会对不合法的请求进行报错处理,响应中没有回显,无法通过响应的报错信息判断该漏洞是否存在;此外,漏洞检测程序所发送的2个请求的连续性较难保证,且漏洞检测程序所发送的2个请求有一定概率被路由到不同的源站服务器,导致检测失败。


技术实现要素:



5.本技术实施例的目的在于提供一种基于响应时间的http请求走私漏洞检测方法、系统、电子设备及计算机可读存储介质,可以有效避免漏洞检测漏报,提高检测准确性的技术效果。
6.第一方面,本技术实施例提供了一种基于响应时间的http请求走私漏洞检测方法,包括:
7.通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间;
8.构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间;
9.判断所述检测响应时间和所述平均响应时间之间的差值是否大于预设阈值;
10.若否,则所述目标站点不存在http请求走私漏洞;
11.若是,则所述目标站点存在http请求走私漏洞;
12.对存在http请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果。
13.在上述实现过程中,该基于响应时间的http请求走私漏洞检测方法通过构造一个预设http检测请求,仅发送1个预设http检测请求给目标站点,通过检测目标站点的响应时间判断走私漏洞是否存在,不通过响应的报错信息检测,也不用连续的2个请求进行漏洞检测,其他用户的正常访问不影响漏洞的检测;而且,可以避免反向代理服务器的转发策略影响漏洞的检测准确性;从而,该基于响应时间的http请求走私漏洞检测方法可以有效避免漏洞检测漏报,提高检测准确性的技术效果。
14.进一步地,在通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤之前,所述方法还包括:
15.探测所述目标站点的cdn服务,生成cdn探测结果;
16.根据所述cdn探测结果判断所述目标站点是否使用cdn服务;
17.若是,则继续所述通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤;
18.若否,则所述目标站点不存在http请求走私漏洞。
19.在上述实现过程中,在通过响应时间检测之前,通过验证目标站点是否使用cdn服务判断是否存在http请求走私漏洞,提高检测效率。
20.进一步地,所述探测所述目标站点的cdn服务,生成cdn探测结果的步骤,包括:
21.将多个访问请求流量使用网络代理、从不同地区向所述目标站点的域名进行访问,获得ip地址个数信息;
22.根据所述ip地址个数信息生成cdn探测结果,其中,若ip地址个数信息为多个ip地址,则所述目标站点使用cdn服务,若ip地址个数信息为单个ip地址,则所述目标站点没有使用cdn服务。
23.在上述实现过程中,通过分析不同地区访问的同一个域名对应的ip地址个数是否为多个,以此判断目标站点是否使用cdn服务;如果为多个ip地址,则证明目标站点使用了cdn服务,将进行下一阶段的检测:如果为单个ip地址,则证明目标站点没有使用cdn服务,证明该站点不存在http请求走私漏洞。
24.进一步地,所述通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤,包括:
25.通过预设数量的get请求和post请求访问所述目标站点,获取多个响应时间数据;
26.通过预设加权算法对所述多个响应时间数据进行处理,获得所述平均响应时间。
27.在上述实现过程中,通过预设数量的get请求和post请求,多次访问目标站点,获取目标站点响应的时间数据,即多个响应时间数据;从而,基于预设加权算法对多个响应时间数据进行加权平均,可以获得目标站点的平均响应时间。
28.进一步地,所述构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间的步骤,包括:
29.根据预设类别构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间,所述预设类别包括cl.te、te.cl、te.te中的一种或多种。
30.进一步地,所述对存在http请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果的步骤,包括:
31.对所述目标站点连续发送两个http请求出发所述目标站点的走私漏洞,生成攻击测试结果。
32.第二方面,本技术实施例提供了一种基于响应时间的http请求走私漏洞检测系统,包括:
33.响应时间探测模块,用于通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间;
34.注入请求模块,用于构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间;
35.漏洞判断模块,用于判断所述检测响应时间和所述平均响应时间之间的差值是否大于预设阈值;若否,则所述目标站点不存在http请求走私漏洞;若是,则所述目标站点存在http请求走私漏洞;
36.攻击测试模块,用于对存在http请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果。
37.进一步地,所述基于响应时间的http请求走私漏洞检测系统还包括:
38.cdn探测模块,用于探测所述目标站点的cdn服务,生成cdn探测结果;根据所述cdn探测结果判断所述目标站点是否使用cdn服务;若是,则继续所述通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤;若否,则所述目标站点不存在http请求走私漏洞。
39.进一步地,所述cdn探测模块还用于:
40.将多个访问请求流量使用网络代理、从不同地区向所述目标站点的域名进行访问,获得ip地址个数信息;
41.根据所述ip地址个数信息生成cdn探测结果,其中,若ip地址个数信息为多个ip地址,则所述目标站点使用cdn服务,若ip地址个数信息为单个ip地址,则所述目标站点没有使用cdn服务。
42.进一步地,所述响应时间探测模块包括:
43.响应时间单元,用于通过预设数量的get请求和post请求访问所述目标站点,获取多个响应时间数据;
44.计算单元,用于通过预设加权算法对所述多个响应时间数据进行处理,获得所述平均响应时间。
45.进一步地,所述注入请求模块具体用于:根据预设类别构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间,所述预设类别包括cl.te、te.cl、te.te中的一种或多种。
46.进一步地,所述攻击测试模块具体用于:对所述目标站点连续发送两个http请求出发所述目标站点的走私漏洞,生成攻击测试结果。
47.第三方面,本技术实施例提供的一种电子设备,包括:存储器、处理器以及存储在
所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。
48.第四方面,本技术实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的方法。
49.第五方面,本技术实施例提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。
50.本技术公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本技术公开的上述技术即可得知。
51.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
52.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
53.图1为本技术实施例提供的cdn拓扑结构的示意图;
54.图2为本技术实施例提供的一种基于响应时间的http请求走私漏洞检测方法的流程示意图;
55.图3为本技术实施例提供的另一种基于响应时间的http请求走私漏洞检测方法的流程示意图;
56.图4为本技术实施例提供的基于响应时间的http请求走私漏洞检测系统的结构框图;
57.图5为本技术实施例提供的一种电子设备的结构框图。
具体实施方式
58.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
59.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
60.本技术实施例提供了一种基于响应时间的http请求走私漏洞检测方法、系统、电子设备及计算机可读存储介质,可以应用于对目标站点的请求走私漏洞检测过程中;该基于响应时间的http请求走私漏洞检测方法通过构造一个预设http检测请求,仅发送1个预设http检测请求给目标站点,通过检测目标站点的响应时间判断走私漏洞是否存在,不通过响应的报错信息检测,也不用连续的2个请求进行漏洞检测,其他用户的正常访问不影响漏洞的检测;而且,可以避免反向代理服务器的转发策略影响漏洞的检测准确性;从而,该基于响应时间的http请求走私漏洞检测方法可以有效避免漏洞检测漏报,提高检测准确性的技术效果。
61.示例性地,内容分发网络(cdn,content delivery network),其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,cdn系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决因特网拥挤的状况,提高用户访问网站的响应速度。
62.请参见图1,图1为本技术实施例提供的cdn拓扑结构的示意图,该cdn拓扑结构包括用户端、反向代理(前端)和服务器(后端),其中反向代理可以连接多个服务器,如web服务器1、web服务器2等;本技术实施例提供的基于响应时间的http请求走私漏洞检测方法应用于使用cdn服务的目标站点,对其进行走私漏洞检测。对目标站点进行访问时,用户端发送的http请求依次通过前端的反向代理、后端的服务器,完成访问流程。
63.请参见图2,图2为本技术实施例提供的一种基于响应时间的http请求走私漏洞检测方法的流程示意图;该基于响应时间的http请求走私漏洞检测方法包括如下步骤:
64.s100:通过预设数量的预设请求访问目标站点,获取目标站点的平均响应时间。
65.示例性地,在对目标站点进行走私漏洞检测之前,先通过预设数量的预设请求访问目标站点,获得目标站点对于请求的平均响应时间,便于根据响应时间判断该目标站点是否存在请求走私漏洞。
66.s200:构造预设http检测请求并将预设http检测请求发送至目标站点,获取检测响应时间。
67.示例性地,本技术实施例中通过构造一个预设http检测请求,并将预设http检测请求目标站点,获取检测响应时间;可选地,本技术实施例构造预设http检测请求中使用一种检测策略,该策略使用一系列消息,这些消息使易受攻击的后端系统挂起并使http连接超时;其中,http请求走私可分为3种类型:
68.cl.te:前端服务器使用"content-length"头,后端服务器使用"transfer-encoding"头。
69.te.cl:前端服务器使用"transfer-encoding"头,后端服务器使用"content-length"头。
70.te.te:前端和后端服务器都支持"transfer-encoding"头,但其中一台服务器可以通过某种方式混淆报头,从而避免对其进行处理。
71.s300:判断检测响应时间和平均响应时间之间的差值是否大于预设阈值;
72.若否,s310:则目标站点不存在http请求走私漏洞;
73.若是,s320:则目标站点存在http请求走私漏洞;
74.示例性地,若响检测响应时间远大于(本技术实施例中,预设阈值可以取5秒)平均响应时间,如响检测响应时间和平均响应时间之间的差值大于5秒,即认为该目标站点存在http请求走私漏洞;如果检测响应时间与平均响应时间的差值未达到预设阈值,则认为该目标站点不存在http请求走私漏洞,从而完成漏洞检测。
75.s400:对存在http请求走私漏洞的目标站点进行走私攻击测试,生成攻击测试结果。
76.示例性地,在确定目标站点存在http请求走私漏洞之后,通过对目标站点进行走
私攻击测试获得攻击测试结果,完成对目标站点的攻击测试。
77.在一些实施方式中,该基于响应时间的http请求走私漏洞检测方法通过构造一个预设http检测请求,仅发送1个预设http检测请求给目标站点,通过检测目标站点的响应时间判断走私漏洞是否存在,不通过响应的报错信息检测,也不用连续的2个请求进行漏洞检测,其他用户的正常访问不影响漏洞的检测;而且,可以避免反向代理服务器的转发策略影响漏洞的检测准确性;从而,该基于响应时间的http请求走私漏洞检测方法可以有效避免漏洞检测漏报,提高检测准确性的技术效果。
78.请参见图3,图3为本技术实施例提供的另一种基于响应时间的http请求走私漏洞检测方法的流程示意图。
79.示例性地,在s100:通过预设数量的预设请求访问目标站点,获取目标站点的平均响应时间的步骤之前,方法还包括:
80.s101:探测目标站点的cdn服务,生成cdn探测结果;
81.s102:根据cdn探测结果判断目标站点是否使用cdn服务;
82.若是,则继续s100;
83.若否,s310:则目标站点不存在http请求走私漏洞。
84.示例性地,在通过响应时间检测之前,通过验证目标站点是否使用cdn服务判断是否存在http请求走私漏洞,提高检测效率。
85.示例性地,s110:探测目标站点的cdn服务,生成cdn探测结果的步骤,包括:
86.将多个访问请求流量使用网络代理、从不同地区向目标站点的域名进行访问,获得ip地址个数信息;
87.根据ip地址个数信息生成cdn探测结果,其中,若ip地址个数信息为多个ip地址,则目标站点使用cdn服务,若ip地址个数信息为单个ip地址,则目标站点没有使用cdn服务。
88.示例性地,通过分析不同地区访问的同一个域名对应的ip地址个数是否为多个,以此判断目标站点是否使用cdn服务;如果为多个ip地址,则证明目标站点使用了cdn服务,将进入s100进行下一阶段的检测:如果为单个ip地址,则证明目标站点没有使用cdn服务,证明该站点不存在http请求走私漏洞。
89.示例性地,s100:通过预设数量的预设请求访问目标站点,获取目标站点的平均响应时间的步骤,包括:
90.s110:通过预设数量的get请求和post请求访问目标站点,获取多个响应时间数据;
91.s120:通过预设加权算法对多个响应时间数据进行处理,获得平均响应时间。
92.示例性地,通过预设数量的get请求和post请求,多次访问目标站点,获取目标站点响应的时间数据,即多个响应时间数据;从而,基于预设加权算法对多个响应时间数据进行加权平均,可以获得目标站点的平均响应时间。
93.示例性地,s200:构造预设http检测请求并将预设http检测请求发送至目标站点,获取检测响应时间的步骤,包括:
94.s210:根据预设类别构造预设http检测请求并将预设http检测请求发送至目标站点,获取检测响应时间,预设类别包括cl.te、te.cl、te.te中的一种或多种。
95.示例性地,s400:对存在http请求走私漏洞的目标站点进行走私攻击测试,生成攻
击测试结果的步骤,包括:
96.s410:对目标站点连续发送两个http请求出发目标站点的走私漏洞,生成攻击测试结果。
97.示例性地,传统的http请求走私漏洞检测方案,利用前端的反向代理服务器和后端的源站服务器执行策略标准的差异,构造并发送2个http请求:1个包含走私内容的请求,1个正常请求,检测第2个正常请求的响应进行验证;但是,传统检测方案至少包括如下问题:
98.一是部分http请求走私漏洞触发成功后,被影响的正常请求不会对不合法的请求进行报错处理,响应中没有回显,无法通过响应的报错信息判断该漏洞是否存在;
99.二是漏洞检测程序所发送的2个请求的连续性较难保证:保证连续性是该漏洞的触发原理所要求的,如果在漏洞检测的过程中,有其他用户在漏洞检测程序发送第2个正常请求之前命中了走私请求,他们将获得被损坏的响应,漏洞检测程序发送的第2个正常请求将获得正常的响应,不会发现漏洞的存在。所以此检测技术必须要求这2个请求是连续发送的,但在真实的环境中,网站流量比较大,连续性很难保证;
100.三是漏洞检测程序所发送的2个请求有一定概率被路由到不同的源站服务器,导致检测失败:某些站点具有多个不同的后端系统,前端会查看每个请求的方法、统一资源定位器(url,uniform resource locator)和标头,以决定将其路由到何处。如果漏洞检测程序所发送的第2个请求被路由到与第1个请求不同的后端,则攻击将失败。因此,第1个和第2个请求应尽可能相似。但在使用随机分配策略的环境中,仍然有概率将第1个和第2个请求转发到不同的源站服务器,从而导致漏洞检测失败。
101.本技术实施例提供的基于响应时间的http请求走私漏洞检测方法,构造预设http检测请求(该预设http检测请求使用检测策略构造一系列消息,包括cl.te、te.cl、te.te三种类型),仅发送1个请求,通过检测目标站点的响应时间判断漏洞是否存在,不通过响应的报错信息检测;与传统方案相比,不存在连续的2个请求,且其他用户的正常访问不影响漏洞的检测;此外,由于仅发送1个请求,反向代理服务器的转发策略不影响漏洞的检测,不会如传统方案中存在反向代理服务器将连续的2个请求分别转发至不同后端服务器的问题。
102.在一些实施场景中,结合图1至图3,本技术实施例提供的基于响应时间的http请求走私漏洞检测方法,具体的流程步骤示例如下:
103.步骤1:探测目标站点是否使用cdn服务。本发明中的cnd探测模块将多个访问目标站点的请求流量使用网络代理,从不同地区向目标站点的域名进行访问,分析不同地区访问的同一个域名对应的ip地址个数是否为多个,如果为多个ip,则证明目标站点使用了cdn服务,将进入步骤2进行下一阶段的检测:如果为单个ip,则证明目标站点没有使用cdn服务,证明该站点不存在http请求走私漏洞,返回结果,检测程序终止。
104.步骤2:目标站点的平均响应时间探测。通过一定数量正常的get和post请求访问目标站点,获取响应时间,使用加权算法,得出请求的平均响应时间。
105.步骤3:向目标站点注入预设http检测请求。根据http请求走私漏洞的3种分类,构造3个不同的请求。以cl.te为例:
106.post/http/1.1\r\n
107.host:example\r\n
108.transfer-encoding:chunked\r\n
109.content-length:4\r\n
110.\r\n
111.1\r\n
112.a\r\n
113.b\r\n
114.由于content-length指定为4,比真实的长度(9)要短,前端的反向代理服务器接收content-length的值,将仅转发http请求的正常部分;
115.http请求的正常部分到达后端时,后端的源站服务器接收transfer-encoding头。chunk传输数据的格式为:
116.[chunk size][\r\n][chunk data][\r\n][chunk size][\r\n][chunk data][\r\n][chunk size=0][\r\n][\r\n];
[0117]
chunk块的数据以"0\r\n\r\n"为结束标识;
[0118]
此时,后端的源站服务器接收到的http请求的正常部分,没有结束标识,将等待下一个块到来,从而导致http请求超时,这个http的响应时间将被漏洞检测程序所捕获:
[0119]
te.cl:
[0120]
post/http/1.1\r\n
[0121]
host:example\r\n
[0122]
transfer-encoding:chunked\r\n
[0123]
content-length:6\r\n
[0124]
\r\n
[0125]
0\r\n
[0126]
\r\n
[0127]
c;
[0128]
步骤4:漏洞判断。将步骤3得到的响应时间与步骤2得到的平均响应时间做对比分析,如果响应时间远大于(本技术中,差异阈值取5秒)平均响应时间,即认为该目标站点存在http请求走私漏洞;如果响应时间与平均响应时间差异为达到阈值,则认为该目标站点不存在http请求走私漏洞。漏洞检测完成;
[0129]
步骤5:攻击测试.对在漏洞判断模块中检测到的漏洞,进行进一步真实的http走私攻击。此步骤需要程序使用者确认后进行,对站点连续发送2个请求,触发漏洞后,第2个请求将报错。
[0130]
综上所述,本技术实施例的技术方案,巧妙地构造了一系列消息作为1个请求(即预设http检测请求),通过获取目标站点对该请求的响应时间,再与正常请求站点的平均响应时间做对比,判断是否存在http请求走私漏洞,并使用超时时间进行判断,有效地避开了传统检测方法的3个问题,有效避免了漏报,此外,对访问该目标站点的其他用户毫无影响。
[0131]
请参见图4,图4为本技术实施例提供的基于响应时间的http请求走私漏洞检测系统的结构框图,该基于响应时间的http请求走私漏洞检测系统包括:
[0132]
响应时间探测模块100,用于通过预设数量的预设请求访问目标站点,获取目标站点的平均响应时间;
[0133]
注入请求模块200,用于构造预设http检测请求并将预设http检测请求发送至目标站点,获取检测响应时间;
[0134]
漏洞判断模块300,用于判断检测响应时间和平均响应时间之间的差值是否大于预设阈值;若否,则目标站点不存在http请求走私漏洞;若是,则目标站点存在http请求走私漏洞;
[0135]
攻击测试模块400,用于对存在http请求走私漏洞的目标站点进行走私攻击测试,生成攻击测试结果。
[0136]
示例性地,基于响应时间的http请求走私漏洞检测系统还包括:
[0137]
cdn探测模块,用于探测目标站点的cdn服务,生成cdn探测结果;根据cdn探测结果判断目标站点是否使用cdn服务;若是,则继续通过预设数量的预设请求访问目标站点,获取目标站点的平均响应时间的步骤;若否,则目标站点不存在http请求走私漏洞。
[0138]
示例性地,cdn探测模块还用于:
[0139]
将多个访问请求流量使用网络代理、从不同地区向目标站点的域名进行访问,获得ip地址个数信息;
[0140]
根据ip地址个数信息生成cdn探测结果,其中,若ip地址个数信息为多个ip地址,则目标站点使用cdn服务,若ip地址个数信息为单个ip地址,则目标站点没有使用cdn服务。
[0141]
示例性地,响应时间探测模块100包括:
[0142]
响应时间单元,用于通过预设数量的get请求和post请求访问目标站点,获取多个响应时间数据;
[0143]
计算单元,用于通过预设加权算法对多个响应时间数据进行处理,获得平均响应时间。
[0144]
示例性地,注入请求模块200具体用于:根据预设类别构造预设http检测请求并将预设http检测请求发送至目标站点,获取检测响应时间,预设类别包括cl.te、te.cl、te.te中的一种或多种。
[0145]
示例性地,攻击测试模块400具体用于:对目标站点连续发送两个http请求出发目标站点的走私漏洞,生成攻击测试结果。
[0146]
需要注意的是,本技术实施例提供的基于响应时间的http请求走私漏洞检测系统与图1至图3所示的方法实施例相对应,为避免重复,此处不再赘述。
[0147]
本技术还提供一种电子设备,请参见图5,图5为本技术实施例提供的一种电子设备的结构框图。电子设备可以包括处理器510、通信接口520、存储器530和至少一个通信总线540。其中,通信总线540用于实现这些组件直接的连接通信。其中,本技术实施例中电子设备的通信接口520用于与其他节点设备进行信令或数据的通信。处理器510可以是一种集成电路芯片,具有信号的处理能力。
[0148]
上述的处理器510可以是通用处理器,包括中央处理器(cpu,central processing unit)、网络处理器(np,network processor)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器510也可以是任何常规的处理器等。
[0149]
存储器530可以是,但不限于,随机存取存储器(ram,random access memory),只
读存储器(rom,read only memory),可编程只读存储器(prom,programmable read-only memory),可擦除只读存储器(eprom,erasable programmable read-only memory),电可擦除只读存储器(eeprom,electric erasable programmable read-only memory)等。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备可以执行上述图1至图3方法实施例涉及的各个步骤。
[0150]
可选地,电子设备还可以包括存储控制器、输入输出单元。
[0151]
所述存储器530、存储控制器、处理器510、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线540实现电性连接。所述处理器510用于执行存储器530中存储的可执行模块,例如电子设备包括的软件功能模块或计算机程序。
[0152]
输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。
[0153]
可以理解,图5所示的结构仅为示意,所述电子设备还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。
[0154]
本技术实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。
[0155]
本技术还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
[0156]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0157]
另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0158]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存
储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0159]
以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0160]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
[0161]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

技术特征:


1.一种基于响应时间的http请求走私漏洞检测方法,其特征在于,包括:通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间;构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间;判断所述检测响应时间和所述平均响应时间之间的差值是否大于预设阈值;若否,则所述目标站点不存在http请求走私漏洞;若是,则所述目标站点存在http请求走私漏洞;对存在http请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果。2.根据权利要求1所述的基于响应时间的http请求走私漏洞检测方法,其特征在于,在通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤之前,所述方法还包括:探测所述目标站点的cdn服务,生成cdn探测结果;根据所述cdn探测结果判断所述目标站点是否使用cdn服务;若是,则继续所述通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤;若否,则所述目标站点不存在http请求走私漏洞。3.根据权利要求2所述的基于响应时间的http请求走私漏洞检测方法,其特征在于,所述探测所述目标站点的cdn服务,生成cdn探测结果的步骤,包括:将多个访问请求流量使用网络代理、从不同地区向所述目标站点的域名进行访问,获得ip地址个数信息;根据所述ip地址个数信息生成cdn探测结果,其中,若ip地址个数信息为多个ip地址,则所述目标站点使用cdn服务,若ip地址个数信息为单个ip地址,则所述目标站点没有使用cdn服务。4.根据权利要求1所述的基于响应时间的http请求走私漏洞检测方法,其特征在于,所述通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤,包括:通过预设数量的get请求和post请求访问所述目标站点,获取多个响应时间数据;通过预设加权算法对所述多个响应时间数据进行处理,获得所述平均响应时间。5.根据权利要求1所述的基于响应时间的http请求走私漏洞检测方法,其特征在于,所述构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间的步骤,包括:根据预设类别构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间,所述预设类别包括cl.te、te.cl、te.te中的一种或多种。6.根据权利要求1所述的基于响应时间的http请求走私漏洞检测方法,其特征在于,所述对存在http请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果的步骤,包括:对所述目标站点连续发送两个http请求出发所述目标站点的走私漏洞,生成攻击测试结果。7.一种基于响应时间的http请求走私漏洞检测系统,其特征在于,包括:
响应时间探测模块,用于通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间;注入请求模块,用于构造预设http检测请求并将所述预设http检测请求发送至所述目标站点,获取检测响应时间;漏洞判断模块,用于判断所述检测响应时间和所述平均响应时间之间的差值是否大于预设阈值;若否,则所述目标站点不存在http请求走私漏洞;若是,则所述目标站点存在http请求走私漏洞;攻击测试模块,用于对存在http请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果。8.根据权利要求7所述的基于响应时间的http请求走私漏洞检测系统,其特征在于,所述基于响应时间的http请求走私漏洞检测系统还包括:cdn探测模块,用于探测所述目标站点的cdn服务,生成cdn探测结果;根据所述cdn探测结果判断所述目标站点是否使用cdn服务;若是,则继续所述通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间的步骤;若否,则所述目标站点不存在http请求走私漏洞。9.一种电子设备,其特征在于,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的基于响应时间的http请求走私漏洞检测方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1至6任一项所述的基于响应时间的http请求走私漏洞检测方法。

技术总结


本申请实施例提供一种基于响应时间的HTTP请求走私漏洞检测方法及系统,涉及网络安全技术领域。该基于响应时间的HTTP请求走私漏洞检测方法包括:通过预设数量的预设请求访问目标站点,获取所述目标站点的平均响应时间;构造预设HTTP检测请求并将所述预设HTTP检测请求发送至所述目标站点,获取检测响应时间;判断所述检测响应时间和所述平均响应时间之间的差值是否大于预设阈值;若否,则所述目标站点不存在HTTP请求走私漏洞;若是,则所述目标站点存在HTTP请求走私漏洞;对存在HTTP请求走私漏洞的所述目标站点进行走私攻击测试,生成攻击测试结果。该方法可以有效避免漏洞检测漏报,提高检测准确性的技术效果。提高检测准确性的技术效果。提高检测准确性的技术效果。


技术研发人员:

杜嘉鹏

受保护的技术使用者:

北京天融信网络安全技术有限公司 北京天融信科技有限公司 北京天融信软件有限公司

技术研发日:

2022.11.18

技术公布日:

2023/3/10

本文发布于:2024-09-23 03:17:50,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/69772.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   站点   目标   响应时间
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议