CN108769003A - 一种url规则的冲突检测方法 - Google Patents
一种url规则的冲突检测方法 Download PDFInfo
- Publication number
- CN108769003A CN108769003A CN201810509511.4A CN201810509511A CN108769003A CN 108769003 A CN108769003 A CN 108769003A CN 201810509511 A CN201810509511 A CN 201810509511A CN 108769003 A CN108769003 A CN 108769003A
- Authority
- CN
- China
- Prior art keywords
- rule
- url
- node
- hash
- detection
- 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
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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0263—Rule management
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供的是一种URL规则的冲突检测方法。首先对URL项进行节点拆分,降低第一层目录的特殊性,将第一层目录与其他层次目录均当做普通路径处理,然后分段进行冲突检测。本发明减少节点的重复申请,节省资源,而且冲突域小,有效减少了字符串的比较次数,具有较高的规则冲突检测性能。本方法在规则冲突检测的准确率较URL_HAVL、URL_WM两种算法,平均高出10%到20%左右,最低的准确率保持在70%以上。总结出本方法的优势在于使用少量增长的时间复杂度代价换取较高的准确率,对于URL规则冲突检测有明显效果。
Description
技术领域
本发明涉及的是一种WEB安全网关检测方法,特别是涉及WEB安全网关规则中URL项的冲突检测方法。
背景技术
WEB安全网关中被检测的数据流量的去向都需要由规则指定。因为规则间的冲突和规则集的大小会严重影响WEB安全网关的功能和性能,因此如果能对规则进行优化,将会极大的减少数据包处理时延,从而提升WEB安全网关的性能。传统防火墙规则仅包含网络层和运输层的信息,无法提供应用层防护功能,对应五元组规则形式也具有很大的局限性。因而对于功能全面的WEB安全网关,需要重新定义安全访问策略的形式,将WEB安全网关的功能特性融入到新的规则形式中。对于提出的WEB安全网关规则形式,综合考虑规则项之间的属性差异,采用不同处理方式进行并行检测从而加快检测速度,对并行检测方式中的关键步骤进行优化,从而提升WEB安全网关性能。
防火墙类系统规则集的大小直接影响系统性能,新规则的不断引入,使得防火墙规则数量变得异常庞大,而且新规则可能与原规则集合中的规则冲突,违背安全策略。而且由于规则数量与规则集合的复杂性相关,仅凭人工去判断规则之间的冲突和冗余,显然是不现实的。因此规则集合质量成为WEB安全网关的性能瓶颈。人们在规则集合的冲突检测方面做了大量的研究,提出了很多种方法。例如基于决策树的规则优化方法、基于规则风险值和堆排序的规则优化方法、基于网格可视化的规则冲突检测算法和高速流量环境下的大规模URL过滤方法URL_HAVL等,但这些算法对URL规则项去重的准确率和速度不佳,对提升WEB安全网关性能效果较低。例如,基于决策树的规则冲突检测算法,适应范围窄,只能解决数字形式的规则冲突,具有不同包含关系的字符串类型的规则冲突检测毫无办法。基于策略分割、分析计算和冲突域提取的冲突规则检测算法虽然提高了冲突规则的检测效率,但在规则项层级过大的情况下,将会导致网格空间无限增长从而造成严重的空间浪费失去实际应用价值,无法应用于WEB安全网关中。
关于URL项规则冲突检测的直接算法不多,但是很多现有URL去重算法和过滤算法完全可以解决URL冲突检测,且这类论文较多,例如高速流量环境下的大规模URL过滤方法,为了解决冲突检测问题,需要对URL过滤算法限定输入形式,增加规则集合大小,但此方法会出现节点重复申请的问题,当URL规则层数增多,节点数量会急剧增加,大量占用内存空间造成浪费。这种算法检测准确率降低、处理时间过长,在准确率和速率上均有上升空间。
发明内容
本发明的目的在于提供一种具有更高准确率的URL规则的冲突检测方法。
本发明的目的是这样实现的:
第一步,初始化哈希函数对应的索引数组;
第二步,若规则集合不为空,取出规则集合的第一条规则,使用“/”为标志进行拆分,否则执行第七步;
第三步,如果是第一条规则,创建节点,使用固定方法将拆分后的规则进行表示,然后进行哈希映射;
第四步,对规则的第一个节点在所有哈希结构中进行查找,找到匹配的一项或结束为止,进行首节点的多次哈希查找,判断规则是否为其他规则子串;
第五步,对规则中的剩余节点,分别进行哈希计算,在第一层哈希结构中进行查找,判断是否包含其他规则项,或者与其他规则相交;
第六步,将此条规则插入结构中,在此过程中遇到的哈希冲突节点,按照红黑树规则进行结构调整,满足红黑树要求,最后将此规则从待检测规则集合中删除,成功插入规则数量增加1,回到第二步;
第七步,所有规则检测完毕,返回冲突规则集合。
URL(Uniform Resource Locator)统一资源定位符是互联网上标准资源的地址,表达形式为protocol://hostname[:port]/path/[;parameters][?query]#fragment。URL不仅标识了资源的位置信息还指明了资源被处理的方式,便于浏览器等搜索工具对其索引定位。可以利用这种特有结构,对规则进行冲突检测。
本发明的方法利用URL的多层级结构特征,首先对URL项进行节点拆分,降低第一层目录的特殊性,将第一层目录与其他层次目录均当做普通路径处理。然后分段进行冲突检测,减少节点的重复申请,节省资源,而且冲突域小,有效减少了字符串的比较次数,具有较高的规则冲突检测性能。
附图说明
图1是WEB安全网关规则冲突检测模型
图2是URL规则项冲突检测方法流程图。
图3是分段式URL规则项冲突检测方法结构图。
具体实施方式
下面举例对本发明做更详细的描述。
1)初始化k组哈希函数对应的索引数组,建立k组,1~k对应URL的每部分节点,每个数组的所有元素均设置成NULL。k值为URL规则项中层级次数最多的层数大小,每组哈希函数分别对应URL中的层级路径。
2)如果待检测规则集合为空,则说明检测结束,否则对URL规则项进行多节点拆分,拆分单位是“/”,举例说明如下:www.sogou.com/labs/research/list_tsinghua.php是最常见的URL形式,可以拆分为www.sogou.com、labs、research和list_tsinghua.php四个节点。
3)如果是第一条规则,对URL项的每个路径创建节点,节点之间彼此之间使用后继指针相连,最后一个节点后继为空,标记为终点。从第一组哈希函数开始进行映射,一直到URL最后一个节点。
4)取得URL规则项的第一层路径,在所有哈希结构中进行查找,找到匹配的一项或结束为止。如果对应哈希结构中查找到该路径内容,首先在该映射结果的红黑树中查找判断是否是路径本身,排除因为哈希冲突导致的误判。如果确定找到该路径,对该节点后续内容和规则剩余路径进行逐一比较,如果出现重合部分且结构中遇到尾节点或规则项所有路径检测完毕,则加入冲突规则结果中。
5)对规则项中的剩余路径,分别在第一层哈希结构中进行查找,检查过程同4)。如果查找结果不为空,对后续节点和规则项剩余路径进行比较,如果出现重合部分且结构中遇到尾节点或规则项所有路径检测完毕,则加入冲突规则结果中。
6)将此条规则插入结构中,插入方式同1)中过程。插入过程中遇到的哈希冲突,按照红黑树规则进行结构调整使其有效解决快速查找和哈希冲突的处理要求。此时与此规则冲突的所有规则检测完毕,最后将此规则从待检测规则集合中删除,成功冲突过的规则数量增加1,然后重新执行第2)步。
7)待检测规则集合为空,所有待检测的规则之间的冲突均检测完毕,返回冲突规则集合,其中包括详细的规则冲突号和具体冲突内容。
本发明的方法的整个处理过程主要包括哈希计算、字符串比较和红黑树查找三个部分。对于不同的URL集合中URL层级变化的范围从几个到几百个不等,无法给出具体的时间计算公式,但理论上时间复杂度高于模式匹配算法。实际情况中,可以通过选择合适的哈希函数来降低冲突概率,从而降低本方法的时间复杂度。理想情况下,哈希冲突为零,那么本方法的时间复杂度将为线性。实验结果显示URCRD的时间性能优于其他两种算法,原因是处理过程中不需要引入多余的冗余规则,且哈希冲突次数少,本方法在规则冲突检测的准确率较URL_HAVL、URL_WM两种算法,平均高出10%到20%左右,最低的准确率保持在70%以上。总结出本方法的优势在于使用少量增长的时间复杂度代价换取较高的准确率,对于URL规则冲突检测有明显效果。
Claims (1)
1.一种URL规则的冲突检测方法,其特征是:
第一步,初始化哈希函数对应的索引数组;
第二步,若规则集合不为空,取出规则集合的第一条规则,使用“/”为标志进行拆分,否则执行第七步;
第三步,如果是第一条规则,创建节点,使用固定方法将拆分后的规则进行表示,然后进行哈希映射;
第四步,对规则的第一个节点在所有哈希结构中进行查找,找到匹配的一项或结束为止,进行首节点的多次哈希查找,判断规则是否为其他规则子串;
第五步,对规则中的剩余节点,分别进行哈希计算,在第一层哈希结构中进行查找,判断是否包含其他规则项,或者与其他规则相交;
第六步,将此条规则插入结构中,在此过程中遇到的哈希冲突节点,按照红黑树规则进行结构调整,满足红黑树要求,最后将此规则从待检测规则集合中删除,成功插入规则数量增加1,回到第二步;
第七步,所有规则检测完毕,返回冲突规则集合。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018103185879 | 2018-04-11 | ||
CN201810318587 | 2018-04-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108769003A true CN108769003A (zh) | 2018-11-06 |
Family
ID=64005716
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810509511.4A Pending CN108769003A (zh) | 2018-04-11 | 2018-05-24 | 一种url规则的冲突检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108769003A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002093832A2 (en) * | 2001-05-16 | 2002-11-21 | Bytemobile, Inc. | System and methods for providing differentiated services within a network communication system |
CN106708956A (zh) * | 2016-11-29 | 2017-05-24 | 中国人民解放军国防科学技术大学 | 一种基于多url规则集的http数据匹配方法 |
CN107315829A (zh) * | 2017-07-05 | 2017-11-03 | 成都电科智联科技有限公司 | 一种实时数据库中基于规则集的快速压缩方法 |
-
2018
- 2018-05-24 CN CN201810509511.4A patent/CN108769003A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002093832A2 (en) * | 2001-05-16 | 2002-11-21 | Bytemobile, Inc. | System and methods for providing differentiated services within a network communication system |
CN106708956A (zh) * | 2016-11-29 | 2017-05-24 | 中国人民解放军国防科学技术大学 | 一种基于多url规则集的http数据匹配方法 |
CN107315829A (zh) * | 2017-07-05 | 2017-11-03 | 成都电科智联科技有限公司 | 一种实时数据库中基于规则集的快速压缩方法 |
Non-Patent Citations (2)
Title |
---|
周彩兰 等: "哈希红黑树算法在网络信息分析中的应用", 《软件导刊》 * |
殷科 等: "基于Hash_tree的多维IP包分类算法", 《计算机工程与应用》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107786575B (zh) | 一种基于dns流量的自适应恶意域名检测方法 | |
CN107566376A (zh) | 一种威胁情报生成方法、装置及系统 | |
CN106528599B (zh) | 一种海量音频数据中的字符串快速模糊匹配算法 | |
CN112910929B (zh) | 基于异质图表示学习的恶意域名检测方法及装置 | |
CN109981625B (zh) | 一种基于在线层次聚类的日志模板抽取方法 | |
US20130191367A1 (en) | System and method for geographically organizing and classifying businesses on the world-wide web | |
CN109218223B (zh) | 一种基于主动学习的鲁棒性网络流量分类方法及系统 | |
CN101577721A (zh) | 一种索引拆分布鲁姆过滤器及其插入、删除和查询方法 | |
US20040255162A1 (en) | Security gateway system and method for intrusion detection | |
CN102685145A (zh) | 一种基于dns数据包的僵尸网络域名发现方法 | |
KR100960117B1 (ko) | 시그니처 패턴 매칭방법과 그 시스템 및 시그니처 패턴이기록된 기록매체 | |
CN105491018B (zh) | 一种基于dpi技术的网络数据安全性分析方法 | |
CN109033225A (zh) | 中文地址识别系统 | |
CN102694801B (zh) | 病毒检测方法、装置以及防火墙设备 | |
CN107743128A (zh) | 一种基于首页关联域名和同服务ip的非法网站挖掘方法 | |
CN102710491B (zh) | 使用pcap型过滤器和硬件辅助的patricia树的无损实时线速率过滤的方法和设备 | |
CN114598499B (zh) | 结合业务应用的网络风险行为分析方法 | |
CN115189914A (zh) | 网络流量的应用程序编程接口api识别方法和装置 | |
CN113672924A (zh) | 分布式云计算系统的数据入侵检测方法及装置 | |
CN103455754A (zh) | 一种基于正则表达式的恶意搜索关键词识别方法 | |
CN108769003A (zh) | 一种url规则的冲突检测方法 | |
CN111061972B (zh) | 一种用于url路径匹配的ac查找优化方法和装置 | |
Blustein et al. | Bloom filters. a tutorial, analysis, and survey | |
CN115242539B (zh) | 基于特征融合的电网信息系统网络攻击检测方法及装置 | |
Guermazi et al. | Using a semi-automatic keyword dictionary for improving violent web site filtering |
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 |
Application publication date: 20181106 |
|
RJ01 | Rejection of invention patent application after publication |