CN110213286A - 一种基于双引擎的高效waf设计方法 - Google Patents
一种基于双引擎的高效waf设计方法 Download PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols 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
技术领域
本发明涉及互联网安全技术领域,具体的说,是一种。
背景技术
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请求。
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)
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)
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混淆流量检测方法 |
-
2019
- 2019-06-12 CN CN201910506919.0A patent/CN110213286B/zh active Active
Patent Citations (7)
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)
Title |
---|
SDNLAB君: "yperscan与Snort的集成方法", 《HTTPS://ACCOUNT.FNEDU.COM/21120.HTML》 * |
Cited By (4)
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 |