基于日志的挖掘安全未知漏洞的方法和系统的制作方法

文档序号:10515430阅读:271来源:国知局
基于日志的挖掘安全未知漏洞的方法和系统的制作方法
【专利摘要】本发明提供一种基于日志的挖掘安全未知漏洞的方法和系统。该方法包括步骤:S1、网站服务器根据用户请求资源,产生用户访问日志;S2、对所产生的用户访问日志进行访问;S3、判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗;S4、对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。本发明的技术方案可以通过对日志数据正向过滤与安全漏洞攻击特征逆向排除,实现挖掘利用漏洞攻击发现,降低安全漏洞挖掘成本,提高了挖掘未知漏洞效率。
【专利说明】
基于日志的挖掘安全未知漏洞的方法和系统
技术领域
[0001]本发明涉及电子商务技术领域,特别涉及一种基于日志的挖掘安全未知漏洞的方法和系统。
【背景技术】
[0002]当外部用户访问Web应用业务时,产生基于HTTP协议的访问请求行为,Web应用将产生访问日志记录。传统日志安全分析,通过采集安全设备与操作系统、数据库、应用系统日志,发现已知安全漏洞、已发生的安全事件进行分析。
[0003]当互联网产生新的Web应用层安全攻击时,当发生攻击代码变形的安全攻击时,现有的日志分析系统、IDS、IPS都无法对未知安全漏洞进行发现分析。因为日志分析系统不能理解IDS、IPS没有产生未定义漏洞的安全检测与防御规则。
[0004]为解决此类技术缺陷,IDS、IPS 一般提供基于通过正则达式的模糊匹配策略,提供给设备规则维护人员,进行增加正则达式进行表关键字匹配规则。现有采用正则达式进行表关键字匹配的方法,但存在安全事件误报、误拦现象。

【发明内容】

[0005]针对现有技术的上述缺陷,本发明所要解决的技术问题是如何实现日志分析系统增加对未知安全漏洞分析与挖掘,提高发现安全漏洞的效率。
[0006]为实现上述目的,一方面,本发明提供一种基于日志的挖掘安全未知漏洞的方法,该方法包括如下步骤:
[0007]S1、网站服务器根据用户请求资源,产生用户访问日志;
[0008]S2、对所产生的用户访问日志进行访问;
[0009]S3、判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗;
[0010]S4、对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。
[0011]优选地,对所述包含服务器域名和用户请求资源信息进行分析清洗具体包括:
[0012]服务器域名信息清洗,定义需要分析的服务器域名日志列表;根据服务器响应状态码,保留指定服务器状态码日志数据;
[0013]根据用户资源类型分类,排除指定用户资源类型的日志数据,保留未定义类型的用户资源日志数据。
[0014]优选地,对所述未定义类型的用户资源日志数据清洗具体包括:
[0015]执行用户浏览器信息清洗过程,在用户浏览器信息中对包含关键字段进行清洗,清除含指定关键字的日志数据;
[0016]执行用户远程地址清洗过程,对来自可信区域范围的远程地址及无地址所产生的日志数据进行清除。
[0017]优选地,所述步骤S4具体包括:
[0018]判断用户请求资源参数是否经过编码,若是,则进行解码过程;
[0019]将解码成功的用户请求资源参数和未经过编码的用户请求参数导入安全漏洞安全规则,与安全漏洞规则中的混淆特征关键字进行分析匹配确认出未知安全漏洞。
[0020]优选地,所述步骤S4具体包括:
[0021]将日志数据中用户请求资源参数进行分类;
[0022]执行编码分析过程,判断用户请求资源参数是否经过编码;若是,则将日志数据中用户请求资源参数进行单次或多次解码直至解码成功;若否,则直接将未编码类型日志数据转入安全漏洞规则库进行分析;
[0023]将解码成功的用户请求资源参数导入安全漏洞规则库采用安全特征混淆进行分析;将解码失败的用户请求资源参数确认为未知安全漏洞;判断是否是未知安全漏洞,若是,则确认出未知安全漏洞;若否,则判断出为已知安全漏洞。
[0024]另一方面,本发明还同时提供一种基于日志的挖掘安全未知漏洞的系统,包括:
[0025]生成单元,用于网站服务器根据用户请求,产生用户访问日志;
[0026]访问单元,用于对所产生的用户访问日志进行访问;
[0027]清洗单元,用于判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗;
[0028]挖掘单元,用于对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。
[0029]优选地,所述清洗单元具体对所述包含服务器域名和用户请求资源信息进行分析清洗具体包括:
[0030]服务器域名信息清洗,定义需要分析的服务器域名日志列表;根据服务器响应状态码,保留指定服务器状态码日志数据;
[0031]根据用户资源类型分类,排除指定用户资源类型的日志数据,保留未定义类型的用户资源日志数据。
[0032]优选地,所述清洗单元对所述未定义类型的用户资源日志数据清洗具体包括:
[0033]执行用户浏览器信息清洗过程,在用户浏览器信息中包含关键字段进行清洗,清除含指定关键字的日志数据;
[0034]执行用户远程地址清洗过程,对来自可信区域范围的远程地址及无地址所产生的日志数据进行清除。
[0035]优选地,所述挖掘单元用于:
[0036]判断用户请求资源参数是否经过编码,若是,则进行解码过程;
[0037]将解码成功的用户请求资源参数和未经过编码的用户请求参数导入安全漏洞安全规则,与安全漏洞规则中的混淆特征关键字进行分析匹配确认出未知安全漏洞。
[0038]优选地,所述挖掘单元还用于:
[0039]将日志数据中用户请求资源参数进行分类;
[0040]执行编码分析过程,判断用户请求资源参数是否经过编码;若是,则将日志数据中用户请求资源参数进行单次或多次解码直至解码成功;若否,则直接将未编码类型日志数据转入安全漏洞规则库进行分析;
[0041]将解码成功的用户请求资源参数导入安全漏洞规则库采用安全特征混淆进行分析,以及将解码失败的用户请求资源参数确认为未知安全漏洞;
[0042]判断是否是未知安全漏洞,若是,则确认出未知安全漏洞;若否,则判断出为已知安全漏洞。
[0043]本发明所使用的方法,采用了日志数据正向过滤与安全漏洞攻击特征逆向排除的方法,实现挖掘利用漏洞攻击发现,与现有技术相比,取得了对未知漏网攻击行为发现领域的进步,达到了发现未知漏洞效果,降低安全漏洞挖掘成本,提高了挖掘未知漏洞效率。
【附图说明】
[0044]图1是本发明的一个实施例中的基于日志的挖掘安全未知漏洞的方法的流程示意图;
[0045]图2是本发明的一个实施例中的对日志进行未知漏洞分析与挖掘对日志数据分类清洗的流程示意图;
[0046]图3是本发明的一个实施例中的对日志进行未知漏洞分析与挖掘对未知漏洞分析挖掘的流程示意图;
[0047]图4是本发明的另一个实施例中的基于日志的挖掘安全未知漏洞的系统的结构示意图。
【具体实施方式】
[0048]为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和【具体实施方式】对本发明作进一步详细描述。
[0049]图1是本发明的一个实施例中的基于日志的挖掘安全未知漏洞的方法的流程示意图,如图1所示,该方法包括如下步骤:
[0050]步骤S1、网站服务器根据用户访问请求,产生用户访问日志;
[0051]步骤S2、对产生的所述用户访问日志进行访问;
[0052]具体地,用户访问日志信息包括但不限于:用户端信息,用户浏览器信息、用户远程地址、用户提交数据请求的方法、用户请求访问来源、服务器响应状态、用户访问时间、用户请求资源(即通用资源标识符)、用户请求资源参数(即查询字符串)、服务器通信协议、服务器域名信息、协议版本、响应请求的服务器名称。
[0053]步骤S3、判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗。
[0054]具体地,图2是本发明的一个实施例中的对日志进行未知漏洞分析与挖掘对日志数据分类清洗的流程示意图,如图2所示,对日志数据分类清洗流程具体包括如下步骤:
[0055]第一步,服务器域名信息范围清洗,定义需要分析日志域名列表,将符合范围内的域名日志记录传递到下一流程。
[0056]第二步,进行用户请求资源参数(即查询字符串)清洗过程,清除用户请求资源参数为空的日志记录,将含有用户请求资源参数日志数据传递到下一流程处理。
[0057]第三步,用户请求资源(即通用资源标识符)清洗过程,定义存在需要分析的用户请求资源类型。
[0058]第四步,服务器响应状态清洗过程,根据服务器响应状态码,保留指定服务器状态码日志数据。
[0059]第五步,用户浏览器信息清洗过程,对国外、国内已知自动化安全渗透测试工具,在用户浏览器信息中包含关键字段进行清洗,清除含指定关键字的日志数据。
[0060]第六步,用户远程地址清洗过程,对来可信区域范围的远程地址及无地址,所产生的日志数据进行排除。
[0061]S4、对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。
[0062]具体地,图3是本发明的一个实施例中的对日志进行未知漏洞分析与挖掘对未知漏洞分析挖掘的流程示意图,如图3所示,对未知漏洞分析挖掘流程具体包括如下步骤:
[0063]第一步,对用户请求资源参数(即查询字符串)进行散列计算,建立用户请求资源参数散列库,根据历史结果,将散列结果分为安全散列值、威胁散列值、待查散列值三种类型。
[0064]第二步,由编码分析过程,进行编码类型、特征判断,判断用户请求资源参数是否已经过编码。将用户请求资源参数(即查询字符串)分为已编码、未编码类型。将未编码类型日志数据转入安全漏洞规则库进行分析。
[0065]第三步,进入编码解码过程,将日志数据中用户请求资源参数进行解码,根据解码日志数据是否存在编码特征关键字符判断是否解码成功,用户请求资源参数(即查询字符串)是否在解码分析白名单列表中,解码成功的用户请求资源参数进入安全漏洞规则库进行分析,解码失败的用户请求资源参数进行二次解码及多重解码。
[0066]第四步,对不需要解码、解码成功的用户请求资源参数(即查询字符串),导入安全漏洞规则库。安全漏洞规则库,是由已知安全漏洞攻击特征组成安全漏洞规则库。
[0067]第五步,安全漏洞攻击特征采用特征混淆分析的方法,将攻击特征关键字加入混淆规则,根据安全漏洞规则库中混淆特征关键字与用户请求资源参数(即查询字符串)进行分析匹配。
[0068]第六步,在日志数据中无法解码及匹配安全漏洞攻击特征失败的数据属于未知安全漏洞。对日志进行未知漏洞分析和挖掘,未知漏洞分析挖掘流程包括如下步骤:
[0069]第一步,对用户请求资源参数(即查询字符串)进行散列计算,建立用户请求资源参数散列库,根据历史结果,将散列结果分为安全散列值、威胁散列值、待查散列值三种类型。
[0070]第二步,进行编码分析过程,进行编码类型、特征判断,判断用户请求资源参数是否已经过编码。将用户请求资源参数(即查询字符串)分为已编码、未编码类型。将未编码类型日志数据转入安全漏洞规则库进行分析。
[0071]第三步,进入编码解码过程,将日志数据中用户请求资源参数进行解码,根据解码日志数据是否存在编码特征关键字符判断是否解码成功,用户请求资源参数(即查询字符串)是否在解码分析白名单列表中,解码成功的用户请求资源参数进入安全漏洞规则库进行分析,解码失败的用户请求资源参数进行二次解码及多重解码。
[0072]第四步,对不需要解码、解码成功的用户请求资源参数(即查询字符串),导入安全漏洞规则库。安全漏洞规则库,是由已知安全漏洞攻击特征组成安全漏洞规则库。
[0073]第五步,安全漏洞攻击特征采用特征混淆分析的方法,将攻击特征关键字加入混淆规则,根据安全漏洞规则库中混淆特征关键字与用户请求资源参数(即查询字符串)进行分析匹配。
[0074]第六步,在日志数据中无法解码及匹配安全漏洞攻击特征失败的数据属于未知安全漏洞,即威胁散列值。
[0075]本发明所使用的方法,采用了日志数据正向过滤与安全漏洞攻击特征逆向排除的方法,实现挖掘利用漏洞攻击发现,与现有技术相比,取得了对未知漏网攻击行为发现领域的进步,达到了发现未知漏洞效果,降低安全漏洞挖掘成本,提高了挖掘未知漏洞效率。
[0076]本领域技术人员应能理解,与本发明的方法一一对应的,本发明还同时提供一种基于日志的挖掘安全未知漏洞的系统,如图4所示,该系统包括:生成单元401、访问单元402、清洗单元403和挖掘单元404.其中,生成单元401用于用户实现网站服务器根据用户请求,产生用户访问日志;访问单元402用于对所产生的用户访问日志进行访问;清洗单元403用于判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗;挖掘单元404用于对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。优选地,清洗单元403具体对所述包含服务器域名和用户请求资源信息进行分析清洗具体包括:服务器域名信息清洗,定义需要分析的服务器域名日志列表;根据服务器响应状态码,保留指定服务器状态码日志数据;根据用户资源类型分类,排除指定用户资源类型的日志数据,保留未定义类型的用户资源日志数据。
[0077]优选地,清洗单元403具体用于:服务器域名信息范围清洗,定义需要分析日志域名列表,将符合范围内的域名日志记录传递到下一流程处理;进行用户请求资源参数清洗过程,清除用户请求资源参数为空的日志记录,将含有用户请求资源参数日志数据传递到下一流程处理;用户请求资源清洗过程,定义存在需要分析的用户请求资源类型;服务器响应状态清洗过程,根据服务器响应状态码,保留指定服务器状态码日志数据;用户浏览器信息清洗过程,对国外、国内已知自动化安全渗透测试工具,在用户浏览器信息中包含关键字段进行清洗,清除含指定关键字的日志数据;用户远程地址清洗过程,对来可信区域范围的远程地址及无地址,所产生的日志数据进行排除。
[0078]优选地,挖掘单元404用于判断用户请求资源参数是否经过编码,若是,则进行解码过程,判断解码过程是否成功,若是,导入安全漏洞安全规则,将安全漏洞规则中的混淆特征关键字与用户请求资源参数进行分析匹配,判断是否是未知安全漏洞,若是,确认出未知安全漏洞。
[0079]优选地,挖掘单元404还用于将日志数据中用户请求资源参数进行分类;执行编码分析过程,判断用户请求资源参数是否经过编码;若是,则将日志数据中用户请求资源参数进行单次或多次解码直至解码成功;若否,则直接将未编码类型日志数据转入安全漏洞规则库进行分析;将解码成功的用户请求资源参数导入安全漏洞规则库采用安全特征混淆进行分析,以及将解码失败的用户请求资源参数确认为未知安全漏洞;判断是否是未知安全漏洞,若是,则确认出未知安全漏洞;若否,则判断出为已知安全漏洞。
[0080]本发明所使用的系统,通过将日志数据正向过滤与安全漏洞攻击特征逆向排除,实现挖掘利用漏洞攻击发现,与现有技术相比,取得了对未知漏网攻击行为发现领域的进步,达到了发现未知漏洞效果,降低安全漏洞挖掘成本,提高了挖掘未知漏洞效率。
[0081]可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
【主权项】
1.一种基于日志的挖掘安全未知漏洞的方法,其特征在于,所述方法包括如下步骤: 51、网站服务器根据用户请求资源,产生用户访问日志; 52、对所产生的用户访问日志进行访问; 53、判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗; 54、对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。2.根据权利要求1所述的基于日志的挖掘安全未知漏洞的方法,其特征在于,对所述包含服务器域名和用户请求资源信息进行分析清洗具体包括: 服务器域名信息清洗,定义需要分析的服务器域名日志列表;根据服务器响应状态码,保留指定服务器状态码日志数据; 根据用户资源类型分类,排除指定用户资源类型的日志数据,保留未定义类型的用户资源日志数据。3.根据权利要求2所述的基于日志的挖掘安全未知漏洞的方法,其特征在于,对所述未定义类型的用户资源日志数据清洗具体包括: 执行用户浏览器信息清洗过程,在用户浏览器信息中对包含关键字段进行清洗,清除含指定关键字的日志数据; 执行用户远程地址清洗过程,对来自可信区域范围的远程地址及无地址所产生的日志数据进行清除。4.根据权利要求3所述的基于日志的挖掘安全未知漏洞的方法,其特征在于,所述步骤S4具体包括: 判断用户请求资源参数是否经过编码,若是,则进行解码过程; 将解码成功的用户资源请求参数和未经过编码的用户请求参数导入安全漏洞安全规贝1J,与安全漏洞规则中的混淆特征关键字进行分析匹配确认出未知安全漏洞。5.根据权利要求4所述的基于日志的挖掘安全未知漏洞的方法,其特征在于,所述步骤S4具体包括: 将日志数据中用户请求资源参数进行分类; 执行编码分析过程,判断用户请求资源参数是否经过编码;若是,则将日志数据中用户请求资源参数进行单次或多次解码直至解码成功;若否,则直接将未编码类型日志数据转入安全漏洞规则库进行分析; 将解码成功的用户请求资源参数导入安全漏洞规则库采用安全特征混淆进行分析;将解码失败的用户请求资源参数确认为未知安全漏洞;判断是否是未知安全漏洞,若是,则确认出未知安全漏洞;若否,则判断出为已知安全漏洞。6.一种基于日志的挖掘安全未知漏洞的系统,其特征在于,包括: 生成单元,用于实现网站服务器根据用户请求,产生用户访问日志; 访问单元,用于对所产生的用户访问日志进行访问; 清洗单元,用于判断服务器域名和用户请求资源信息是否属于分析清洗的范围,若是,则对所述服务器域名和用户请求资源信息进行分析清洗; 挖掘单元,用于对所述服务器域名和用户请求资源信息进行未知漏洞分析与挖掘。7.根据权利要求6所述的基于日志的挖掘安全未知漏洞的系统,其特征在于,所述清洗单元具体对所述包含服务器域名和用户请求资源信息进行分析清洗具体包括: 服务器域名信息清洗,定义需要分析的服务器域名日志列表;根据服务器响应状态码,保留指定服务器状态码日志数据; 根据用户资源类型分类,排除指定用户资源类型的日志数据,保留未定义类型的用户资源日志数据。8.根据权利要求7所述的基于日志的挖掘安全未知漏洞的系统,其特征在于,所述清洗单元对所述未定义类型的用户资源日志数据清洗具体包括: 执行用户浏览器信息清洗过程,在用户浏览器信息中包含关键字段进行清洗,清除含指定关键字的日志数据; 执行用户远程地址清洗过程,对来自可信区域范围的远程地址及无地址所产生的日志数据进行清除。9.根据权利要求8所述的基于日志的挖掘安全未知漏洞的系统,其特征在于,所述挖掘单元用于: 判断用户请求资源参数是否经过编码,若是,则进行解码过程; 将解码成功的用户资源请求参数和未经过编码的用户请求参数导入安全漏洞安全规贝1J,将安全漏洞规则中的混淆特征关键字与用户请求资源参数进行分析匹配确认出未知安全漏洞。10.根据权利要求9所述的基于日志的挖掘安全未知漏洞的系统,其特征在于,所述挖掘单元还用于: 将日志数据中用户请求资源参数进行分类; 执行编码分析过程,判断用户请求资源参数是否经过编码;若是,则将日志数据中用户请求资源参数进行单次或多次解码直至解码成功;若否,则直接将未编码类型日志数据转入安全漏洞规则库进行分析; 将解码成功的用户请求资源参数导入安全漏洞规则库采用安全特征混淆进行分析,以及将解码失败的用户请求资源参数确认为未知安全漏洞; 判断是否是未知安全漏洞,若是,则确认出未知安全漏洞;若否,则判断出为已知安全漏洞。
【文档编号】H04L29/06GK105871776SQ201510026904
【公开日】2016年8月17日
【申请日】2015年1月19日
【发明人】黄宙
【申请人】苏宁云商集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1