CN112906005A - Web漏洞扫描方法、装置、系统、电子装置和存储介质 - Google Patents

Web漏洞扫描方法、装置、系统、电子装置和存储介质 Download PDF

Info

Publication number
CN112906005A
CN112906005A CN202110141700.2A CN202110141700A CN112906005A CN 112906005 A CN112906005 A CN 112906005A CN 202110141700 A CN202110141700 A CN 202110141700A CN 112906005 A CN112906005 A CN 112906005A
Authority
CN
China
Prior art keywords
web
request data
scanning
web request
vulnerability scanning
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.)
Pending
Application number
CN202110141700.2A
Other languages
English (en)
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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology 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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202110141700.2A priority Critical patent/CN112906005A/zh
Publication of CN112906005A publication Critical patent/CN112906005A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种Web漏洞扫描方法、装置、系统、电子装置和存储介质,其中,该Web漏洞扫描方法包括:获取第一Web请求数据;依次对每个该第一Web请求数据进行清洗以去除所有该第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;依次对该第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。通过本申请,解决了Web漏洞扫描的效率低的问题,实现了高效、灵活的WEB漏洞扫描。

Description

Web漏洞扫描方法、装置、系统、电子装置和存储介质
技术领域
本申请涉及网络安全技术领域,特别是涉及Web漏洞扫描方法、装置、系统、电子装置和存储介质。
背景技术
Web漏洞通常是指网站程序上的漏洞,可能是由于代码编写者在编写代码时考虑不周全等原因而造成的漏洞,常见的Web漏洞有SQL注入、XSS漏洞和上传漏洞等。
在相关技术中,针对Web漏洞的扫描检测通常是采用爬虫和单机扫描的方式,而由于爬虫技术自身的局限性爬取到的接口会出现遗漏的情况漏洞扫描技术本身是单机应用,不能应对大批量漏洞扫描任务,会出现爬取接口不全、扫描效率低下的问题。
目前针对相关技术中Web漏洞扫描的效率低的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种Web漏洞扫描方法、装置、系统、电子装置和存储介质,以至少解决相关技术中Web漏洞扫描的效率低的问题。
第一方面,本申请实施例提供了一种Web漏洞扫描方法,所述方法包括:
获取第一Web请求数据;
依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;
依次对所述第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
在一个可行的实施例中,所述依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据包括:
根据所述第一Web请求数据的字段组成成分,获取所述第一Web请求数据的分类结果;
基于所述分类结果计算得到每个所述第一Web请求数据对应的标志值;
判断所述标志值是否在历史清洗集合中,当所述标志值在所述历史清洗集合中时对所述第一Web请求数据进行数据清洗。
在一个可行的实施例中,所述基于所述分类结果计算得到所述第一Web请求数据的标志值包括:
基于所述分类结果删除每个所述第一Web请求数据中的预设参数值;
利用哈希算法,根据删除后的所述第一Web请求数据中的剩余数据计算得到所述标志值。
在一个可行的实施例中,所述依次对所述第二Web请求数据进行漏洞扫描包括:
初始化扫描组件;
依次将所述第二Web请求数据分发至所述扫描组件,并通过所述扫描组件进行漏洞扫描。
在一个可行的实施例中,所述获取Web漏洞扫描结果包括:
获取所述扫描组件进行漏洞扫描的反馈结果;
在所述反馈结果中存在组件漏洞的情况下,将所述反馈结果存储至所述获取Web漏洞扫描结果。
在一个可行的实施例中,所述获取第一Web请求数据包括:
导入代理服务器的Web代理数据,根据所述Web代理数据获取所述第一Web请求数据;和/或,
导入请求数据包,根据所述请求数据包获取所述第一Web请求数据。
在一个可行的实施例中,所述依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据包括:
将获取到的所述第一Web请求数据放入待清洗队列;
从所述待清洗队列中依次提取所述第一Web请求数据进行清洗,并将清洗后得到的第二Web请求数据放入待扫描队列;
所述依次对所述第二Web请求数据进行漏洞扫描包括:
从所述待扫描队列中依次提取所述第二Web请求数据进行漏洞扫描。
第二方面,本申请实施例提供了一种Web漏洞扫描装置,所述装置包括:获取模块、清洗模块和扫描模块;
所述获取模块,用于获取第一Web请求数据;
所述清洗模块,用于依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;
所述扫描模块,用于依次对所述第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
第三方面,本申请实施例提供了一种Web漏洞扫描系统,所述系统包括:终端和Web服务器;其中,所述终端连接所述Web服务器;
所述终端用于发送用户的扫描请求指令;
所述Web服务器用于根据所述扫描请求指令,执行如上述第一方面所述的Web漏洞扫描方法。
第四方面,本申请实施例提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的Web漏洞扫描方法。
第五方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的Web漏洞扫描方法。
相比于相关技术,本申请实施例提供的Web漏洞扫描方法、装置、系统、电子装置和存储介质,通过获取第一Web请求数据;依次对每个该第一Web请求数据进行清洗以去除所有该第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;依次对该第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果,解决了Web漏洞扫描的效率低的问题,实现了高效、灵活的WEB漏洞扫描。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种Web漏洞扫描方法的应用场景示意图;
图2是根据本申请实施例的一种Web漏洞扫描方法的流程图;
图3是根据本申请实施例的另一种Web漏洞扫描方法的流程图;
图4是根据本申请实施例的一种获取第一Web请求数据的示意图;
图5是根据本申请优选实施例的一种Web漏洞扫描架构的示意图;
图6是根据本申请优选实施例的一种Web漏洞扫描方法的流程图;
图7是根据本申请实施例的一种Web漏洞扫描装置的结构框图;
图8是根据本申请实施例的一种计算机设备内部的结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
在本实施例中,提供了一种Web漏洞扫描方法的应用场景,图1是根据本申请实施例的一种Web漏洞扫描方法的应用场景示意图,如图1所示,在该应用环境中,包括终端12和Web服务器14。该终端12通过网络与该Web服务器14进行通信;该Web服务器14通过该终端12获取第一Web请求数据,对每个第一Web请求数据进行清洗以去除所有第一Web请求数据中的重复数据,得到清洗后的第二Web请求数据;该Web服务器14依次对第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果;该Web漏洞扫描结果可以由该Web服务器14发送给该终端12并显示在该终端12上。该终端12可以但不限于是各种智能手机、个人计算机、笔记本电脑和平板电脑,该Web服务器14可以用独立的Web服务器或者是多个Web服务器组成的Web服务器集群来实现。
本实施例提供了一种Web漏洞扫描方法,图2是根据本申请实施例的一种Web漏洞扫描方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取第一Web请求数据。
其中,上述第一Web请求数据可以为通过HTTP协接收到的带有查询信息的针对Web的各类请求数据。
步骤S204,依次对每个该第一Web请求数据进行清洗以去除所有该第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据。
需要说明的是,重复测试历史漏洞是不太合理的,因为一方面接口可能有变动,需要花时间去判断接口是否被变动,第二即使即可没有变动,但是cookie,token等认证有效信息都失效了,这种情况下进行历史报文重测是没意义的。最后参数键值对的值可能失效,和认证信息失效类似,对失效的键值对的值进行历史报文重测是没意义的。因此,本申请实施例通过上述步骤S304对各第一Web请求数据进行清洗,从而清除了所有第一Web请求数据中的重复数据,最终将清洗后的所有第一Web请求数据中的剩余数据作为第二Web请求数据等待扫描。
在一个可行的实施例中,通过上述步骤S202获取到的第一Web请求数据可以放入待清洗队列;通过从该待清洗队列中依次提取该第一Web请求数据进行清洗,并将清洗后得到的第二Web请求数据放入待扫描队列,以便后续能够从该述待扫描队列中依次提取该第二Web请求数据进行漏洞扫描。
步骤S206,依次对该第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
其中,可以对上述各第二Web请求数据进行逐个漏洞扫描,并将发现的漏洞结果存储至Web漏洞扫描结果中。
通过上述步骤S202至步骤S206,通过将获取到的第一Web请求数据放入待清洗队列进行清洗以去除所有该第一Web请求数据中的重复数据,从而采用了对请求包进行流量清洗的方法清洗掉重复的请求,并得到去重后剩余的第二Web请求数据进行漏洞扫描,最终输出Web漏洞扫描结果,因此大大提高了漏洞扫描效率,解决了Web漏洞扫描的效率低的问题,实现了高效、灵活的WEB漏洞扫描。
在一个可行的实施例中,提供了一种Web漏洞扫描方法。图3是根据本申请实施例的另一种Web漏洞扫描方法的流程图,如图3所示,该流程包括图2中的步骤S202和步骤S206,此外还包括如下步骤:
步骤S302,根据该第一Web请求数据的字段组成成分,获取该第一Web请求数据的分类结果。
其中,上述字段组成成分表示每个第一Web请求数据中的各类字段;因此,基于每个第一Web请求数据中不同的字段可以对该第一Web请求数据进行分类,进而得到上述分类结果。例如,可以将每个第一Web请求数据均分类为method、uri、version、header和body这五个部分组成。
步骤S304,基于该分类结果计算得到每个该第一Web请求数据对应的标志值。
其中,上述标志值表示每个第一Web请求数据所对应的数值。基于每个第一Web请求数据的分类结果,确定所对应的标志值。例如,若该分类结果中的第一Web请求数据的body字段为空,则可以根据该分类结果中的method等字段进行哈希计算得到哈希值,并将该哈希值作为上述标志值;或者,若该分类结果中的第一Web请求数据的body字段为不为空,则可以在去除body字段中的参数值后该根据该分类结果中的method等字段进行哈希计算得到哈希值,并将该哈希值作为上述标志值。
具体地,基于所述分类结果删除每个所述第一Web请求数据中的预设参数值;利用哈希算法,根据删除后的所述第一Web请求数据中的剩余数据计算得到所述标志值。例如,如果body字段为空则计算标志值R=hash(method+rmvaule(uri)),如果body不为空,则计算标志值R=hash(method+rmvaule(uri)+rmvaule(body))。其中rmvaule为去除参数值的操作,hash为信息摘要算法5(Message-Digest Algorithm 5,简称为MD5)、安全散列算法1(Secure Hash Algorithm 1,简称为SHA-1)等哈希函数比。
其中,上述计算标志值的表达式中rmvalue的过程为删除参数值,通常参数值会在uri中以及body中,uri的参数是以&为分隔符分开的键值对,比如param1=A&param2=B,body中的参数常见的有三种形式,第一种是以&为分隔符分开的键值对,比如param1=A&param2=B,第二种是以json格式存放的键值对,比如{“param1”:”A”,”param2”:”B”},第三种是以XML格式存放的键值对,比如<xml><param1>A</param1><param2>B</param2></xml>;rmvalue的过程就是删除参数值,保留剩余数据,比如param1=A&param2=B经过rmvalue处理后为param1=&param2=,{“param1”:”A”,”param2”:”B”}经过rmvalue处理后为{“param1”:””,”param2”:””},<xml><param1>A</param1><param2>B</param2></xml>经过rmvalue处理后为<xml><param1></param1><param2></param2></xml>。
步骤S306,判断该标志值是否在历史清洗集合中,当该标志值在该历史清洗集合中时对该第一Web请求数据进行数据清洗,并得到清洗后的第二Web请求数据。
其中,如果上述标志值在历史清洗集合中,则认为当前WEB请求数据重复,不再进行重复漏洞扫描,当前的第一WEB请求数据被丢弃。如果标志值不在历史清洗集合中,首先把标志值放入历史清洗集合,再把该标志值所对应的完整的第一WEB请求数据作为第二WEB请求数据放入待扫描队列中。
通过上述步骤S302至步骤S306,基于第一Web请求数据的分类结果计算得到标志值,若该标志值在历史清洗集合中时对该第一Web请求数据进行流量清洗,因此在流量清洗以及Web漏洞扫描的过程中,不需要保持历史请求数据,在整个Web漏洞扫描架构中除了生成报告之外,无需额外的存储空间,从而有效降低了Web漏洞扫描的占用空间,进一步提高了Web漏洞扫描的效率。
在一个可行的实施例中,依次对该第二Web请求数据进行漏洞扫描还包括如下步骤:初始化扫描组件;依次将该第二Web请求数据分发至该扫描组件,并通过该扫描组件进行漏洞扫描。
具体地,通过初始化所有扫描组件,并将各第二Web请求数据分发给扫描组件,扫描组件收到该第二Web请求数据后,分别进行针对性扫描活动,并汇总所有的扫描结果。其中,获取Web漏洞扫描结果还包括如下步骤:获取该扫描组件进行漏洞扫描的反馈结果;在该反馈结果中存在组件漏洞的情况下,将该反馈结果存储至该获取Web漏洞扫描结果。
通过上述实施例,将第二Web请求数据分发至扫描组件,并通过扫描组件进行漏洞扫描,从而针对Web漏洞扫描采用组件模式,即利用不同的组件扫描不同的漏洞,使得漏洞扫描过程中能够比较灵活地定制扫描组件,有效提高了Web漏洞扫描的灵活性。
在一个可行的实施例中,获取第一Web请求数据还包括如下步骤:导入代理服务器的Web代理数据,根据该Web代理数据获取该第一Web请求数据;和/或,导入请求数据包,根据该请求数据包获取该第一Web请求数据。
其中,本申请实施例的第一Web请求数据获取方式包括:基于连接的代理服务器获取第一Web请求数据,图4是根据本申请实施例的一种获取第一Web请求数据的示意图,如图4所示,通过WEB代理把终端上的测试人员对Web服务器的请求数据导向代理服务器,代理服务器在收到Web请求后拷贝一份请求数据放到待清理队列,代理流程不中断请求,发给Web服务器。或者,也可以通过导入测试过程的请求包,解析导入的请求包,进而通过解析后的请求包获取该第一Web请求数据。
相比于在相关技术中通过爬虫模式进行数据获取,本申请通过上述实施例,利用代理模式以及导入请求包的模式获取第一Web请求数据,使得人工测试覆盖范围可以比爬虫更准确,且代理模式表单数据都是准确的,避免了爬虫爬取不到孤岛链接以及测试不全面的问题,也可以避免表单数据不准确导致的扫描结果假阴性,有效提高了Web漏洞扫描的准确性。同时,相比于相关技术中的被动扫描模式,本申请支持导入数据包的方式,因此能够达到功能测试和漏洞扫描分离的目的,即在正常功能模式中保存请求请求包,再批量导入到本申请的Web漏洞扫描架构中,从而进一步提高了Web漏洞扫描的灵活性。
下面结合实际应用场景对本发明的实施例进行详细说明,图5是根据本申请优选实施例的一种Web漏洞扫描架构的示意图,如图5所示,该Web漏洞扫描架构包括Web请求获取单元、流量清洗单元、Web漏洞扫描单元和报告单元。
其中,Web请求获取单元的功能是获取第一Web请求数据,包括通过导入WEB代理的数据或是导入请求数据包进行数据获取。流量清洗单元从待清洗队列取出第一Web请求数据,按照上述步骤S302至步骤S306提到的方法进行清洗,将清洗完成后得到的第二Web请求数据放到待扫描队列。Web漏洞扫描单元初始化所有扫描组件,并依次从待扫描队列中取出第二WEB请求数据,把第二WEB请求数据分发给扫描组件,扫描组件收到第二WEB请求数据后,分别进行针对性扫描活动,并把结果汇总到报告单元。报告单元汇总所有扫描组件反馈的结果,如果某个组件发现漏洞,则存储该结果为Web漏洞扫描结果。
图6是根据本申请优选实施例的一种Web漏洞扫描方法的流程图,如图6所示,该流程包括如下步骤:
步骤S602,获取第一Web请求数据;清洗第一Web请求数据。其中,获取要处理的第一Web请求数据放入待清洗队列;从该待清洗队列中依次取出该第一Web请求数据进行流量清洗。
步骤S604,把清洗后得到的第二Web请求数据放入待扫描队列。
步骤S606,从待扫描队列取出第二Web请求数据进行漏洞扫描。
步骤S608,判断扫描过程中是否发现漏洞,若是,则存储对应的结果到Web漏洞扫描结果中。
应该理解的是,虽然图2、图3和图6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图3和图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本实施例还提供了一种Web漏洞扫描装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据本申请实施例的一种Web漏洞扫描装置的结构框图,如图7所示,该装置包括:获取模块72、清洗模块74和扫描模块76;该获取模块72,用于获取第一Web请求数据;该清洗模块74,用于依次对每个该第一Web请求数据进行清洗以去除所有该第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;该扫描模块76,用于依次对该第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
通过上述实施例,清洗模块74将获取到的第一Web请求数据放入待清洗队列进行清洗以去除所有该第一Web请求数据中的重复数据,从而采用了对请求包进行流量清洗的方法清洗掉重复的请求,并通过扫描模块76对去重后剩余的第二Web请求数据进行漏洞扫描,最终输出Web漏洞扫描结果,因此大大提高了漏洞扫描效率,解决了Web漏洞扫描的效率低的问题,实现了高效、灵活的WEB漏洞扫描。
在一个可行的实施例中,该清洗模块74还用于根据该第一Web请求数据的字段组成成分,获取该第一Web请求数据的分类结果;该清洗模块74基于该分类结果计算得到每个该第一Web请求数据对应的标志值;该清洗模块74判断该标志值是否在历史清洗集合中,当该标志值在该历史清洗集合中时对该第一Web请求数据进行数据清洗。
在一个可行的实施例中,该清洗模块74还用于基于该分类结果删除每个该第一Web请求数据中的预设参数值;该清洗模块74利用哈希算法,根据删除后的该第一Web请求数据中的剩余数据计算得到该标志值。
在一个可行的实施例中,该扫描模块76还用于初始化扫描组件;该扫描模块76依次将该第二Web请求数据分发至该扫描组件,并通过该扫描组件进行漏洞扫描。
在一个可行的实施例中,该扫描模块76还用于获取该扫描组件进行漏洞扫描的反馈结果;该扫描模块76在该反馈结果中存在组件漏洞的情况下,将该反馈结果存储至该获取Web漏洞扫描结果。
在一个可行的实施例中,该获取模块72还用于导入代理服务器的Web代理数据,根据该Web代理数据获取该第一Web请求数据;和/或,该获取模块72还导入请求数据包,根据该请求数据包获取该第一Web请求数据。
在一个可行的实施例中,该清洗模块74还用于将获取到的该第一Web请求数据放入待清洗队列;该清洗模块74从该待清洗队列中依次提取该第一Web请求数据进行清洗,并将清洗后得到的第二Web请求数据放入待扫描队列;该扫描模块76还用于从该待扫描队列中依次提取该第二Web请求数据进行漏洞扫描。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
本实施例还提供了一种Web漏洞扫描系统,该系统包括:终端和Web服务器;其中,该终端连接该Web服务器;该终端用于发送用户的扫描请求指令;该Web服务器用于根据该扫描请求指令,获取第一Web请求数据;该Web服务器依次对每个该第一Web请求数据进行清洗以去除所有该第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;该Web服务器依次对该第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
通过上述实施例,Web服务器将获取到的第一Web请求数据放入待清洗队列进行清洗以去除所有该第一Web请求数据中的重复数据,从而采用了对请求包进行流量清洗的方法清洗掉重复的请求,并得到去重后剩余的第二Web请求数据进行漏洞扫描,最终输出Web漏洞扫描结果,因此大大提高了漏洞扫描效率,解决了Web漏洞扫描的效率低的问题,实现了高效、灵活的WEB漏洞扫描。同时,本申请通过上述Web漏洞扫系统,实现了部署简单的测试环境,不需要额外的配套设备,因此也不会因配套设备而产生额外的费用,只需要在测试区间部署使用该Web漏洞扫系统即可实现Web漏洞扫描。
在一个可行的实施例中,该Web服务器还用于根据该第一Web请求数据的字段组成成分,获取该第一Web请求数据的分类结果;该Web服务器基于该分类结果计算得到每个该第一Web请求数据对应的标志值;该Web服务器判断该标志值是否在历史清洗集合中,当该标志值在该历史清洗集合中时对该第一Web请求数据进行数据清洗。
在一个可行的实施例中,该Web服务器还用于基于该分类结果删除每个该第一Web请求数据中的预设参数值;该Web服务器利用哈希算法,根据删除后的该第一Web请求数据中的剩余数据计算得到该标志值。
在一个可行的实施例中,该Web服务器还用于初始化扫描组件;该Web服务器依次将该第二Web请求数据分发至该扫描组件,并通过该扫描组件进行漏洞扫描。
在一个可行的实施例中,该Web服务器还用于获取该扫描组件进行漏洞扫描的反馈结果;该Web服务器在该反馈结果中存在组件漏洞的情况下,将该反馈结果存储至该获取Web漏洞扫描结果。
在一个可行的实施例中,该Web漏洞扫描系统还包括代理服务器;其中,该代理服务器连接该Web服务器;该Web服务器还用于导入代理服务器的Web代理数据,根据该Web代理数据获取该第一Web请求数据;和/或,该Web服务器导入请求数据包,根据该请求数据包获取该第一Web请求数据。
在一个可行的实施例中,该Web服务器还用于将获取到的该第一Web请求数据放入待清洗队列;该Web服务器从该待清洗队列中依次提取该第一Web请求数据进行清洗,并将清洗后得到的第二Web请求数据放入待扫描队列;该Web服务器从该待扫描队列中依次提取该第二Web请求数据进行漏洞扫描。
在一个可行的实施例中,提供了一种计算机设备,该计算机设备可以是服务器,图8是根据本申请实施例的一种计算机设备内部的结构图,如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储第一Web请求数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种Web漏洞扫描方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取第一Web请求数据。
S2,依次对每个该第一Web请求数据进行清洗以去除所有该第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据。
S3,依次对该第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
另外,结合上述实施例中的Web漏洞扫描方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种Web漏洞扫描方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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 (11)

1.一种Web漏洞扫描方法,其特征在于,所述方法包括:
获取第一Web请求数据;
依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;
依次对所述第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
2.根据权利要求1所述的Web漏洞扫描方法,其特征在于,所述依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据包括:
根据所述第一Web请求数据的字段组成成分,获取所述第一Web请求数据的分类结果;
基于所述分类结果计算得到每个所述第一Web请求数据对应的标志值;
判断所述标志值是否在历史清洗集合中,当所述标志值在所述历史清洗集合中时对所述第一Web请求数据进行数据清洗。
3.根据权利要求2所述的Web漏洞扫描方法,其特征在于,所述基于所述分类结果计算得到所述第一Web请求数据的标志值包括:
基于所述分类结果删除每个所述第一Web请求数据中的预设参数值;
利用哈希算法,根据删除后的所述第一Web请求数据中的剩余数据计算得到所述标志值。
4.根据权利要求1所述的Web漏洞扫描方法,其特征在于,所述依次对所述第二Web请求数据进行漏洞扫描包括:
初始化扫描组件;
依次将所述第二Web请求数据分发至所述扫描组件,并通过所述扫描组件进行漏洞扫描。
5.根据权利要求4所述的Web漏洞扫描方法,其特征在于,所述获取Web漏洞扫描结果包括:
获取所述扫描组件进行漏洞扫描的反馈结果;
在所述反馈结果中存在组件漏洞的情况下,将所述反馈结果存储至所述获取Web漏洞扫描结果。
6.根据权利要求1所述的Web漏洞扫描方法,其特征在于,所述获取第一Web请求数据包括:
导入代理服务器的Web代理数据,根据所述Web代理数据获取所述第一Web请求数据;和/或,
导入请求数据包,根据所述请求数据包获取所述第一Web请求数据。
7.根据权利要求1至6中任一项所述的Web漏洞扫描方法,其特征在于,所述依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据包括:
将获取到的所述第一Web请求数据放入待清洗队列;
从所述待清洗队列中依次提取所述第一Web请求数据进行清洗,并将清洗后得到的第二Web请求数据放入待扫描队列;
所述依次对所述第二Web请求数据进行漏洞扫描包括:
从所述待扫描队列中依次提取所述第二Web请求数据进行漏洞扫描。
8.一种Web漏洞扫描装置,其特征在于,所述装置包括:获取模块、清洗模块和扫描模块;
所述获取模块,用于获取第一Web请求数据;
所述清洗模块,用于依次对每个所述第一Web请求数据进行清洗以去除所有所述第一Web请求数据中的重复数据,并得到清洗后的第二Web请求数据;
所述扫描模块,用于依次对所述第二Web请求数据进行漏洞扫描,进而获取Web漏洞扫描结果。
9.一种Web漏洞扫描系统,其特征在于,所述系统包括:终端和Web服务器;其中,所述终端连接所述Web服务器;
所述终端用于发送用户的扫描请求指令;
所述Web服务器用于根据所述扫描请求指令,执行权利要求1至7中任一项所述的Web漏洞扫描方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的Web漏洞扫描方法。
11.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7中任一项所述的Web漏洞扫描方法。
CN202110141700.2A 2021-02-02 2021-02-02 Web漏洞扫描方法、装置、系统、电子装置和存储介质 Pending CN112906005A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110141700.2A CN112906005A (zh) 2021-02-02 2021-02-02 Web漏洞扫描方法、装置、系统、电子装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110141700.2A CN112906005A (zh) 2021-02-02 2021-02-02 Web漏洞扫描方法、装置、系统、电子装置和存储介质

Publications (1)

Publication Number Publication Date
CN112906005A true CN112906005A (zh) 2021-06-04

Family

ID=76121441

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110141700.2A Pending CN112906005A (zh) 2021-02-02 2021-02-02 Web漏洞扫描方法、装置、系统、电子装置和存储介质

Country Status (1)

Country Link
CN (1) CN112906005A (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404281A (zh) * 2010-09-09 2012-04-04 北京神州绿盟信息安全科技股份有限公司 一种网站扫描设备和方法
CN104363252A (zh) * 2014-12-12 2015-02-18 北京奇虎科技有限公司 网站安全检测方法与装置
CN104363253A (zh) * 2014-12-12 2015-02-18 北京奇虎科技有限公司 网站安全检测方法与装置
CN104378389A (zh) * 2014-12-12 2015-02-25 北京奇虎科技有限公司 网站安全检测方法与装置
CN104980309A (zh) * 2014-04-11 2015-10-14 北京奇虎科技有限公司 网站安全检测方法及装置
CN105871776A (zh) * 2015-01-19 2016-08-17 苏宁云商集团股份有限公司 基于日志的挖掘安全未知漏洞的方法和系统
CN108632219A (zh) * 2017-03-21 2018-10-09 腾讯科技(深圳)有限公司 一种网站漏洞检测方法、检测服务器及系统
CN108984703A (zh) * 2018-07-05 2018-12-11 平安科技(深圳)有限公司 一种统一资源定位符url去重方法及装置
CN109165511A (zh) * 2018-08-08 2019-01-08 深圳前海微众银行股份有限公司 Web安全漏洞处理方法、系统及计算机可读存储介质
CN110334086A (zh) * 2019-05-30 2019-10-15 平安科技(深圳)有限公司 数据去重方法、装置、计算机设备以及存储介质
CN111259282A (zh) * 2020-02-13 2020-06-09 深圳市腾讯计算机系统有限公司 Url去重方法、装置、电子设备及计算机可读存储介质
CN111865997A (zh) * 2020-07-24 2020-10-30 光通天下网络科技股份有限公司 基于被动流量的web漏洞检测方法、装置、设备及介质
CN112182587A (zh) * 2020-09-30 2021-01-05 中南大学 Web漏洞扫描方法、系统、装置、存储介质和计算机设备

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404281A (zh) * 2010-09-09 2012-04-04 北京神州绿盟信息安全科技股份有限公司 一种网站扫描设备和方法
CN104980309A (zh) * 2014-04-11 2015-10-14 北京奇虎科技有限公司 网站安全检测方法及装置
CN104363252A (zh) * 2014-12-12 2015-02-18 北京奇虎科技有限公司 网站安全检测方法与装置
CN104363253A (zh) * 2014-12-12 2015-02-18 北京奇虎科技有限公司 网站安全检测方法与装置
CN104378389A (zh) * 2014-12-12 2015-02-25 北京奇虎科技有限公司 网站安全检测方法与装置
CN105871776A (zh) * 2015-01-19 2016-08-17 苏宁云商集团股份有限公司 基于日志的挖掘安全未知漏洞的方法和系统
CN108632219A (zh) * 2017-03-21 2018-10-09 腾讯科技(深圳)有限公司 一种网站漏洞检测方法、检测服务器及系统
CN108984703A (zh) * 2018-07-05 2018-12-11 平安科技(深圳)有限公司 一种统一资源定位符url去重方法及装置
CN109165511A (zh) * 2018-08-08 2019-01-08 深圳前海微众银行股份有限公司 Web安全漏洞处理方法、系统及计算机可读存储介质
CN110334086A (zh) * 2019-05-30 2019-10-15 平安科技(深圳)有限公司 数据去重方法、装置、计算机设备以及存储介质
CN111259282A (zh) * 2020-02-13 2020-06-09 深圳市腾讯计算机系统有限公司 Url去重方法、装置、电子设备及计算机可读存储介质
CN111865997A (zh) * 2020-07-24 2020-10-30 光通天下网络科技股份有限公司 基于被动流量的web漏洞检测方法、装置、设备及介质
CN112182587A (zh) * 2020-09-30 2021-01-05 中南大学 Web漏洞扫描方法、系统、装置、存储介质和计算机设备

Similar Documents

Publication Publication Date Title
Bittau et al. Prochlo: Strong privacy for analytics in the crowd
US20210240825A1 (en) Multi-representational learning models for static analysis of source code
US11429625B2 (en) Query engine for remote endpoint information retrieval
CN111400722B (zh) 扫描小程序的方法、装置、计算机设备和存储介质
CN107003976A (zh) 基于可准许活动规则确定可准许活动
WO2011094484A1 (en) Detection, diagnosis, and mitigation of software faults
JP2017016650A (ja) コンピュータネットワーク上の資産を検出および識別するための方法およびシステム
CN109413024A (zh) 异构功能等价体多模判决结果的逆向数据校验方法及系统
US9251367B2 (en) Device, method and program for preventing information leakage
CN109167781A (zh) 一种基于动态关联分析的网络攻击链识别方法和装置
CN111083113A (zh) 拟态分发系统、方法及介质
US20200053183A1 (en) Comparison of behavioral populations for security and compliance monitoring
He et al. Blockchain-based automated and robust cyber security management
CN113163012B (zh) 一种基于区块链的物联网设备管理方法及装置
CN113259364B (zh) 一种网络事件关联分析方法及装置、计算机设备
US11856010B2 (en) Finding malicious domains with DNS query pattern analysis
CN112906005A (zh) Web漏洞扫描方法、装置、系统、电子装置和存储介质
Du et al. On verifying stateful dataflow processing services in large-scale cloud systems
CN110752963B (zh) 事件处理方法和装置、存储介质及电子装置
Repetto et al. Automating mitigation of amplification attacks in NFV services
CN111200560B (zh) 微服务注册方法、装置、设备及存储介质
CN114116388A (zh) 一种小程序数据采集方法、装置、设备及可读存储介质
US11010717B2 (en) Tool for improving network security
CN109560960B (zh) Waf暴力破解防护的参数配置方法及装置、waf系统
CN112163215A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210604