CN104144142B - 一种Web漏洞挖掘方法及系统 - Google Patents
一种Web漏洞挖掘方法及系统 Download PDFInfo
- Publication number
- CN104144142B CN104144142B CN201310164804.0A CN201310164804A CN104144142B CN 104144142 B CN104144142 B CN 104144142B CN 201310164804 A CN201310164804 A CN 201310164804A CN 104144142 B CN104144142 B CN 104144142B
- Authority
- CN
- China
- Prior art keywords
- web
- mining
- vulnerability
- task
- analysis
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000009412 basement excavation Methods 0.000 title claims abstract description 12
- 238000005065 mining Methods 0.000 claims abstract description 128
- 238000004458 analytical method Methods 0.000 claims abstract description 74
- 238000007405 data analysis Methods 0.000 claims abstract description 23
- 238000013515 script Methods 0.000 claims description 7
- 230000004931 aggregating effect Effects 0.000 claims description 5
- 238000001514 detection method Methods 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 5
- 238000007781 pre-processing Methods 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 8
- 239000003795 chemical substances by application Substances 0.000 description 7
- VKWMGUNWDFIWNW-UHFFFAOYSA-N 2-chloro-1,1-dioxo-1,2-benzothiazol-3-one Chemical compound C1=CC=C2S(=O)(=O)N(Cl)C(=O)C2=C1 VKWMGUNWDFIWNW-UHFFFAOYSA-N 0.000 description 4
- 238000012038 vulnerability analysis Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000012502 risk assessment Methods 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种Web漏洞挖掘方法及系统,包括采集并存储Web访问日志,按照预先设置的日志分析挖掘策略分配挖掘任务,按照分配的挖掘任务对Web访问日志进行查询,最后根据查询结果进行Web漏洞扫描以确定漏洞。本申请方案中,利用Hadoop等大数据分析框架的海量数据的存储、分析和查询能力,以及Web漏洞扫描的准确性,形成了闭环式的漏洞挖掘方法,通过有针对性、有目标的查询,避免了大海捞针式的查询,从而大大提高了查询的效率,而Web漏洞扫描技术的准确性也保证了本申请Web漏洞挖掘的准确性。因此,通过本申请提供的Web漏洞挖掘方法及系统,准确地实现了海量数据下的Web漏洞分析查询,从而提高了Web漏洞挖掘的准确性、及时性。
Description
技术领域
本申请涉及网络安全技术,尤指一种基于大数据环境下的Web漏洞挖掘方法及系统。
背景技术
随着Web2.0、社交网络、微博等一系列新型的互联网产品的诞生,基于Web环境的互联网应用越来越广泛。目前,很多业务都依赖于互联网,比如网上银行、网络购物、网游等,接踵而至的就是Web安全威胁的凸显。黑客利用网站的漏洞,得到Web服务器的控制权限,篡改网页内容,甚至窃取重要内部数据,更为严重的则是在网页中植入恶意代码,使得网站访问者受到侵害。而很多恶意攻击者则想方设法通过各种手段获取他人的个人账户信息等谋取利益。其中,漏洞(vulnerability)是指,系统中存在的一些功能性或安全性的逻辑缺陷,包括一切导致威胁、损坏计算机系统安全性的所有因素。漏洞是计算机系统在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷和不足。
发明内容
为了解决上述技术问题,本申请提供了一种Web漏洞挖掘方法及系统,能够准确实现海量数据下的Web漏洞分析查询,从而提高Web漏洞挖掘的准确性、及时性。
为了达到本申请目的,本申请提供一种Web漏洞挖掘方法,包括:
采集并存储Web访问日志;
按照预先设置的日志分析挖掘策略分配挖掘任务;
根据分配的挖掘任务对所述Web访问日志进行查询,并根据查询结果进行Web漏洞扫描以确定漏洞;
所述日志分析挖掘策略包括标识ID、名称、条件;
其中,条件是漏洞的特征或者攻击的特征的组合。
所述采集到的Web访问日志存储在大数据分析框架;
所述大数据分析框架为Hadoop、或Spark、或Bashreduce、或GraphLab、或TwitterStorm。
所述分配挖掘任务为:预先设置用于调度任务分配的时刻表,根据时刻表自动进行任务分配;
所述时刻表包括标识Id、时间戳、流水号、重试次数、任务配置、实际参数,状态;
其中,标识Id,为当前分配的任务所采用的日志分析挖掘策略的Id;
流水号,用于唯一标识一个任务;
重试次数,用于表示当任务失败时,允许重新尝试的次数;
任务配置,在任务执行时使用的配置文件,是命令和/或脚本的组合;
实际参数,是任务执行时的限制性参数;
状态,用于表示任务执行情况。
所述分配挖掘任务为:手动进行任务配置并分配;
手工分配任务时需要传递的参数包括:标识Id、时间戳、调度人员信息,任务配置、以及实际参数;其中,
标识Id,为当前分配的任务所采用的日志分析挖掘策略的Id;
任务配置,在任务执行时使用的配置文件,是命令和/或脚本的组合;
实际参数,是任务执行时的限制性参数;
调度人员信息,表示发起该手工分配任务的工作人员信息。
所述根据分配的挖掘任务对Web访问日志进行查询在大数据分析框架实现;
包括:所述挖掘任务启动后,执行所述任务配置中的配置文件;向大数据分析框架发起执行挖掘任务的查询指令,在查询指令中包括与所述标识Id对应的日志分析挖掘策略中的URL或者特征条件;
将所述URL或者特征条件与Web访问日志数据进行匹配,将包含有所述URL或者特征条件的Web访问日志数据确定为疑似漏洞,并将其作为查询结果。
所述查询结果中包括有源IP地址src_ip、统一资源定位符URL;
其中,源IP地址src_ip和URL是与所述日志分析挖掘策略中的条件匹配的Web访问日志中的原始数据。
所述进行Web漏洞扫描之前,该方法还包括:对所述查询结果进行预处理;
所述预处理为过滤聚并处理,包括去重处理、和/或合并处理。
该方法还包括:对所述确定的漏洞进行特征提取,并将其作为新的日志分析挖掘策略保存。
本申请还提供一种Web漏洞挖掘系统,包括采集单元、存储分析单元、挖掘调度单元,以及Web漏洞扫描单元;其中,
采集单元,用于采集Web访问日志,并将其输出给存储分析单元;
存储分析单元,用于存储采集单元采集到的Web访问日志;接收来自挖掘调度单元的挖掘任务,对Web访问日志进行查询;将查询结果上报给挖掘调度单元;
挖掘调度单元,其中存储有日志分析挖掘策略,用于按照预先设置的日志分析挖掘策略分配挖掘任务,并将挖掘任务下发给存储分析单元;接收存储分析单元返回的查询结果,并输出给Web漏洞扫描单元;所述日志分析挖掘策略包括标识ID、名称、条件;其中,条件是漏洞的特征或者攻击的特征的组合;
Web漏洞扫描单元,用于根据查询结果进行Web漏洞扫描以确定漏洞。
所述存储分析单元为大数据分析框架;
所述大数据分析框架为Hadoop、或Spark、或Bashreduce、或GraphLab、或TwitterStorm。
所述大数据分析框架具体用于,存储采集单元采集到的Web访问日志;接收来自所述挖掘调度单元的表示执行挖掘任务的查询指令,在查询指令中包括与当前分配的任务的Id所对应的日志分析挖掘策略中的URL或者特征条件;
将所述URL或者特征条件与Web访问日志数据进行匹配,将包含有所述URL或者特征条件的Web访问日志数据确定为疑似漏洞,并将其作为查询结果。
所述采集单元包括一个或一个以上采集代理,分别部署在各自的Web服务器上,用于采集最新的日志并上传给所述存储分析单元;
所述采集代理是分布式的访问日志采集器。
该系统还包括一个或一个以上代理服务器,设置在所述采集代理与存储分析单元之间,用于配置所述采集代理轮询Web访问日志的时间。
所述挖掘调度单元,还用于对所述查询结果进行预处理;
所述预处理为过滤聚并处理,包括去重处理、和/或合并处理。
所述Web漏洞扫描单元,还用于将确定的漏洞返回所述挖掘调度单元;
所述挖掘调度单元,还用于对确定的漏洞进行特征提取,并将其作为新的日志分析挖掘策略保存。
所述Web漏洞扫描单元为扫描软件X-Scan、或MDCSOFT SCAN检测平台、或扫描平台。
本申请提供的方案包括采集并在Hadooop等大数据分析框架存储Web访问日志,按照预先设置的日志分析挖掘策略分配挖掘任务,按照分配的挖掘任务Hadooop等大数据分析框架对Web访问日志进行查询,最后根据查询结果进行Web漏洞扫描以确定漏洞。本申请方法中,利用Hadoop等大数据分析框架的海量数据的存储、分析和查询能力,以及Web漏洞扫描的准确性,形成了闭环式的漏洞挖掘方法,通过有针对性、有目标的查询,避免了大海捞针式的查询,从而大大提高了查询的效率,而Web漏洞扫描技术的准确性也保证了本申请Web漏洞挖掘的准确性。因此,通过本申请提供的方法,准确实现了海量数据下的Web漏洞分析查询,从而提高了Web漏洞挖掘的准确性、及时性。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本申请Web漏洞挖掘方法的流程图;
图2为本申请Web漏洞挖掘系统的组成结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在本申请一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
对于已经上线的Web应用,面对海量用户的访问,一般是通过分析Web访问日志来进行网站的漏洞挖掘的。其中,漏洞挖掘就是通过分析Web访问日志,从中发现正在被利用的漏洞的过程。对于一个大型网站来说,这些Web访问日志的数据巨大,无法采用常规的挖掘手段,而必须考虑大数据背景下的挖掘手段:一是及时性,即针对已经上线的Web应用,要能在漏洞被恶意利用的第一时间发现并及时处理,以避免更大的损失;二是准确性,即针对发现的疑似漏洞,要能尽快准确判断出是否是真正的漏洞,以便决定是否要投入资源和技术手段。因此,在这种大数据情形下,如何快速、及时地发现潜在的或正在被利用的Web漏洞就显得非常重要了。其中,Web漏洞泛指,Web应用程序存在的漏洞,如结构化查询语言(SQL,Structure Query Language)注入、跨站脚本(XSS)、跨站请求伪造(CSRF,Cross-siterequestforgery)、网页挂马等。
目前,对网站的漏洞主要是通过扫描的方式来检测的,通常是指基于一套漏洞数据库,通过扫描等手段,对指定的远程或者本地计算机系统的安全脆弱性进行检测,从而发现可利用的漏洞的一种安全检测(渗透攻击)行为。目前,检测Web漏洞的工具大致有两种模式:
一种模式包括软件扫描和平台扫描。其中,软件扫描是通过下载软件安装,对自身网站进行漏洞扫描,平台扫描是近几年兴起的,只要将网站提交到该扫描平台,通过扫描平台的认证后,扫描平台即可通过邮件将扫描结果即漏洞清单发给用户,以实现云安全。软件扫描和平台扫描的模式,是通过模拟访问方式来实现的,其准确性较高,但是,由于不能定位问题所在,一般只能通过全站扫描来排查问题,显然,软件扫描和平台扫描的模式存在效率低、针对性差等问题,而且一定程度上会造成攻击的假象,甚至可能影响正常的用户访问。
另一种模式是基于对Web访问日志的分析,即通过对访问日志中大量的用户访问记录的深入分析,比如根据常见的Web漏洞攻击特征以及后门文件指纹信息来进行匹配,分析出网站是否遭受或者已经被黑客入侵,对网站运营环境进行风险评估,从而判断出是否存在漏洞被利用的情况,以便及时定位并修复漏洞,进而避免进一步的损失。常见的日志分析工具有AWStats、Google Analytics等。日志分析的模式是通过事后的旁路日志分析,完全可以避免影响正常的业务访问,但是,这种模式的漏洞发现的准确性较差,而且,随着日志量的剧增,常规的日志分析方法在效率上面临着严峻挑战,面对每天数以T级的海量的日志,更是无能为力。
其中,Web访问日志是网站分析和网站数据仓库的数据最基础来源。目前,常见的Web访问日志格式主要包括:一类是Apache(是Apache HTTP Server的简称,是Apache软件基金会的一个开放源码的网页服务器)的国家超级计算机应用中心(NCSA)日志格式,另一类是因特网信息服务器(IIS)的万维网联盟(W3C)日志格式。其中,NCSA格式又分为NCSA普通日志格式(CLF)和NCSA扩展日志格式(ECLF),目前最常用的是ECLF格式及基于自定义类型的Apache日志格式;而W3C扩展日志格式(ExLF)具备了更为丰富的输出信息,但是,目前应用并不广泛。
图1为本申请Web漏洞挖掘方法的流程图,如图1所示,包括:
步骤100:采集并存储Web访问日志。
Hadoop是当下主流的大数据分析框架,是一个开源项目,这里简单介绍如下:Hadoop是一个能够对大量数据进行分布式处理的软件框架。Hadoop是以一种可靠、高效、可伸缩的方式进行处理的。Hadoop是可靠的,因为它假设计算元素和存储会失败,因此它维护多个工作数据副本,确保能够针对失败的节点重新分布处理。Hadoop是高效的,因为它以并行的方式工作,通过并行处理加快处理速度。Hadoop还是可伸缩的,能够处理PB级数据。此外,Hadoop依赖于社区服务器,因此它的成本比较低,任何人都可以使用。因此,Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。
本步骤中,充分利用Hadoop的特点,将采集到的海量的Web访问数据存储在Hadoop。还可以在Hadoop进行查询,检索等功能。
需要说明的是,除了Hadoop这种当下主流的大数据的处理方式外,本申请还适用于像由UCBerkeley的AMP实验室开发的通用的并行计算框架Spark、在bash环境下的多个机器上执行MapReduce类型的操作的Bashreduce、抽象实现MapReduce的GraphLab,以及最近新起的TwitterStorm,Storm是实时处理的Hadoop等等大数据分析框架。
为了描述方便,本文中仅以Hadoop为例进行相关描述。
步骤101:按照预先设置的日志分析挖掘策略分配挖掘任务。
本步骤中,日志分析挖掘策略中包括:逐渐积累的一些漏洞的特征或者攻击的特征。比如一些数据满足的条件(或者通用规则)等。每条日志分析挖掘策略可以包括标识(ID)、名称(Name)、条件(Condition)等信息,其中,条件就是漏洞的特征或者攻击的特征的组合。日志分析挖掘策略库中的日志分析挖掘策略,既可以是一些特定的URL,用于表明需要关注的网站路径;也可以是一些攻击特征,比如XSS的<script></script>这种标签等等。
本步骤中分配任务的方法包括自动分配任务,或者手工分配任务,其中,
自动分配任务包括:预先设置用于调度任务分配的时刻表,根据时刻表自动进行任务分配。时刻表的格式可以包括:(Id、时间戳(timestamp)、流水号、重试次数、任务配置、实际参数、状态),其中,
Id,就是当前分配的任务所采用的日志分析挖掘策略的Id;流水号,用于唯一标识一个任务;重试次数,用于表示当任务失败时,允许重新尝试的次数;任务配置,是在任务执行时使用的配置文件,通常是一些命令和/或脚本的组合,比如预先设置好的一些Hadoop操作命令的组合;实际参数,是任务执行时的一些限制性参数,比如分析某一时间段内的Web访问日志,或分析来自某些代理的Web访问日志等;状态,用于表示任务执行情况,比如已执行或未执行或执行中。
时刻表可以在每天零点生成当天全天的任务,之后,系统就按照时刻表进行任务的分配。
手工分配任务包括:调度人员手动进行任务配置并分配。手工分配任务时需要传递的参数可以包括:(Id、时间戳、调度人员信息(Owner)、任务配置、实际参数)。其中,Owner表示发起这个手工分配任务的工作人员信息,如编号、工号、姓名等。
步骤102:根据分配的挖掘任务,对Web访问日志进行查询。
在步骤100中,采集到的海量的Web访问数据存储在Hadoop,因此还可以继续充分利用Hadoop的特点,由Hadoop根据挖掘任务,对Web访问日志进行查询。
一个挖掘任务(自动分配任务或手工分配任务)启动后,会开始执行访问Hadoop的一些命令,这些命令是从该任务的任务配置,也就是在任务执行时使用的配置文件中读取的,并向Hadoop发起相应的查询指令,在查询指令中包括有特定的URL或者特征等条件,其中,URL或者特征,是通过任务属性之一的Id,从日志分析挖掘策略库中读取的。这样,实现了有针对性、有目标的查询,避免了大海捞针式的查询,从而大大提高了查询的效率和准确性。
查询的过程就是一个日志分析挖掘策略与Web访问日志数据的匹配过程,挖掘任务启动后,执行所述任务配置中的配置文件;向Hadoop发起执行挖掘任务的查询指令,在查询指令中包括与所述标识Id对应的日志分析挖掘策略中的URL或者特征条件;将URL或者特征条件与Web访问日志数据进行匹配,包含有该URL或者特征条件的Web访问日志数据确定为疑似漏洞,并将其作为查询结果。也就是说,包含有日志分析挖掘策略中的URL或者特征等条件的Web访问日志数据就被认为是疑似漏洞,会将其作为查询结果,在查询结果中包括:(时间戳、源IP地址(src_ip)、统一资源定位符(URL))。其中,src_ip和URL是与日志分析挖掘策略中的条件匹配的Web访问日志中的原始数据。
步骤103:根据查询结果进行Web漏洞扫描以确定漏洞。
在进行本步骤中的Web漏洞扫描之前还包括:对查询结果进行预处理,比如去重处理、合并处理等过滤聚并处理,得到更加净化的数据。具体实现属于本领域技术人员的惯用技术手段,这里不再赘述。
本步骤的Web漏洞扫描可以采用现有成熟的扫描技术,比如漏洞扫描软件X-Scan、MDCSOFT SCAN检测平台、扫描平台等,这里不再赘述。需要说明的是,在分析挖掘的结果中,只要包含有URL集合即可;每个扫描任务对应一个扫描任务Id(scan_id)。
本申请方法还包括:对确定的即新发现的漏洞进行特征提取,并将其作为新的日志分析挖掘策略保存,以便以后的查询中使用。
本申请方法中,利用Hadoop等大数据分析框架的海量数据的存储、分析和查询能力,以及Web漏洞扫描的准确性,形成了闭环式的漏洞挖掘方法,通过有针对性、有目标的查询,避免了大海捞针式的查询,从而大大提高了查询的效率,而Web漏洞扫描技术的准确性也保证了本申请Web漏洞挖掘的准确性。因此,通过本申请提供的Web漏洞挖掘方法,准确地实现了海量数据下的Web漏洞分析查询,从而提高了Web漏洞挖掘的准确性、及时性。
本申请还提供一种Web漏洞挖掘系统,如图2所示,包括挖掘调度单元、存储分析单元、采集单元,以及Web漏洞扫描单元;其中,
采集单元,用于采集Web访问日志,并将其输出给存储分析单元。采集单元可以包括若干采集代理,是一种分布式的访问日志采集器,分别部署在各自的Web服务器上,用于采集最新的日志并上传给存储分析单元。
存储分析单元,用于存储采集单元采集到的Web访问日志;接收来自挖掘调度单元的挖掘任务,对Web访问日志进行查询;将查询结果上报给挖掘调度单元。存储分析单元可以是Hadoop、或Spark、或Bashreduce、或GraphLab、或Twitter Storm。
进一步地,对于采集代理数量很多的情况,比如超过1000台,可以进一步在采集单元与存储分析单元之间设置一个或一个以上代理服务器,用于采用可配置的方式配置采集代理轮询最新Web访问日志的时间,轮询时间具体可根据实际情况调整,如1秒~3秒。关于代理服务器的具体实现并不用于限制本申请的保护范围,是本领域技术人员容易实现的,这里强调的是,本申请在采集代理数量很多时,进一步采用代理服务器的方式来实现Web访问日志数据的采集过程。
挖掘调度单元,其中存储有日志分析挖掘策略,用于按照预先设置的日志分析挖掘策略分配挖掘任务,并将挖掘任务下发给存储分析单元;接收存储分析单元返回的查询结果,并输出给Web漏洞扫描单元。
进一步地,挖掘调度单元,还用于对接收到的查询结果进行预处理,此时输出给Web漏洞扫描单元的查询结果是预处理后的查询结果。
Web漏洞扫描单元,用于根据查询结果进行Web漏洞扫描以确定漏洞。
Web漏洞扫描单元,还用于将确定的漏洞返回给挖掘调度单元。挖掘调度单元,还用于对确定的即新发现的漏洞进行特征提取,并将其作为新的日志分析挖掘策略保存,以便以后的查询中使用。
所述Web漏洞扫描单元可以是漏洞扫描软件X-Scan、MDCSOFT SCAN检测平台、扫描平台等。
本申请系统中,利用Hadoop等大数据分析框架的海量数据的存储、分析和查询能力,以及Web漏洞扫描的准确性,形成了闭环式的漏洞挖掘系统,通过有针对性、有目标的查询,避免了大海捞针式的查询,从而大大提高了查询的效率,而Web漏洞扫描技术的准确性也保证了本申请Web漏洞挖掘的准确性。因此,通过本申请提供的Web漏洞挖掘系统,准确地实现了海量数据下的Web漏洞分析查询,从而提高了Web漏洞挖掘的准确性、及时性。
本领域的技术人员应该明白,上述的本申请实施例所提供的装置的各组成部分,以及方法中的各步骤,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上。可选地,它们可以用计算装置可执行的程序代码来实现。从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
虽然本申请所揭露的实施方式如上,但所述的内容仅为便于理解本申请而采用的实施方式,并非用以限定本申请。任何本申请所属领域内的技术人员,在不脱离本申请所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本申请的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (16)
1.一种Web漏洞挖掘方法,其特征在于,包括:
采集并存储最新的Web访问日志,采集到的Web访问日志存储在大数据分析框架;
按照预先设置的日志分析挖掘策略分配挖掘任务;其中,所述日志分析挖掘策略包括标识ID、名称和条件;其中,条件是漏洞特征或者攻击的特征组合;
根据分配的挖掘任务对所述Web访问日志进行查询,获取包含疑似所述漏洞特征或者攻击的特征组合的查询结果;所述根据分配的挖掘任务对Web访问日志进行查询在大数据分析框架实现;
对所述查询结果进行Web漏洞扫描以确定漏洞。
2.根据权利要求1所述的Web漏洞挖掘方法,其特征在于,所述大数据分析框架为Hadoop、Spark、Bashreduce、GraphLab或Twitter Storm。
3.根据权利要求2所述的Web漏洞挖掘方法,其特征在于,所述分配挖掘任务为:预先设置用于调度任务分配的时刻表,根据时刻表自动进行任务分配;
所述时刻表包括标识ID、时间戳、流水号、重试次数、任务配置、实际参数以及状态;
其中,标识ID,为当前分配的任务所采用的日志分析挖掘策略的ID;
流水号,用于唯一标识一个任务;
重试次数,用于表示当任务失败时,允许重新尝试的次数;
任务配置,在任务执行时使用的配置文件,是命令和/或脚本的组合;
实际参数,是任务执行时的限制性参数;
状态,用于表示任务执行情况。
4.根据权利要求2所述的Web漏洞挖掘方法,其特征在于,所述分配挖掘任务为:手动进行任务配置并分配;
手工分配任务时需要传递的参数包括:标识ID、时间戳、调度人员信息、任务配置以及实际参数;其中,
标识ID,为当前分配的任务所采用的日志分析挖掘策略的ID;
任务配置,在任务执行时使用的配置文件,是命令和/或脚本的组合;
实际参数,是任务执行时的限制性参数;
调度人员信息,表示发起该手工分配任务的工作人员信息。
5.根据权利要求3或4所述的Web漏洞挖掘方法,其特征在于,所述根据分配的挖掘任务对Web访问日志进行查询在大数据分析框架实现,包括:所述挖掘任务启动后,执行所述任务配置中的配置文件;向大数据分析框架发起执行挖掘任务的查询指令,在查询指令中包括与所述标识ID对应的日志分析挖掘策略中的漏洞特征或者攻击的特征组合;
将所述漏洞特征或者攻击的特征组合与Web访问日志数据进行匹配,将包含有所述漏洞特征或者攻击的特征组合的Web访问日志数据确定为疑似漏洞,并将其作为查询结果。
6.根据权利要求5所述的Web漏洞挖掘方法,其特征在于,所述漏洞特征包括统一资源定位符URL,所述查询结果中包括:源IP地址和URL;
其中,源IP地址和URL是与所述日志分析挖掘策略中的条件匹配的Web访问日志中的原始数据。
7.根据权利要求6所述的Web漏洞挖掘方法,其特征在于,所述进行Web漏洞扫描之前,该方法还包括:对所述查询结果进行预处理;
所述预处理为过滤聚并处理,包括去重处理和/或合并处理。
8.根据权利要求1~4任一项所述的Web漏洞挖掘方法,其特征在于,该方法还包括:对所述确定的漏洞进行特征提取,并将其作为新的日志分析挖掘策略保存。
9.一种Web漏洞挖掘系统,其特征在于,包括采集单元、存储分析单元、挖掘调度单元以及Web漏洞扫描单元;其中,
采集单元,用于采集最新的Web访问日志,并将其输出给存储分析单元;
存储分析单元,用于存储采集单元采集到的Web访问日志;接收来自挖掘调度单元的挖掘任务,对Web访问日志进行查询;将查询结果上报给挖掘调度单元;所述存储分析单元为大数据分析框架;
挖掘调度单元,其中存储有日志分析挖掘策略,用于按照预先设置的日志分析挖掘策略分配挖掘任务,并将挖掘任务下发给存储分析单元;其中,所述日志分析挖掘策略包括标识ID、名称和条件;其中,条件是漏洞特征或者攻击的特征组合;
接收存储分析单元返回的包含疑似所述漏洞特征或者攻击的特征组合的查询结果,并输出给Web漏洞扫描单元;
Web漏洞扫描单元,用于对所述查询结果进行Web漏洞扫描以确定漏洞。
10.根据权利要求9所述的Web漏洞挖掘系统,其特征在于,
所述大数据分析框架为Hadoop、Spark、Bashreduce、GraphLab或Twitter Storm。
11.根据权利要求10所述的Web漏洞挖掘系统,其特征在于,
所述大数据分析框架具体用于,存储采集单元采集到的Web访问日志;接收来自所述挖掘调度单元的表示执行挖掘任务的查询指令,在查询指令中包括与当前分配标识ID所对应的日志分析挖掘策略中的漏洞特征或者攻击的特征组合;
将所述漏洞特征或者攻击的特征组合与Web访问日志数据进行匹配,将包含有所述漏洞特征或者攻击的特征组合的Web访问日志数据确定为疑似漏洞,并将其作为查询结果。
12.根据权利要求10所述的Web漏洞挖掘系统,其特征在于,所述采集单元包括一个以上采集代理,分别部署在各自的Web服务器上,用于采集最新的日志并上传给所述存储分析单元;
所述采集代理是分布式的访问日志采集器。
13.根据权利要求12所述的Web漏洞挖掘系统,其特征在于,该系统还包括一个以上代理服务器,设置在所述采集代理与存储分析单元之间,用于配置所述采集代理轮询Web访问日志的时间。
14.根据权利要求10所述的Web漏洞挖掘系统,其特征在于,所述挖掘调度单元,还用于对所述查询结果进行预处理;
所述预处理为过滤聚并处理,包括去重处理和/或合并处理。
15.根据权利要求9~14任一项所述的Web漏洞挖掘系统,其特征在于,所述Web漏洞扫描单元,还用于将确定的漏洞返回所述挖掘调度单元;
所述挖掘调度单元,还用于对确定的漏洞进行特征提取,并将其作为新的日志分析挖掘策略保存。
16.根据权利要求15所述的Web漏洞挖掘系统,其特征在于,所述Web漏洞扫描单元为扫描软件X-Scan、MDCSOFT SCAN检测平台或扫描平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310164804.0A CN104144142B (zh) | 2013-05-07 | 2013-05-07 | 一种Web漏洞挖掘方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310164804.0A CN104144142B (zh) | 2013-05-07 | 2013-05-07 | 一种Web漏洞挖掘方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104144142A CN104144142A (zh) | 2014-11-12 |
CN104144142B true CN104144142B (zh) | 2018-05-08 |
Family
ID=51853210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310164804.0A Active CN104144142B (zh) | 2013-05-07 | 2013-05-07 | 一种Web漏洞挖掘方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104144142B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11818158B2 (en) | 2018-05-07 | 2023-11-14 | Walmart Apollo, Llc | Systems and methods for managing network vulnerability scanning to avoid disruption of operations |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106302337B (zh) * | 2015-05-22 | 2020-12-04 | 腾讯科技(深圳)有限公司 | 漏洞检测方法和装置 |
CN107040504B (zh) * | 2016-02-04 | 2020-05-01 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN107229865B (zh) * | 2016-03-25 | 2020-06-05 | 阿里巴巴集团控股有限公司 | 一种解析Webshell入侵原因的方法及装置 |
CN107241292B (zh) * | 2016-03-28 | 2021-01-22 | 阿里巴巴集团控股有限公司 | 漏洞检测方法及装置 |
CN106027528B (zh) * | 2016-05-24 | 2019-07-12 | 微梦创科网络科技(中国)有限公司 | 一种web水平权限自动化识别的方法及装置 |
CN106506266B (zh) * | 2016-11-01 | 2019-05-14 | 中国人民解放军91655部队 | 基于GPU、Hadoop/Spark混合计算框架的网络流量分析方法 |
CN108667770B (zh) * | 2017-03-29 | 2020-12-18 | 腾讯科技(深圳)有限公司 | 一种网站的漏洞测试方法、服务器及系统 |
CN107181758A (zh) * | 2017-06-30 | 2017-09-19 | 微梦创科网络科技(中国)有限公司 | 识别黑客行为的方法及系统 |
CN108712367A (zh) * | 2018-03-28 | 2018-10-26 | 新华三信息安全技术有限公司 | 一种报文处理方法、装置及设备 |
CN109190381B (zh) * | 2018-09-07 | 2022-05-10 | 国网福建省电力有限公司 | 一种对hadoop安全漏洞的检测方法 |
CN109347812A (zh) * | 2018-09-27 | 2019-02-15 | 国网湖北省电力有限公司电力科学研究院 | 一种工控漏洞挖掘方法及系统 |
CN109871696A (zh) * | 2018-12-29 | 2019-06-11 | 重庆城市管理职业学院 | 一种漏洞信息的自动收集与漏洞扫描系统及方法、计算机 |
CN110572403A (zh) * | 2019-09-12 | 2019-12-13 | 海南电网有限责任公司信息通信分公司 | 一种web安全监测系统及其方法 |
CN114244824B (zh) * | 2021-11-25 | 2024-05-03 | 国家计算机网络与信息安全管理中心河北分中心 | 一种网络空间WEB类资产风险Server同性快速识别的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324901A (zh) * | 2008-08-06 | 2008-12-17 | 中国电信股份有限公司 | 数据挖掘方法、平台和系统 |
CN102790706A (zh) * | 2012-07-27 | 2012-11-21 | 福建富士通信息软件有限公司 | 海量事件安全分析方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8726394B2 (en) * | 2009-12-15 | 2014-05-13 | Seeker Security Ltd. | Method and system of runtime analysis |
CN103023710B (zh) * | 2011-09-21 | 2016-06-08 | 阿里巴巴集团控股有限公司 | 一种安全测试系统和方法 |
CN102360408A (zh) * | 2011-09-28 | 2012-02-22 | 国家计算机网络与信息安全管理中心 | 恶意代码的检测方法及其系统 |
-
2013
- 2013-05-07 CN CN201310164804.0A patent/CN104144142B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101324901A (zh) * | 2008-08-06 | 2008-12-17 | 中国电信股份有限公司 | 数据挖掘方法、平台和系统 |
CN102790706A (zh) * | 2012-07-27 | 2012-11-21 | 福建富士通信息软件有限公司 | 海量事件安全分析方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11818158B2 (en) | 2018-05-07 | 2023-11-14 | Walmart Apollo, Llc | Systems and methods for managing network vulnerability scanning to avoid disruption of operations |
Also Published As
Publication number | Publication date |
---|---|
CN104144142A (zh) | 2014-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104144142B (zh) | 一种Web漏洞挖掘方法及系统 | |
US10904277B1 (en) | Threat intelligence system measuring network threat levels | |
US10397273B1 (en) | Threat intelligence system | |
US9876813B2 (en) | System and method for web-based log analysis | |
CN110650128B (zh) | 一种检测以太坊数字货币盗取攻击的系统及方法 | |
US9208309B2 (en) | Dynamically scanning a web application through use of web traffic information | |
CN101582887B (zh) | 安全防护方法、网关设备及安全防护系统 | |
US11100046B2 (en) | Intelligent security context aware elastic storage | |
CN112822147B (zh) | 一种用于分析攻击链的方法、系统及设备 | |
CN103384888A (zh) | 用于恶意软件的检测和扫描的系统和方法 | |
CN108768921B (zh) | 一种基于特征检测的恶意网页发现方法及系统 | |
CN103746992B (zh) | 基于逆向的入侵检测系统及其方法 | |
CN102065147A (zh) | 一种基于企业应用系统获取用户登录信息的方法及装置 | |
CN105550593A (zh) | 一种基于局域网的云盘文件监控方法和装置 | |
CN111104579A (zh) | 一种公网资产的识别方法、装置及存储介质 | |
CN109600385B (zh) | 一种访问控制方法及装置 | |
US10931688B2 (en) | Malicious website discovery using web analytics identifiers | |
CN102253948B (zh) | 在多源信息系统中搜索信息的方法和装置 | |
Ahmed et al. | An intelligent and time-efficient DDoS identification framework for real-time enterprise networks: SAD-F: Spark based anomaly detection framework | |
CN108737332B (zh) | 一种基于机器学习的中间人攻击预测方法 | |
CN112714118B (zh) | 网络流量检测方法和装置 | |
US20210176233A1 (en) | Malicious website discovery using legitimate third party identifiers | |
CN117892348A (zh) | 应用程序接口资产的管理方法、装置及电子设备 | |
CN106911636B (zh) | 一种检测网站是否存在后门程序的方法及装置 | |
Liu et al. | A research and analysis method of open source threat intelligence data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |