CN108206830B - 漏洞扫描方法、装置、计算机设备和存储介质 - Google Patents

漏洞扫描方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN108206830B
CN108206830B CN201711492203.7A CN201711492203A CN108206830B CN 108206830 B CN108206830 B CN 108206830B CN 201711492203 A CN201711492203 A CN 201711492203A CN 108206830 B CN108206830 B CN 108206830B
Authority
CN
China
Prior art keywords
data
flows
scanned
scanning
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711492203.7A
Other languages
English (en)
Other versions
CN108206830A (zh
Inventor
周圣龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201711492203.7A priority Critical patent/CN108206830B/zh
Priority to PCT/CN2018/077372 priority patent/WO2019127890A1/zh
Publication of CN108206830A publication Critical patent/CN108206830A/zh
Application granted granted Critical
Publication of CN108206830B publication Critical patent/CN108206830B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/306Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information intercepting packet switched data communications, e.g. Web, Internet or IMS communications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Technology Law (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请涉及一种漏洞扫描方法、系统、计算机设备和存储介质,该方法包括截取待扫描流量数据;判断所截取的待扫描流量数据是否为动态数据;当所截取的待扫描流量数据是动态数据时,则查询待扫描流量数据是否存在参数;当扫描流量数据存在参数时,则获取待扫描流量数据的类型;获取与待扫描流量数据的类型对应的漏洞扫描规则;通过漏洞扫描规则对待扫描流量数据进行漏洞扫描。上述漏洞扫描方法、装置、计算机设备和存储介质,首先对不需要扫描的待扫描流量数据进行剔除,其次根据待扫描流量数据的类型获取到对应的漏洞扫描规则,而不需要将数据库中所有的漏洞扫描规则均执行一遍,可以大大降低漏洞扫描规则的执行数量,从而也提高了漏洞扫描的效率。

Description

漏洞扫描方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种漏洞扫描方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了漏洞扫描技术,传统的漏洞扫描技术是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发现可利用的漏洞的一种安全检测(渗透攻击)行为。
然而,传统中的漏洞扫描技术是扫描服务器主动通过爬虫技术对服务器中的待扫描数据进行爬取,然后通过漏洞数据库中所有的漏洞匹配规则去判断所爬取的数据是否存在漏洞,扫描效率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高漏洞扫描效率的漏洞扫描方法、装置、计算机设备和存储介质。
一种漏洞扫描方法,所述方法包括:
截取待扫描流量数据;
判断所截取的待扫描流量数据是否为动态数据;
当所截取的待扫描流量数据是动态数据时,则查询所述待扫描流量数据是否存在参数;
当所述扫描流量数据存在参数时,则获取所述待扫描流量数据的类型;
获取与所述待扫描流量数据的类型对应的漏洞扫描规则;
通过所述漏洞扫描规则对所述待扫描流量数据进行漏洞扫描。
在其中一个实施例中,所述截取待扫描流量数据的步骤之后,还包括:
获取当前资源占用率;
若所述当前资源占用率超过阈值时,则获取备扫描服务器的资源占用率;
选取所述备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在其中一个实施例中,所述获取当前资源占用率的步骤之前,还包括:
判断当前扫描服务器是否出现故障;
若当前扫描服务器未出现故障,则继续执行获取当前资源占用率的步骤;
若当前扫描服务器出现故障,则获取备扫描服务器的资源占用率;
选取所述备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在其中一个实施例中,所述截取待扫描流量数据的步骤之后,还包括:
统计截取所述待扫描流量数据的截取次数;
根据所述截取次数启动对应数量的扫描服务器;
将所述待扫描流量数据分配至所启动的扫描服务器中以继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在其中一个实施例中,所述通过所述漏洞扫描规则对所述待扫描流量数据进行漏洞扫描的步骤之后,还包括:
接收针对所述待扫描流量数据的漏洞扫描规则调整指令;
根据所述漏洞扫描规则调整指令获取漏洞扫描补充规则;
通过所述漏洞扫描补充规则对所述待扫描流量数据进行漏洞扫描。
在其中一个实施例中,所述截取待扫描流量数据的步骤,包括:
通过预先设置在客户端的代理程序截取待扫描流量数据。
在其中一个实施例中,所述截取待扫描流量数据的步骤,包括:
接收核心交换机根据所截取到的待扫描流量数据生成的镜像流量数据作为待扫描流量数据。
一种漏洞扫描装置,所述装置包括:
流量截取模块,用于截取待扫描流量数据;
数据判断模块,用于判断所截取的待扫描流量数据是否为动态数据;
查询模块,用于当所截取的待扫描流量数据是动态数据时,则查询所述待扫描流量数据是否存在参数;
流量类型获取模块,用于当所述待扫描流量数据存在参数时,则获取所述待扫描流量数据的类型;
规则获取模块,用于获取与所述待扫描流量数据的类型对应的漏洞扫描规则;
扫描模块,用于通过所述漏洞扫描规则对所述待扫描流量数据进行漏洞扫描。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
上述漏洞扫描方法、装置、计算机设备和存储介质,首先是截取待扫描流量数据,即当客户端存在数据访问时,则就会截取流量数据,使得待扫描流量数据的覆盖范围变大;其次,在漏洞扫描前,对不需要扫描的待扫描流量数据进行剔除,减少了待扫描流量数据的扫描量,提高了漏洞扫描效率;最后,根据待扫描流量数据的类型获取到对应的漏洞扫描规则,而不需要将数据库中所有的漏洞扫描规则均执行一遍,可以大大降低漏洞扫描规则的执行数量,从而也提高了漏洞扫描的效率。
附图说明
图1为一个实施例中漏洞扫描方法的应用场景图;
图2为一实施例中扫描服务器的架构图;
图3为一个实施例中漏洞扫描方法的流程示意图;
图4为一个实施例中漏洞扫描装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的漏洞扫描方法,可以应用于如图1所示的应用环境中。其中,终端可以通过核心交换机或路由器等访问网络上的资源,扫描服务器可以通过核心交换机或路由器截取到终端的流量数据,或者扫描服务器可以通过设置代理服务器的方式截取到终端的流量数据,从而扫描服务器可以在截取到流量数据的时候被动地对流量数据进行扫描,以判断该流量数据是否为漏洞数据,从而实现漏洞的检测。其中终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,扫描服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
参见图2,图2为一实施例中扫描服务器的架构图,其中包括系统基础、调动引擎、web应用服务,调度引擎主要是为了被动式扫描服务,web应用服务则主要是为了查询记录服务器,UI界面则是可以进行显示。具体地,调度引擎可以采用分布式多线程的部署,其中设置有机器学习模型、扫描引擎以及系统升级程序等,该机器学习模型可以是决策树模型,扫描引擎主要存储有漏洞扫描规则,系统升级程序主要是针对系统的升级。Web应用服务主要包括报告模型、日志模块和配置模块,web应用服务则主要是为了查询记录服务,即每次漏洞扫描完成后可以生成日志存储至日志模块,并根据扫描结果生成对应的报告,例如存在漏洞的报告或不存在漏洞的报告,并显示在对应的UI界面上。
在一个实施例中,如图3所示,提供了一种漏洞扫描方法,以该方法应用于图1中的扫描服务器为例进行说明,包括以下步骤:
S302:截取待扫描流量数据。
具体地,流量数据是指终端在访问网络上的资源时所产生的数据,其包括访问请求的报文等。用户使用的终端可以访问Internet上的资源,当用户使用的终端进行访问时,可以在主干节点或链路节点中进行流量数据截取,截取到的流量存储在扫描服务器中,从而根据该流量数据判断是否存在漏洞。
S304:判断所截取的待扫描流量数据是否为动态数据。
具体地,动态数据只是既可以看到,又可以交互的数据,并获得良好的体验效果,用户不再是被动的去浏览,比如说留言板,论坛,用户注册等这些就是动态的可以让用户与网站交互,而静态数据的则是仅供查看。具体地可以通过机器学习的方式将所截取到的待扫描流量数据中不需要漏洞检测的流量删除,例如可以通过决策树算法进行,当截取到待扫描流量数据时,则输入机器学习模型中,首先判断该待扫描的流量数据是否为动态数据,如果是动态数据,则表示该截取的待扫描流量数据需要继续扫描,如果是静态数据,则可以剔除掉,从而可以使得需要继续扫描的待扫描流量数据的量减少,提高扫描效率。其中机器学习的模型可以是预先设置好的,例如通过历史待扫描数据形成训练集和测试集等生成该机器学习的模型,其中训练集用于训练形成初始模型,测试集用于对初始模型进行修正,以保证模型的正确性。
S306:当所截取的待扫描流量数据是动态数据时,则查询待扫描流量数据是否存在参数。
具体地,当第一步机器学习判断出该待扫描流量数据时动态数据时,则可以通过第二步机器学习判断该流量数据是否存在参数,只有存在参数的待扫描流量才会进行漏洞扫描,而没有参数的待扫描流量由于其一般不需要获取网络上服务器的资源等,因此不会进行漏洞扫描。在其他的实施例中,可以将两步机器学习集成在一个机器学习模型中,即待扫描流量数据当输入该集成的模型时,可以提出掉静态数据和无参数的待扫描流量数据。
S308:当待扫描流量数据存在参数时,则获取待扫描流量数据的类型。
具体地,当待扫描流量数据为动态数据,且存在参数时,则标识该待扫描流量数据需要进行漏洞扫描,因此首先对获取到待扫描流量数据的类型,从而可以根据不同的类型获取到不同的漏洞扫描规则,进而减少漏洞扫描规则的执行。
S310:获取与待扫描流量数据的类型对应的漏洞扫描规则。
具体地,待扫描流量数据的类型可以包括web流量或network流量等,根据该类型可以获取到对应的漏洞检测规则,从而可以减少漏洞检测规则的执行率。例如待扫描流量数据为web流量时,则直接获取到针对web流量的漏洞检测规则,而不需要执行全部的漏洞检测规则,提高漏洞检测规则的执行效率。
S312:通过漏洞扫描规则对待扫描流量数据进行漏洞扫描。
具体地,漏洞扫描规则是指预先存储在扫描服务器中的规则,通过将待扫描流量数据与该漏洞扫描规则进行比较可以得到该待扫描流量数据是否为漏洞数据的结果,从而可以实现漏洞的扫描,例如当待扫描流量数据符合漏洞扫描规则时,则表示该待扫描流量数据为漏洞数据,因此需要后续拦截等以防止其正常访问,当待扫描流量数据不符合漏洞扫描规则时,则表示该待扫描流量数据不是漏洞数据,其可以正常进行访问,不需要后续进行拦截等操作。
上述漏洞扫描方法,首先是截取待扫描流量数据,即当客户端存在数据访问时,则就会截取流量数据,使得待扫描流量数据的覆盖范围变大;其次,在漏洞扫描前,对不需要扫描的待扫描流量数据进行剔除,减少了待扫描流量数据的扫描量,提高了漏洞扫描效率;最后,根据待扫描流量数据的类型获取到对应的漏洞扫描规则,而不需要将数据库中所有的漏洞扫描规则均执行一遍,可以大大降低漏洞扫描规则的执行数量,从而也提高了漏洞扫描的效率。
在其中一个实施例中,截取待扫描流量数据的步骤,即步骤S302之后,还可以包括:获取当前资源占用率;若当前资源占用率超过阈值时,则获取备扫描服务器的资源占用率;选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
具体地,在该实施例中扫描服务器是以集群的形式存在的,设置一台主扫描服务器,当主扫描服务器截取到待扫描流量数据后,首先判断主扫描服务器的资源占用率,当主扫描服务器的当前资源占用率超过阈值时,则表示主扫描服务器的当前资源占用率较高,因此继续获取备扫描服务器的资源占用率,并获取到资源占用率最低的备扫描服务器来执行该漏洞扫描的方法,即判断所截取的待扫描流量数据是否为动态数据等。且在获取备扫描服务器的资源占用率时,还可以对该备扫描服务器的资源占用率进行排序,这样更加方便选取。其中当前资源占用率的阈值可以是根据经验进行确定,或者是根据系统压力测试时的测试峰值进行确定,例如根据所截取到的待扫描流量数据的量来确定不同的阈值等。资源占用率可以是指扫描服务器的cpu的占用率等。
上述实施例中,在截取到待扫描流量数据后,首先判断主扫描服务器的资源占用率,当主扫描服务器的资源占用率未超过阈值时,才会通过主扫描服务器进行漏洞扫描,当主扫描服务器的资源占用率超过阈值时,则启动备扫描服务器,由备扫描服务器进行漏洞扫描,可以保证系统的协调一致,正常运行。
在其中一个实施例中,获取当前资源占用率的步骤之前还可以包括:判断当前扫描服务器是否出现故障;若当前扫描服务器未出现故障,则继续执行获取当前资源占用率的步骤;若当前扫描服务器出现故障,则获取备扫描服务器的资源占用率;选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
具体地,在获取当前资源占用率的步骤之前,首先判断当前扫描服务器是否出现故障,如果未出现故障,则可以进一步判断当前资源占用率,并根据当前资源占用率来判断是否由当前扫描服务器来执行漏洞检测。如果当前扫描服务器出现故障,则选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤,而不需要先判断当前资源占用率,可以减少执行步骤,其中,资源占用率最低可以是指资源占用率小于资源占用率预设值,且最低的一个资源占用率;例如三台备扫描服务器:备扫描服务器A、备扫描服务器B、备扫描服务器C,其中备扫描服务器A的资源占用率为a,备扫描服务器B的资源占用率为b,备扫描服务器C的资源占用率为c,a大于资源占用率预设值m,b和c小于资源占用率预设值m,且b小于c,因此需要选取资源占用率b所对应的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤,且在本实施例中不对该资源占用率预设值进行具体限定,其可以是根据经验进行设置的。
在实际使用时,扫描服务器采用分布式架构,多线程队列形式进行插件扫描或者规则匹配。例如可以设置一台主扫描服务器和多台备扫描服务器,接收到截取的流量时,首先判断主扫描服务器是否故障,如果主扫描服务器故障,则通过备扫描服务器进行扫描,其中也可以首先判断被扫描服务器是否出现故障,例如可以按照备扫描服务器的顺序一台一台地进行判断,当当前备扫描服务器出现故障,则按照顺序对下一台进行判断,直至出现没有故障的备扫描服务器。如果主扫描服务器未出现故障,则获取主扫描服务器当前的资源占用率,当资源占用率超过阈值时,则通过备扫描服务器进行扫描,例如可以首先获取到备扫描服务器当前的资源占用率,然后进行排序,选择资源占用率低的备扫描服务器进行扫描。
上述实施例中,在截取待扫描流量数据后,首先判断当前扫描服务器是否出现故障,如果出现故障,则直接选取备扫描服务器进行漏洞扫描,如果没有出现故障,则首先判断当前扫描服务器的资源占用率,当当前扫描服务器的资源占用率未超过阈值时,才会通过当前扫描服务器进行漏洞扫描,当当前扫描服务器的资源占用率超过阈值时,则启动其他扫描服务器,由其他扫描服务器进行漏洞扫描,可以保证系统的协调一致,正常运行。
在其中一个实施例中,截取待扫描流量数据的步骤,即步骤S302之后,还包括:统计截取待扫描流量数据的截取次数;根据截取次数启动对应数量的扫描服务器;将待扫描流量数据分配至所启动的扫描服务器中以继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
具体地,待扫描流量的截取次数是指扫描服务器所收到的漏洞扫描请求的次数,即通过核心交换机或路由器或代理服务器截取到待扫描流量后,该核心交换机或路由器或代理服务器则向扫描服务器发送漏洞扫描请求,该请求中携带有待扫描流量数据。扫描服务器控制系统根据截取次数启动对应数量的扫描服务器,将待扫描流量数据分配至所启动的扫描服务器中,从而多台扫描服务器一起对待扫描流量数据进行扫描。
其中,根据所截取到的待扫描流量数据的截取次数,即获取针对待扫描流量数据进行扫描的请求的数量,根据该请求的数量启动对应的扫描服务器,然后根据负载均衡策略将所接收到的请求分配给对应的扫描服务器。例如,有3000个请求需要进行处理时,则开启的扫描服务器的数量是3个,根据负载均衡策略将这3000个请求按顺序的分配给这3台扫描服务器,3台扫描服务器将同时对请求进行处理,提高了扫描效率。且每台扫描服务器在扫描的时,可以采用多线程扫描,即每台扫描服务器接收到1000个请求时,开启50条线程,每条线程对20个请求中的待扫描流量数据进行扫描,这样可以进一步地提高效率。其中可以预设每台扫描服务器的处理峰值,并为每台扫描服务器预设处理等级,根据所接收到的请求的数量选取处理等级,例如当接收到的请求为第一数量,则处理等级为一级,当接收到的请求为第二数量,则处理等级为二级,一级时扫描服务器的处理请求的量为A,二级时扫描服务器的处理请求的量为B;根据所接收到的请求的数量选取处理等级,假设选取的处理等级为一级,则根据所接收到的请求的数量N与一级时扫描服务器的处理请求的量为A得到需要启动的扫描服务器的台数=N/A;然后根据数量A确定每台扫描服务器需要启动的线程数,从而实现对请求的并行处理,提高处理效率。
上述实施例中,根据所截取到的流量的次数,即获取针对流量进行扫描的请求的数量,根据该请求的数量启动对应的扫描服务器,然后根据负载均衡策略将所接收到的请求分配给对应的扫描服务器,提高了处理效率。
在其中一个实施例中,通过漏洞扫描规则对待扫描流量数据进行漏洞扫描的步骤之后,还可以包括:接收针对待扫描流量数据的漏洞扫描规则调整指令;根据漏洞扫描规则调整指令获取漏洞扫描补充规则;通过漏洞扫描补充规则对待扫描流量数据进行漏洞扫描。
具体地,一般情况下对不同类型的待扫描流量数据只需要通过与之对应的漏洞扫描规则进行扫描即可,但是在特殊情况下,该待扫描流量数据的扫描结果可能存在问题,为了避免该问题的出现,可以将待扫描流量数据的扫描结果均展示在UI界面上,通过该UI界面可以接收到针对待扫描流量数据的漏洞扫描规则调整指令,例如针对web流量,扫描服务器可能首先通过web流量漏洞扫描规则进行扫描后,输出扫描结果,但是测试人员可能认为本次扫描不够完善,则可以再调用network流量扫描规则对该web流量进行再次扫描,即根据漏洞扫描规则调整指令获取漏洞扫描补充规则;通过漏洞扫描补充规则对待扫描流量数据进行漏洞扫描,从而可以提高漏洞扫描规则的准确率。
上述实施例中,还可以包括接收漏洞扫描规则调整指令,根据漏洞扫描规则调整指令获取其他类型的漏洞扫描规则对该流量进行进一步的扫描。即通过web应用服务对系统进行配置,该实施例中,不仅支持流量的动态扫描,还支持人工干预,从而可以对重点流量进行全方位的扫描,提高漏洞扫描的准确率。
在其中一个实施例中,截取待扫描流量数据的步骤可以包括通过预先设置在客户端的代理程序截取待扫描流量数据。或者截取待扫描流量数据的步骤可以包括:接收核心交换机根据所截取到的待扫描流量数据生成的镜像流量数据作为待扫描流量数据。
具体地,可以在主干或主链路节点中进行流量截取,利于可以预先在客户端设置代理,当终端安装的客户端存在流量数据的发送时,则通过该预先设置在客户端的代理程序截取到待扫描流量数据。或者在核心交换机或路由器接收到客户端发送的流量数据时,核心交换机或路由器将该流量数据进行镜像,并将流量数据的镜像发送到待扫描服务器以实现待扫描流量数据的截取。
上述实施例中,通过在主干或主链路节点中进行流量截取,并将该截取到的待扫描流量数据发送到扫描服务器,实现扫描服务器对待扫描流量数据的被动扫描,而不需要像传统中爬取流量数据,从而可以保证待扫描流量数据的完整性。
应该理解的是,虽然图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种漏洞扫描装置,包括:流量截取模块、数据判断模块、查询模块、流量类型获取模块、规则获取模块和扫描模块,其中:
流量截取模块100,用于截取待扫描流量数据。
数据判断模块200,用于判断所截取的待扫描流量数据是否为动态数据。
查询模块300,用于当所截取的待扫描流量数据是动态数据时,则查询待扫描流量数据是否存在参数。
流量类型获取模块400,用于当待扫描流量数据存在参数时,则获取待扫描流量数据的类型。
规则获取模块500,用于获取与待扫描流量数据的类型对应的漏洞扫描规则。
扫描模块600,用于通过漏洞扫描规则对待扫描流量数据进行漏洞扫描。
在其中一个实施例中,装置还可以包括:
资源占用率获取模块,用于在截取待扫描流量数据之后,获取当前资源占用率;若当前资源占用率超过阈值时,则获取备扫描服务器的资源占用率。
扫描模块还用于选取备扫描服务器的资源占用率最低的备扫描服务器继续判断所截取的待扫描流量数据是否为动态数。
在其中一个实施例中,装置还可以包括:
故障判断模块,用于在获取当前资源占用率之前,判断当前扫描服务器是否出现故障。
资源占用率获取模块还用于若当前扫描服务器未出现故障,则继续获取当前资源占用率;若当前扫描服务器出现故障,则获取备扫描服务器的资源占用率。
扫描模块还用于选取备扫描服务器的资源占用率最低的备扫描服务器继续判断所截取的待扫描流量数据是否为动态数据。
在其中一个实施例中,装置还可以包括:
统计模块,用于在截取待扫描流量数据之前,统计截取待扫描流量数据的截取次数。
启动模块,用于根据截取次数启动对应数量的扫描服务器。
数据判断模块还用于将待扫描流量数据分配至所启动的扫描服务器中以继续判断所截取的待扫描流量数据是否为动态数据。
在其中一个实施例中,装置还可以包括:
接收模块,用于在通过漏洞扫描规则对待扫描流量数据进行漏洞扫描之后,接收针对待扫描流量数据的漏洞扫描规则调整指令。
补充规则获取模块,用于根据漏洞扫描规则调整指令获取漏洞扫描补充规则。
补充扫描模块,用于通过漏洞扫描补充规则对待扫描流量数据进行漏洞扫描。
在其中一个实施例中,截取模块还可以用于通过预先设置在客户端的代理程序截取待扫描流量数据。
在其中一个实施例中,截取模块还可以用于接收核心交换机根据所截取到的待扫描流量数据生成的镜像流量数据作为待扫描流量数据。
关于漏洞扫描装置的具体限定可以参见上文中对于漏洞扫描方法的限定,在此不再赘述。上述漏洞扫描装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储漏洞扫描规则数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种漏洞扫描方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:截取待扫描流量数据;判断所截取的待扫描流量数据是否为动态数据;当所截取的待扫描流量数据是动态数据时,则查询待扫描流量数据是否存在参数;当待扫描流量数据存在参数时,则获取待扫描流量数据的类型;获取与待扫描流量数据的类型对应的漏洞扫描规则;通过漏洞扫描规则对待扫描流量数据进行漏洞扫描。
在其中一个实施例中处理器执行计算机程序时所实现的截取待扫描流量数据的步骤之后,还可以包括:获取当前资源占用率;若当前资源占用率超过阈值时,则获取备扫描服务器的资源占用率;选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在其中一个实施例中处理器执行计算机程序时所实现的获取当前资源占用率的步骤之前,还可以包括:判断当前扫描服务器是否出现故障;若当前扫描服务器未出现故障,则继续执行获取当前资源占用率的步骤;若当前扫描服务器出现故障,则获取备扫描服务器的资源占用率;选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在其中一个实施例中处理器执行计算机程序时所实现的截取待扫描流量数据的步骤之后,还可以包括:统计截取待扫描流量数据的截取次数;根据截取次数启动对应数量的扫描服务器;将待扫描流量数据分配至所启动的扫描服务器中以继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在其中一个实施例中处理器执行计算机程序时所实现的通过漏洞扫描规则对待扫描流量数据进行漏洞扫描的步骤之后,还可以包括:接收针对待扫描流量数据的漏洞扫描规则调整指令;根据漏洞扫描规则调整指令获取漏洞扫描补充规则;通过漏洞扫描补充规则对待扫描流量数据进行漏洞扫描。
在其中一个实施例中处理器执行计算机程序时所实现的截取待扫描流量数据的步骤,可以包括:通过预先设置在客户端的代理程序截取待扫描流量数据。
在其中一个实施例中处理器执行计算机程序时所实现的截取待扫描流量数据的步骤,可以包括:接收核心交换机根据所截取到的待扫描流量数据生成的镜像流量数据作为待扫描流量数据。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:截取待扫描流量数据;判断所截取的待扫描流量数据是否为动态数据;当所截取的待扫描流量数据是动态数据时,则查询待扫描流量数据是否存在参数;当待扫描流量数据存在参数时,则获取待扫描流量数据的类型;获取与待扫描流量数据的类型对应的漏洞扫描规则;通过漏洞扫描规则对待扫描流量数据进行漏洞扫描。
在一个实施例中,计算机程序被处理器执行时所实现的截取待扫描流量数据的步骤之后,还可以包括:获取当前资源占用率;若当前资源占用率超过阈值时,则获取备扫描服务器的资源占用率;选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在一个实施例中,计算机程序被处理器执行时所实现的获取当前资源占用率的步骤之前,还可以包括:判断当前扫描服务器是否出现故障;若当前扫描服务器未出现故障,则继续执行获取当前资源占用率的步骤;若当前扫描服务器出现故障,则获取备扫描服务器的资源占用率;选取备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在一个实施例中,计算机程序被处理器执行时所实现的截取待扫描流量数据的步骤之后,还可以包括:统计截取待扫描流量数据的截取次数;根据截取次数启动对应数量的扫描服务器;将待扫描流量数据分配至所启动的扫描服务器中以继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
在一个实施例中,计算机程序被处理器执行时所实现的通过漏洞扫描规则对待扫描流量数据进行漏洞扫描的步骤之后,还可以包括:接收针对待扫描流量数据的漏洞扫描规则调整指令;根据漏洞扫描规则调整指令获取漏洞扫描补充规则;通过漏洞扫描补充规则对待扫描流量数据进行漏洞扫描。
在一个实施例中,计算机程序被处理器执行时所实现的截取待扫描流量数据的步骤,可以包括:通过预先设置在客户端的代理程序截取待扫描流量数据。
在一个实施例中,计算机程序被处理器执行时所实现的截取待扫描流量数据的步骤,可以包括:接收核心交换机根据所截取到的待扫描流量数据生成的镜像流量数据作为待扫描流量数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种漏洞扫描方法,所述方法包括:
截取待扫描流量数据;
判断所截取的待扫描流量数据是否为动态数据,所述动态数据为既可以看到,又有交互的数据;
当所截取的待扫描流量数据是动态数据时,则查询所述待扫描流量数据是否存在参数;
当所述扫描流量数据存在参数时,则获取所述待扫描流量数据的类型;
获取与所述待扫描流量数据的类型对应的漏洞扫描规则;
通过所述漏洞扫描规则对所述待扫描流量数据进行漏洞扫描。
2.根据权利要求1所述的方法,其特征在于,所述截取待扫描流量数据的步骤之后,还包括:
获取当前资源占用率;
若所述当前资源占用率超过阈值时,则获取备扫描服务器的资源占用率;
选取所述备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
3.根据权利要求2所述的方法,其特征在于,所述获取当前资源占用率的步骤之前,还包括:
判断当前扫描服务器是否出现故障;
若当前扫描服务器未出现故障,则继续执行获取当前资源占用率的步骤;
若当前扫描服务器出现故障,则获取备扫描服务器的资源占用率;
选取所述备扫描服务器的资源占用率最低的备扫描服务器继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
4.根据权利要求1所述的方法,其特征在于,所述截取待扫描流量数据的步骤之后,还包括:
统计截取所述待扫描流量数据的截取次数;
根据所述截取次数启动对应数量的扫描服务器;
将所述待扫描流量数据分配至所启动的扫描服务器中以继续执行判断所截取的待扫描流量数据是否为动态数据的步骤。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述通过所述漏洞扫描规则对所述待扫描流量数据进行漏洞扫描的步骤之后,还包括:
接收针对所述待扫描流量数据的漏洞扫描规则调整指令;
根据所述漏洞扫描规则调整指令获取漏洞扫描补充规则;
通过所述漏洞扫描补充规则对所述待扫描流量数据进行漏洞扫描。
6.根据权利要求1至4任意一项所述的方法,其特征在于,所述截取待扫描流量数据的步骤,包括:
通过预先设置在客户端的代理程序截取待扫描流量数据。
7.根据权利要求1至4任意一项所述的方法,其特征在于,所述截取待扫描流量数据的步骤,包括:
接收核心交换机根据所截取到的待扫描流量数据生成的镜像流量数据作为待扫描流量数据。
8.一种漏洞扫描装置,其特征在于,所述装置包括:
流量截取模块,用于截取待扫描流量数据;
数据判断模块,用于判断所截取的待扫描流量数据是否为动态数据,所述动态数据为既可以看到,又有交互的数据;
查询模块,用于当所截取的待扫描流量数据是动态数据时,则查询所述待扫描流量数据是否存在参数;
流量类型获取模块,用于当所述待扫描流量数据存在参数时,则获取所述待扫描流量数据的类型;
规则获取模块,用于获取与所述待扫描流量数据的类型对应的漏洞扫描规则;
扫描模块,用于通过所述漏洞扫描规则对所述待扫描流量数据进行漏洞扫描。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN201711492203.7A 2017-12-30 2017-12-30 漏洞扫描方法、装置、计算机设备和存储介质 Active CN108206830B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711492203.7A CN108206830B (zh) 2017-12-30 2017-12-30 漏洞扫描方法、装置、计算机设备和存储介质
PCT/CN2018/077372 WO2019127890A1 (zh) 2017-12-30 2018-02-27 漏洞扫描方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711492203.7A CN108206830B (zh) 2017-12-30 2017-12-30 漏洞扫描方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN108206830A CN108206830A (zh) 2018-06-26
CN108206830B true CN108206830B (zh) 2019-09-24

Family

ID=62606158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711492203.7A Active CN108206830B (zh) 2017-12-30 2017-12-30 漏洞扫描方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN108206830B (zh)
WO (1) WO2019127890A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110059007B (zh) * 2019-04-03 2020-12-22 奇安信科技集团股份有限公司 系统漏洞扫描方法、装置、计算机设备及存储介质
CN110377518B (zh) * 2019-07-17 2023-07-25 招商银行股份有限公司 全流程扫描方法、装置、设备及可读存储介质
CN111858294A (zh) * 2019-12-02 2020-10-30 北京嘀嘀无限科技发展有限公司 数据流获取方法、获取装置、计算机设备及存储介质
CN111078517B (zh) * 2019-12-09 2023-09-01 广州品唯软件有限公司 一种页面监控方法、装置、计算机设备及存储介质
US11930031B2 (en) 2020-06-23 2024-03-12 Tenable, Inc. Distributed network based vulnerability scanning via endpoint agent deployment
CN112464238B (zh) * 2020-12-15 2023-10-31 中国联合网络通信集团有限公司 漏洞扫描方法及电子设备
CN112468516A (zh) * 2020-12-17 2021-03-09 全球能源互联网研究院有限公司 一种安全防御方法、装置、电子设备及存储介质
CN112738068B (zh) * 2020-12-25 2023-03-07 北京天融信网络安全技术有限公司 一种网络脆弱性扫描方法及装置
CN115622744B (zh) * 2022-09-21 2024-04-09 天津大学 一种加密流量下的web漏洞扫描攻击检测系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7278161B2 (en) * 2001-10-01 2007-10-02 International Business Machines Corporation Protecting a data processing system from attack by a vandal who uses a vulnerability scanner
US8819832B2 (en) * 2011-08-26 2014-08-26 Rapid7, Llc Systems and methods for performing vulnerability scans on virtual machines
CN104144148A (zh) * 2013-05-10 2014-11-12 中国电信股份有限公司 漏洞扫描方法和服务器、以及风险评估系统
CN103685228B (zh) * 2013-10-12 2017-05-17 北京奇安信科技有限公司 一种网站漏洞快速扫描方法及设备
CN103685258B (zh) * 2013-12-06 2018-09-04 北京奇安信科技有限公司 一种快速扫描网站漏洞的方法和装置
CN106656657A (zh) * 2016-11-11 2017-05-10 北京匡恩网络科技有限责任公司 基于工控协议的自适应漏洞挖掘框架

Also Published As

Publication number Publication date
CN108206830A (zh) 2018-06-26
WO2019127890A1 (zh) 2019-07-04

Similar Documents

Publication Publication Date Title
CN108206830B (zh) 漏洞扫描方法、装置、计算机设备和存储介质
CN109981653B (zh) 一种web漏洞扫描方法
US11777981B1 (en) Risk scoring based on compliance verification test results in a local network
CN108199921A (zh) 一种模拟测试的方法、装置及存储介质
CN110381072A (zh) 基于区块链的数据验证方法、系统和计算机可读存储介质
CN110309051A (zh) 管理测试用例的方法、系统、设备及存储介质
CN108696490A (zh) 账号权限的识别方法及装置
CN106911648B (zh) 一种环境隔离方法及设备
CN110191063A (zh) 服务请求的处理方法、装置、设备及存储介质
CN105260292B (zh) 一种日志记录方法、装置及系统
CN109857751A (zh) 基于区块链的跨平台数据更新方法、装置和计算机设备
CN106156133A (zh) 控制表单重复提交的方法、装置及系统
CN109669718A (zh) 系统权限配置方法、装置、设备及存储介质
CN107315952A (zh) 用于确定应用程序可疑行为的方法和装置
CN108492005A (zh) 项目数据处理方法、装置、计算机设备和存储介质
CN110221949A (zh) 自动化运维管理方法、装置、设备及可读存储介质
CN110597709B (zh) 混合模式移动应用的交互调试方法、装置和计算机设备
CN107026871A (zh) 一种基于云计算的Web漏洞扫描方法
CN107682361A (zh) 网站漏洞扫描方法、装置、计算机设备及存储介质
CN109447384A (zh) 风控系统的验证方法、装置、设备及存储介质
CN107360189A (zh) 突破Web防护的漏洞扫描方法及装置
CN109981739A (zh) 基于区块链的会话数据处理方法、装置、设备及介质
CN114546837A (zh) 接口测试的方法、装置、设备及存储介质
CN108920357A (zh) 业务系统检测方法、装置、计算机设备和存储介质
CN112799970B (zh) 测试数据处理方法、装置、电子设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant