网站安全检测方法及装置
技术领域
本发明涉及网站安全检测领域,特别是涉及一种网站安全检测方法及装置。
背景技术
随着网络科技的发展,人们对于网络的依赖性也日渐增加。这种依赖性不仅体现在人们的日常学习工作需要通过网络获取或者分享或者传递信息,还体现在人们通过网络进行经济财政类的操作,如网络购物或者网上汇款等操作。而随着这种依赖性的增加,特别是人们依赖网络进行信息传递以及财务操作,直接导致网络安全也日渐受到人们的重视。
目前大型网站多采用多台服务器共同执行负载均衡操作,这种情况下,若每台服务器中的系统或者应用或者代码未同步,可能导致严重的安全问题。例如,在网站xxx.20m.cn中存在严重安全漏洞,该网站拥有10台镜像服务器,开发人员在针对安全漏洞修复完成之后,需要将修复更新全部10台服务器,如果仅更新了9台服务器的代码,而存在一台服务器没有更新,则出现该服务器与其他服务器的代码不同步的情况,即该服务器的安全漏洞仍然存在,可能导致严重的网络安全问题,而服务器之间的更新需要较长的时间,因此在很长的时间内虽然开发人员已针对安全漏洞进行了修复但并非所有的网站服务器都进行了更新。
现有技术中,是根据域名对服务器进行安全检测,当一个域名对应多个服务器时,则现有技术的安全检测操作无法具体检测出哪个服务器存在不同步的问题,因此,现有技术的安全检测操作无法对网站进行全面检测,并且存在难以发现存在安全问题的服务器的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的网站安全检测方法和相应的装置。
依据本发明的一个方面,提供了一种网站安全检测方法,包括:获取所述网站的服务器IP地址列表,其中,每台服务器具备一个IP地址,不同服务器的IP地址不同;根据所述服务器IP地址列表对所述网站进行安全检测。
可选地,所述获取所述网站的服务器IP地址列表,包括:针对网络进行旁路侦听,抓取超文本传输协议请求包;获取请求包中与所述网站对应的IP地址并进行记录;对所述IP地址进行汇总,生成所述服务器IP地址列表。
可选地,所述获取所述网站的服务器IP地址列表包括:通过多个检测客户端对所述网站进行域名解析,获取服务器IP地址;对所述IP地址进行汇总,生成所述服务器IP地址列表。
可选地,所述获取所述网站的服务器IP地址列表包括:获取用户配置的服务器IP地址列表。
可选地,根据所述服务器IP地址列表对所述网站进行安全检测之后,还包括:展示检测结果,其中,所述检测结果包括所述网站不同服务器的安全检测结果。
可选地,所述展示检测结果包括:获取所述网站不同服务器的安全检测结果以及不同服务器的访问量;根据所述网站不同服务器的安全检测结果以及访问量确定所述网站的安全评分。
依据本发明的另一个方面,还提供了一种网站安全检测装置,包括:获取模块,适于获取所述网站的服务器IP地址列表,其中,每台服务器具备一个IP地址,不同服务器的IP地址不同;检测模块,适于根据所述服务器IP地址列表对所述网站进行安全检测。
可选地,所述获取模块还适于:针对网络进行旁路侦听,抓取超文本传输协议请求包;获取请求包中与所述网站对应的IP地址并进行记录;对所述IP地址进行汇总,生成所述服务器IP地址列表。
可选地,所述获取模块还适于:通过多个检测客户端对所述网站进行域名解析,获取服务器IP地址;对所述IP地址进行汇总,生成所述服务器IP地址列表。
可选地,所述获取模块还适于:获取用户配置的服务器IP地址列表。
可选地,所述网站安全检测装置还包括:展示模块,适于展示检测结果,其中,所述检测结果包括所述网站不同服务器的安全检测结果。
可选地,所述展示模块还适于:获取所述网站不同服务器的安全检测结果以及不同服务器的访问量;根据所述网站不同服务器的安全检测结果以及访问量确定所述网站的安全评分。
依据本发明实施例,能够获取网站的IP地址列表,并根据服务器IP地址列表对网站进行安全检测。因此,依据本发明实施例的网站安全检测方法,通过获取服务器IP地址列表,依据服务器IP地址列表对网站进行安全检测这一技术手段,解决了现有技术中根据域名对具备多台服务器的网站进行安全检测,导致可能部分问题或故障的服务器无法被检测到,进而无法对问题或故障服务器进行维修或更换的问题,而本发明中的IP地址列表中记载了所有的服务器的IP地址,且每台服务器的IP地址均不相同,保证了IP地址的唯一性和不可复制性,利用IP地址列表进行安全性检测就能够保证检测过程中不会遗漏或错过任何一台服务器,进而能够在安全检测过程中准确查找到出现问题或故障的服务器,以便对出现安全问题的服务器进行修复,提升网站的安全性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的网站安全检测方法的处理流程图;
图2示出了根据本发明一个优选实施例的第一种获取网站服务器IP地址列表的方式的处理流程图;
图3示出了根据本发明一个优选实施例的第二种获取网站服务器IP地址列表的方式的处理流程图;
图4示出了根据本发明一个优选实施例的对网站进行漏洞检测的处理流程图;
图5示出了根据本发明一个优选实施例的网站安全检测方法的处理流程图;
图6示出了根据本发明一个实施例的网站安全检测装置的结构示意图;以及
图7示出了根据本发明一个优选实施例的网站安全检测装置的结构示意图。
具体实施方式
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
相关技术中提及,在进行安全检测时,对于绑定域名的网站无法进行安全检测。并且,在对网站的服务器进行安全检测时,是根据域名对服务器进行安全检测,当一个域名对应多个服务器时,则现有技术的安全检测操作无法具体检测出哪个服务器存在不同步的问题,因此,现有技术的安全检测操作无法对网站进行全面检测,并且存在难以发现存在安全问题的服务器的问题。
为解决上述技术问题,本发明实施例提供了一种网站安全检测方法。图1示出了根据本发明一个实施例的网站安全检测方法的处理流程图。参见图1,该流程至少包括步骤S102至步骤S104。
步骤S102、获取网站的服务器网络互联协议(Internet Protocol,以下简称IP)地址列表,其中,每台服务器具备一个IP地址,不同服务器的IP地址不同。
步骤S104、根据服务器IP地址列表对网站进行安全检测。
依据本发明实施例,能够获取网站的IP地址列表,并根据服务器IP地址列表对网站进行安全检测。因此,依据本发明实施例的网站安全检测方法,通过获取服务器IP地址列表,依据服务器IP地址列表对网站进行安全检测这一技术手段,解决了现有技术中根据域名对具备多台服务器的网站进行安全检测,导致可能部分问题或故障的服务器无法被检测到,进而无法对问题或故障服务器进行维修或更换的问题,而本发明中的IP地址列表中记载了所有的服务器的IP地址,且每台服务器的IP地址均不相同,保证了IP地址的唯一性和不可复制性,利用IP地址列表进行安全性检测就能够保证检测过程中不会遗漏或错过任何一台服务器,进而能够在安全检测过程中准确查找到出现问题或故障的服务器,以便对出现安全问题的服务器进行修复,提升网站的安全性。
本发明实施例中,为保证对网站进行安全检测时,能够及时发现存在安全问题或者安全漏洞的服务器,如图1中的步骤S104所示,根据服务器IP地址列表对网站进行安全检测。而为保证根据服务器IP地址和对网站进行安全检测能够全面地覆盖网站中的服务器,本发明实施例采用多种方式获取网站服务器IP地址列表。现对本发明实施例中优选的三种获取网站服务器IP地址列表的方式进行介绍。
图2示出了根据本发明一个优选实施例的第一种获取网站服务器IP地址列表的方式的处理流程图。如图2所示,首先执行步骤S202,针对网络进行旁路侦听,抓取超文本传输协议请求包。其次,如图2中的步骤S204所示,获取请求包中与网站对应的IP地址并进行记录。之后,执行步骤S206,对记录的IP地址进行汇总,生成服务器IP地址列表。本发明实施例中,在生成服务器IP地址列表之后,还可以继续重复执行图2所示的步骤S202以及步骤S204,并对再次获取并记录的IP地址进行汇总,以更新服务器IP地址列表。因此,利用如图2所示的方式获取网站的服务器IP地址列表,能够在生成服务器IP地址列表之后,对IP地址列表不断更新。
图3示出了根据本发明一个优选实施例的第二种获取网站服务器IP地址列表的方式的处理流程图。如图3所示,步骤S302中,通过多个检测客户端对网站进行域名解析,获取服务器IP地址。之后,对获取到的IP地址进行汇总,生成服务器IP地址列表(即步骤S304)。由此可知,图3所示的方式通过对域名进行解析获取服务器IP地址,进而生成IP地址列表,因此,当存在一个域名对应多个IP地址的情况时,若对域名进行解析,获取域名对应的多个IP地址,并根据获取到的IP地址对网站进行安全检测,则能够不存在遗漏地对网站的所有服务器进行安全检测,不会造成无法发现存在安全漏洞的服务器,进而造成严重影响网络安全的后果。另外,步骤S302中提及,本例中通过多个检测客户端对网站进行域名解析。优选地,可以使用分布于全国各地的客户端对网站进行域名解析,并将获取到的域名进行汇总。之后,针对获取到的任一域名进行解析,获取服务器IP地址。因此,利用图3所示的获取网站服务器IP地址列表的方式能够更加全面地获取服务器的IP地址,进而在根据服务器IP地址和/或域名—IP关联关系对网站进行安全检测时,能够更加全面地对网站进行安全检测,提高网站安全检测的有效性。
除上文利用图2以及图3介绍的获取网站的服务器IP地址列表的方式之外,本发明实施例还可以获取用户配置的服务器IP地址列表。综上,本发明实施例中,可以通过多种方式获取网站的服务器IP地址列表,以便根据服务器IP地址列表和/或根据域名—IP关联关系对网站进行安全检测时,保证能够及时发现存在安全问题或者安全漏洞的服务器,提高对网站进行安全检测的有效性。并且,本发明实施例中优选介绍三种获取网站的服务器IP地址列表的方式。因此,在实际操作中,可以根据安全检测的范围、深度、广度等因素选择任意能够获取网站的服务器IP地址列表的方式中的一种或者多种获取IP地址,生成服务器IP地址列表,以供后续的安全检测操作使用。
在根据上文介绍的方式获取到服务器IP地址列表之后,根据图1所示的流程图,本发明实施例根据服务器IP地址列表对网站进行安全检测。本发明实施例中,对网站进行的安全检测可以是任意能够检测网站安全性的检测操作。例如,图4示出了根据本发明一个优选实施例的对网站进行漏洞检测的处理流程图。如图4所示,首先执行步骤S402,获取网站的指纹信息,根据网站的指纹信息确定网站的类型,其中,网站的指纹信息可以是网站的页面特征、网站的目录名称等网站的标识信息。确定网站的类型之后,执行步骤S404,根据网站的类型确定网站的类型对应的漏洞库。之后,根据步骤S404中确定的漏洞库对网站进行漏洞检测(步骤S406)。
根据服务器IP地址列表对网站进行安全检测之后,本发明实施例展示检测结果。另外,在对检测结果进行展示时,本发明实施例可以根据对展示结果的不同使用方式展示对应的部分。例如,若需要统计对网站的服务器在本次安全检测中,存在安全问题的服务器个数以及不存在安全问题的服务器个数,则可以展示网站的所有服务器的安全检测结果;若需要统计网站的服务器在本次安全检测中,不存在安全问题的服务器的比例,则可以仅展示不存在安全问题的服务器的安全检测结果,并提供网站所有服务器的个数。实际操作中,在对网站进行安全检测之后,通常需要对存在安全问题的服务器进行修复,而对于不存在安全问题的服务器,可以搁置以待下一次安全检测。因此,本发明实施例中,展示的检测结果还可以是网站中本次安全检测之后存在安全问题(例如存在安全漏洞)的服务器的安全检测结果。
另外,本发明实施例中,展示检测结果时,可以获取网站不同服务器的安全检测结果以及不同服务器的访问量。例如,获取到本次安全检测的网站的五个服务器的安全检测结果以及访问量如下:
服务器1:安全检测结果为不存在安全漏洞,访问量为3000次;
服务器2:安全检测结果为存在安全漏洞,访问量为17000次;
服务器3:安全检测结果为存在安全漏洞,访问量为7000次;
服务器4:安全检测结果为存在安全漏洞,访问量为12000次;
服务器5:安全检测结果为不存在安全漏洞,访问量为19000次。
获取到网站不同服务器的安全检测结果以及访问量之后,本发明实施例可以根据网站不同服务器的安全检测结果以及访问量确定网站的安全评分。例如,对于上文展示的、当前网站的五个服务器,仅服务器1的安全检测结果为不存在安全漏洞,并且访问量比较少,为3000次,而服务器2至服务器5中,服务器2、服务器3以及服务器4不仅存在安全漏洞,并且访问量较高,服务器5虽然不存在安全漏洞,但是访问量极高。由此可知对当前进行安全检测的网站进行访问的用户数量较多,而访问数量多的网站容易受到恶意攻击。另外,该网站的五个服务器中,三个服务器存在安全漏洞,即存在安全漏洞的服务器数量较多。因此,在对该网站进行安全评分时,由于该网站的五个服务器中超过半数的服务器存在安全漏洞,并且该网站的访问量极大,则可以设置该网站的安全评分较低(例如满分为10分时,设置当前网站的安全评分为3分)。在根据不同服务器的安全检测结果以及访问量确定网站的安全评分之后,可以在后续执行相应操作,以提高网站的安全性。例如,当网站安全评分较低(如满分10分,安全评分低于6分)时,及时修复该网站存在安全漏洞的服务器,增强对该网站各个服务器的监控,还可以增多对该网站的安全检测次数,以提高网站的安全性,以避免网站被恶意攻击导致网站出现严重的安全问题。
实施例一
为将上文各优选实施例提供的网站安全检测方法阐述得更加清楚明白,现以一个优选实施例对本发明实施例提供的网站安全检测方法进行介绍。图5示出了根据本发明一个优选实施例的网站安全检测方法的处理流程图。参见图5,该流程至少包括步骤S502至步骤S514。
步骤S502、针对网络进行旁路侦听,抓取超文本传输协议请求包。
步骤S504、获取请求包中与网站对应的IP地址并记录。
步骤S506、对IP地址进行汇总,生成服务器IP地址列表。
步骤S508、更新IP地址列表。
具体地,当获取到新的IP地址时,本发明实施例记录新的IP地址,以对IP地址列表进行更新。优选地,本例中,可以利用步骤S502至步骤S506的操作步骤获取新的IP地址,以对IP地址列表进行更新,还可以是通过多个检测客户端对网站进行域名解析,获取新的服务器IP地址,还可以是获取用户配置的服务器IP地址,等等。获取到新的IP地址之后,对IP地址列表进行更新,以供后续安全检测操作中能够更加全面地对网站进行安全检测。
另外,需要说明的是,除步骤S502至步骤S506的操作步骤能够获取到服务器的IP地址外,本步骤中还提供了两种方式能够获取到服务器的IP地址,因此,该两种方式也能够用于生成IP地址列表,并在后续利用任意方式对生成的IP地址列表进行更新。本优选实施例中,为阐述清楚简洁,仅利用步骤S502至步骤S506所示的操作生成服务器IP地址列表,而其他能够获取到服务器IP地址的方式或者方法用于更新IP地址列表。
步骤S510、根据服务器IP地址列表对网站进行安全检测。
步骤S512、获取网站不同服务器的安全检测结果以及不同服务器的访问量。
步骤S514、根据网站不同服务器的安全检测结果以及访问量确定网站的安全评分,以供后续对网站进行安全检测或者其他安全保证操作(如漏洞修复操作)时进行参考。
具体地,例如,获取到本次安全检测的网站的三个服务器的安全检测结果以及访问量如下:
服务器1:安全检测结果为不存在安全漏洞,访问量为3000次;
服务器2:安全检测结果为存在安全漏洞,访问量为17000次;
服务器3:安全检测结果为存在安全漏洞,访问量为7000次。
获取到网站不同服务器的安全检测结果以及访问量之后,根据网站不同服务器的安全检测结果以及访问量确定网站的安全评分。当前网站的三个服务器中,仅服务器1的安全检测结果为不存在安全漏洞,并且访问量比较少,为3000次,而服务器2以及服务器3不仅存在安全漏洞,并且访问量高。由此可知对当前进行安全检测的网站进行访问的用户数量较多,而访问数量多的网站容易受到恶意攻击。另外,该网站的三个服务器中,两个服务器存在安全漏洞,即存在安全漏洞的服务器数量较多。因此,在对该网站进行安全评分时,由于该网站的三个服务器中超过半数的服务器存在安全漏洞,并且该网站的访问量极大,则可以设置满分为10分的情况下,当前网站的安全评分为3分。由于当前网站安全评分较低(3分)时,及时修复该网站存在安全漏洞的服务器,增强对该网站各个服务器的监控,还可以增多对该网站的安全检测次数,以提高网站的安全性,以避免网站被恶意攻击导致网站出现严重的安全问题。
本发明的一个实施例中,在获取到IP地址列表后对网站进行安全检测,例如具体可以更具IP地址列表依次对网站进行访问,记录访问网站后的行为以及对网页源代码进行分析,以准确判断网站挂马、存在漏洞等情况。
基于上文各优选实施例提供的网站安全检测方法,基于同一发明构思,本发明实施例提供了一种网站安全检测装置,用于实现网站安全检测方法。图6示出了根据本发明一个实施例的网站安全检测装置的结构示意图。参见图6,本发明实施例的网站安全检测装置至少包括获取模块610以及检测模块620。
现介绍本发明实施例的网站安全检测装置的各器件或组成的功能以及各部分间的连接关系:
获取模块610,适于获取网站的服务器IP地址列表,其中,每台服务器具备一个IP地址,不同服务器的IP地址不同;
检测模块620,与获取模块610相耦合,适于根据服务器IP地址列表对网站进行安全检测。
在一个优选的实施例中,获取模块610还适于:针对网络进行旁路侦听,抓取超文本传输协议请求包;获取请求包中与网站对应的IP地址并进行记录;对IP地址进行汇总,生成服务器IP地址列表。
在一个优选的实施例中,获取模块610还适于:通过多个检测客户端对网站进行域名解析,获取服务器IP地址;对IP地址进行汇总,生成服务器IP地址列表。
在一个优选的实施例中,获取模块610还适于:获取用户配置的服务器IP地址列表。
图7示出了根据本发明一个优选实施例的网站安全检测装置的结构示意图。参见图7,本发明实施例的网站安全检测装置还包括:
展示模块630,适于展示检测结果,其中,检测结果包括网站不同服务器的安全检测结果。
在一个优选的实施例中,展示模块630还适于:获取网站不同服务器的安全检测结果以及不同服务器的访问量;根据网站不同服务器的安全检测结果以及访问量确定网站的安全评分。
根据上述任意一个优选实施例或多个优选实施例的组合,本发明实施例能够达到如下有益效果:
依据本发明实施例,能够获取网站的IP地址列表,并根据服务器IP地址列表对网站进行安全检测。因此,依据本发明实施例的网站安全检测方法,通过获取服务器IP地址列表,依据服务器IP地址列表对网站进行安全检测这一技术手段,解决了现有技术中根据域名对具备多台服务器的网站进行安全检测,导致可能部分问题或故障的服务器无法被检测到,进而无法对问题或故障服务器进行维修或更换的问题,而本发明中的IP地址列表中记载了所有的服务器的IP地址,且每台服务器的IP地址均不相同,保证了IP地址的唯一性和不可复制性,利用IP地址列表进行安全性检测就能够保证检测过程中不会遗漏或错过任何一台服务器,进而能够在安全检测过程中准确查找到出现问题或故障的服务器,以便对出现安全问题的服务器进行修复,提升网站的安全性。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的设备或者装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。