CN110213286A - 一种基于双引擎的高效waf设计方法 - Google Patents

一种基于双引擎的高效waf设计方法 Download PDF

Info

Publication number
CN110213286A
CN110213286A CN201910506919.0A CN201910506919A CN110213286A CN 110213286 A CN110213286 A CN 110213286A CN 201910506919 A CN201910506919 A CN 201910506919A CN 110213286 A CN110213286 A CN 110213286A
Authority
CN
China
Prior art keywords
rule
http request
engine
database
pcre
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.)
Granted
Application number
CN201910506919.0A
Other languages
English (en)
Other versions
CN110213286B (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.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric 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 Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201910506919.0A priority Critical patent/CN110213286B/zh
Publication of CN110213286A publication Critical patent/CN110213286A/zh
Application granted granted Critical
Publication of CN110213286B publication Critical patent/CN110213286B/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/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于双引擎的高效WAF设计方法,包括步骤1:hs引擎每隔一段时间从配置中心拉取安全策略;步骤2:根据不同的安全策略,组装规则库并编译成hs数据库然后和相应的规则ID缓存到redis数据库;步骤3:pcre引擎每隔一段时间从配置中心拉取最新安全策略,若安全策略有变化则从redis数据库获取最新的hs数据库和规则id表;无变化则获取用户的http请求;步骤4:使用hs引擎对步骤3所得http请求进行匹配,若没有匹配结果则视为无攻击行为,直接放行;步骤5:使用pcre规则库对分离出来的目标字段进行匹配,直至遍历完所有规则;步骤6:判定该次请求含有攻击行为,阻断档次访问并返回警告信息。

Description

一种基于双引擎的高效WAF设计方法
技术领域
本发明涉及互联网安全技术领域,具体的说,是一种。
背景技术
Web应用防护系统,也称:网站应用级入侵防御系统。英文:Web ApplicationFirewall,简称:WAF。WAF是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品,能屏蔽常见的网站漏洞攻击,如SQL注入,XML注入、XSS等。一般针对的是应用层而非网络层的入侵。
现在市场上大多数的产品是基于规则的WAF。其原理是每一个会话都要经过一系列的测试,每一项测试都由多个检测规则组成,如果测试没通过,请求就会被认为非法并拒绝。
基于规则的WAF很容易构建并且能有效的防范已知安全问题。当我们要制定自定义防御策略时使用它会更加便捷。因为它们必须要首先确认每一个威胁的特点,所以要由一个强大的规则数据库支持。但是,随着威胁的增加,相应的规则也随之增加,越强大的WAF拥有的规则数据库就越大,庞大的数据库拖慢了WAF的执行效率,以至于有时候不得不刻意减少执行的规则数量,以取得较高性能。
发明内容
本发明的目的在于提供一种基于双引擎的高效WAF设计方法,用于解决现有技术中随着威胁的增加,相应的规则也随之增加,越强大的WAF拥有的规则数据库就越大,庞大的数据库拖慢了WAF的执行效率的问题。
本发明通过下述技术方案解决上述问题:
一种基于双引擎的高效WAF设计方法,该方法包括如下步骤:
步骤1:hs引擎每隔一段时间从配置中心拉取最新安全策略;
步骤2:根据不同的安全策略,组装不同规则库,并编译成hs数据库然后和相应的规则ID缓存到redis数据库;
步骤3:pcre引擎每隔一段时间从配置中心拉取最新安全策略,若安全策略有变化则从redis数据库获取最新的hs数据库和规则id表;无变化则获取用户的http请求;
步骤4:使用hs引擎对步骤3所得http请求进行匹配,若没有匹配结果则视为无攻击行为,直接放行;若有匹配结果则获取hs引擎命中的一系列规则ID,并使用hs命中的一系列规则ID,重建pcre规则库,并根据规则定义的匹配区域,从原始http请求中分理处目标字段;
步骤5:使用步骤4重建的pcre规则库对分离出来的目标字段进行匹配,直至遍历完所有规则,如果目标字段匹配成功,则对应规则得分,当累计得分超过策略规定的阈值时进入步骤7;匹配不成功则重复本步骤;
步骤6:判定该次请求含有攻击行为,阻断档次访问并返回警告信息。
本发明采用hs引擎和pcre两个引擎,hs负责粗略匹配,预选规则,然后将预匹配命中的规则输入pcre进行识别。首先是hs采取多模匹配,无论多少规则都仅仅执行一次匹配,效率极高,其次经过hs规则预选,使得pcre要执行的规则数量大幅减少,很好的保证了WAF的效率。
进一步地,所述步骤1和步骤3中引擎的间隔时间为5秒。
进一步地,所述步骤3中http请求包括http请求行、http请求头和http请求体,拼接形成完整的http请求。
本发明与现有技术相比,具有以下优点及有益效果:
(1)本发明使用的hs引擎支持多模匹配,它将成百上千的传统规则库编译成一个正则数据库,而匹配语料选择为http请求整体,因此对于一次请求仅仅需要一次匹配即可。hs会将匹配命中的规则ID传递给传统规则引擎pcre,再由pcre引擎进行更细致的匹配,在这个过程中,大幅减少了传统引擎pcre的匹配次数,因此明显提高了WAF的处理速度。
附图说明
图1为本发明的hs数据库编译逻辑示意框图;
图2为本发明的pcre安全策略跟新逻辑示意框图;
图3为本发明中http请求拦截逻辑示意框图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例1:
一种基于双引擎的高效WAF设计方法,该方法包括如下步骤:
步骤1:hs引擎每隔五秒从配置中心拉取最新安全策略,流程如图1所示;
步骤2:根据不同的安全策略,组装不同规则库,并编译成hs数据库然后和相应的规则ID缓存到redis数据库;
步骤3:pcre引擎每隔五秒从配置中心拉取最新安全策略,流程如图,若安全策略有变化则从redis数据库获取最新的hs数据库和规则id表;无变化则获取用户的http请求行、http请求头和http请求体,然后拼接成完整的http请求;
步骤4:使用hs引擎对步骤3所得http请求进行匹配,若没有匹配结果则视为无攻击行为,直接放行;若有匹配结果则获取hs引擎命中的一系列规则ID,并使用hs命中的一系列规则ID,重建pcre规则库,并根据规则定义的匹配区域,从原始http请求中分理处目标字段;
步骤5:使用步骤4重建的pcre规则库对分离出来的目标字段进行匹配,直至遍历完所有规则,如果目标字段匹配成功,则对应规则得分,当累计得分超过策略规定的阈值时进入步骤7;匹配不成功则重复本步骤;
步骤6:判定该次请求含有攻击行为,阻断档次访问并返回警告信息,拦截过程如图3所示。
使用的HS引擎支持多模匹配,它将成百上千的传统规则库编译成一个正则数据库,而匹配语料选择为http请求整体,因此对于一次请求仅仅需要一次匹配即可。HS会将匹配命中的规则ID传递给传统规则引擎PCRE,再由PCRE引擎进行更细致的匹配,在这个过程中,大幅减少了传统引擎PCRE的匹配次数,因此明显提高了WAF的处理速度,在实际的测试中,引擎性能可提升1-2倍。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

Claims (3)

1.一种基于双引擎的高效WAF设计方法,其特征在于,该方法包括如下步骤:
步骤1:hs引擎每隔一段时间从配置中心拉取最新安全策略;
步骤2:根据不同的安全策略,组装不同规则库,并编译成hs数据库然后和相应的规则ID缓存到redis数据库;
步骤3:pcre引擎每隔一段时间从配置中心拉取最新安全策略,若安全策略有变化则从redis数据库获取最新的hs数据库和规则id表;无变化则获取用户的http请求;
步骤4:使用hs引擎对步骤3所得http请求进行匹配,若没有匹配结果则视为无攻击行为,直接放行;若有匹配结果则获取hs引擎命中的一系列规则ID,并使用hs命中的一系列规则ID,重建pcre规则库,并根据规则定义的匹配区域,从原始http请求中分理处目标字段;
步骤5:使用步骤4重建的pcre规则库对分离出来的目标字段进行匹配,直至遍历完所有规则,如果目标字段匹配成功,则对应规则得分,当累计得分超过策略规定的阈值时进入步骤7;匹配不成功则重复本步骤;
步骤6:判定该次请求含有攻击行为,阻断档次访问并返回警告信息。
2.根据权利要求1所述的基于双引擎的高效WAF设计方法,其特征在于:所述步骤1和步骤3中引擎的间隔时间为5秒。
3.根据权利要求1所述的基于双引擎的高效WAF设计方法,其特征在于:所述步骤3中http请求包括http请求行、http请求头和http请求体,拼接形成完整的http请求。
CN201910506919.0A 2019-06-12 2019-06-12 一种基于双引擎的高效waf设计方法 Active CN110213286B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910506919.0A CN110213286B (zh) 2019-06-12 2019-06-12 一种基于双引擎的高效waf设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910506919.0A CN110213286B (zh) 2019-06-12 2019-06-12 一种基于双引擎的高效waf设计方法

Publications (2)

Publication Number Publication Date
CN110213286A true CN110213286A (zh) 2019-09-06
CN110213286B CN110213286B (zh) 2021-06-29

Family

ID=67792301

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910506919.0A Active CN110213286B (zh) 2019-06-12 2019-06-12 一种基于双引擎的高效waf设计方法

Country Status (1)

Country Link
CN (1) CN110213286B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111162947A (zh) * 2019-12-30 2020-05-15 北京天融信网络安全技术有限公司 一种pcre热切换方法、网络设备及存储介质
CN111786959A (zh) * 2020-06-10 2020-10-16 中移(杭州)信息技术有限公司 安全防护方法、waf系统、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796421A (zh) * 2015-04-21 2015-07-22 西安工程大学 一种多媒体网络入侵检测方法
CN105592061A (zh) * 2015-10-27 2016-05-18 杭州华三通信技术有限公司 一种攻击规则的关闭方法和装置
CN106453438A (zh) * 2016-12-23 2017-02-22 北京奇虎科技有限公司 一种网络攻击的识别方法及装置
CN107426196A (zh) * 2017-06-30 2017-12-01 全球能源互联网研究院 一种识别web入侵的方法及系统
CN108111466A (zh) * 2016-11-24 2018-06-01 北京金山云网络技术有限公司 一种攻击检测方法及装置
CN108650145A (zh) * 2018-04-03 2018-10-12 南京邮电大学 一种家庭宽带WiFi下手机号码特征自动提取方法
CN109672687A (zh) * 2018-12-31 2019-04-23 南京理工大学 基于可疑度评估的http混淆流量检测方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796421A (zh) * 2015-04-21 2015-07-22 西安工程大学 一种多媒体网络入侵检测方法
CN105592061A (zh) * 2015-10-27 2016-05-18 杭州华三通信技术有限公司 一种攻击规则的关闭方法和装置
CN108111466A (zh) * 2016-11-24 2018-06-01 北京金山云网络技术有限公司 一种攻击检测方法及装置
CN106453438A (zh) * 2016-12-23 2017-02-22 北京奇虎科技有限公司 一种网络攻击的识别方法及装置
CN107426196A (zh) * 2017-06-30 2017-12-01 全球能源互联网研究院 一种识别web入侵的方法及系统
CN108650145A (zh) * 2018-04-03 2018-10-12 南京邮电大学 一种家庭宽带WiFi下手机号码特征自动提取方法
CN109672687A (zh) * 2018-12-31 2019-04-23 南京理工大学 基于可疑度评估的http混淆流量检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SDNLAB君: "yperscan与Snort的集成方法", 《HTTPS://ACCOUNT.FNEDU.COM/21120.HTML》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111162947A (zh) * 2019-12-30 2020-05-15 北京天融信网络安全技术有限公司 一种pcre热切换方法、网络设备及存储介质
CN111162947B (zh) * 2019-12-30 2022-08-12 北京天融信网络安全技术有限公司 一种pcre热切换方法、网络设备及存储介质
CN111786959A (zh) * 2020-06-10 2020-10-16 中移(杭州)信息技术有限公司 安全防护方法、waf系统、电子设备及存储介质
CN111786959B (zh) * 2020-06-10 2022-09-06 中移(杭州)信息技术有限公司 安全防护方法、waf系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN110213286B (zh) 2021-06-29

Similar Documents

Publication Publication Date Title
Jang et al. Detecting SQL injection attacks using query result size
Hlaing et al. A detection and prevention technique on sql injection attacks
Ciampa et al. A heuristic-based approach for detecting SQL-injection vulnerabilities in Web applications
CN103559235B (zh) 一种在线社交网络恶意网页检测识别方法
Sadeghian et al. SQL injection is still alive: a study on SQL injection signature evasion techniques
Sadeghian et al. A taxonomy of SQL injection attacks
Kar et al. Prevention of SQL Injection attack using query transformation and hashing
US20220019658A1 (en) Systems and methods for improving accuracy in recognizing and neutralizing injection attacks in computer services
US10917422B2 (en) Digital auditing system and method for detecting unauthorized activities on websites
CN110213286A (zh) 一种基于双引擎的高效waf设计方法
Appiah et al. SQL injection attack detection using fingerprints and pattern matching technique
Nadeem et al. Detection and prevention of SQL injection attack by dynamic analyzer and testing model
Tianmin et al. Research on webshell detection method based on machine learning
Kaur et al. SQL injection: Study and augmentation
Garn et al. Combinatorial methods for dynamic gray‐box SQL injection testing
Aliero et al. Review on SQL injection protection methods and tools
Joseph et al. An automata based approach for the prevention of nosql injections
Al-Khashab et al. PSIAQOP: preventing SQL injection attacks based on query optimization process
Shahriar et al. Risk assessment of code injection vulnerabilities using fuzzy logic-based system
Shehu et al. A literature review and comparative analyses on sql injection: vulnerabilities, attacks and their prevention and detection techniques
Makiou et al. Hybrid approach to detect SQLi attacks and evasion techniques
CN104038344A (zh) 一种基于正则表达式的身份验证方法
CN114936369A (zh) 基于标记的sql注入攻击主动防御方法、系统及存储介质
Shan et al. An adaptive method preventing database from SQL injection attacks
Al Rubaiei et al. SQLIA detection and prevention techniques

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