CN110019325A - 一种工业规则的快速匹配方法 - Google Patents
一种工业规则的快速匹配方法 Download PDFInfo
- Publication number
- CN110019325A CN110019325A CN201810926637.1A CN201810926637A CN110019325A CN 110019325 A CN110019325 A CN 110019325A CN 201810926637 A CN201810926637 A CN 201810926637A CN 110019325 A CN110019325 A CN 110019325A
- Authority
- CN
- China
- Prior art keywords
- rule
- entry
- industrial
- searched
- agreement
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种工业规则的快速匹配方法,包括以下步骤:A、对工业规则进行预处理;B、对预处理后的工业规则进行匹配。本发明能够改进现有技术的不足,降低工业规则对设备的影响,以满足工业控制系统的实时性要求。
Description
技术领域
本发明涉及工控网络安全技术领域,尤其是一种工业规则的快速匹配方法。
背景技术
随着信息技术的发展,工业控制系统逐步走向联网化。很多工业控制协议逐渐运行于工业以太网上, 针对工业控制系统的攻击也更加普遍。
工控网络中的恶意威胁软件,一旦潜入成功后,很大一部分不会立即对工业网络造成破坏。目前,针对工业控制网络异常行为的检测技术主要有两种办法,白名单和黑名单。由于工业控制系统的实时性要求,提高白名单和黑名单的匹配效率具有较高的应用价值。
现有的白名单与黑名单规则匹配技术,主要是线性匹配。在规则预处理阶段,根据协议,地址等内容,把规则以链表的形式组织起来。在规则匹配阶段,遍历此链表,查看规则是否匹配。这种方法效率低下,当规则数目较大时,对实时性影响大。规则预处理复杂,无法对单独的规则进行处理。在新增或删除单条规则时,必须对所有规则重新加载。在规则数量较大时,影响设备处理性能。
发明内容
本发明要解决的技术问题是提供一种工业规则的快速匹配方法,能够解决现有技术的不足,降低工业规则对设备的影响,以满足工业控制系统的实时性要求。
为解决上述技术问题,本发明所采取的技术方案如下。
一种工业规则的快速匹配方法,包括以下步骤:
A、对工业规则进行预处理;
B、对预处理后的工业规则进行匹配。
作为优选,步骤A中,对工业规则进行预处理包括以下步骤,
A1、对工业规则进行解析,判断是否具有深度解析内容;
A2、若不具有深度解析内容,则插入协议对应的链表,预处理结束;
A3、若具有深度解析内容,则根据协议提供的hash函数进行hash运算,然后判断规则内容条目是否已在hash表中;
A4、若不在hash表中,则创建规则条目和二分查找树后将源地址插入规则条目;
A5、若在hash表中,则直接将源地址插入规则条目。
作为优选,步骤B中,对工业规则进行匹配包括以下步骤,
B1、根据数据包解析内容生成hash;
B2、在hash表中查找规则;
B3、根据数据包的源地址在二分查找树中查找对应的条目;
B4、判断条目是否存在;
B5、若条目不存在,则转至步骤B9;
B6、若条目存在,则根据数据包的目的地址在条目中查找,然后再次判断条目是否存在;
B7、若条目存在,则在协议链表内查找,若查找到对应条目,则根据规则ID判断匹配成功的规则,若未查找到对应的条目,则匹配成功规则;
B8、若条目不存在,则转至步骤B9;
B9、在协议链表中根据源地址和目的地址进行查找。
采用上述技术方案所带来的有益效果在于:本发明使用hash算法,快速匹配规则内容。避免低效率的线性匹配。通过组合简单的hash与二分查找树, 降低规则预处理的复杂度与内存的占用。
附图说明
图1是本发明一个具体实施方式中对工业规则进行预处理的流程图。
图2是本发明一个具体实施方式中对工业规则进行匹配的流程图。
具体实施方式
参照图1-2,本发明一个具体实施方式包括以下步骤:
A、对工业规则进行预处理;
B、对预处理后的工业规则进行匹配。
步骤A中,对工业规则进行预处理包括以下步骤,
A1、对工业规则进行解析,判断是否具有深度解析内容;
A2、若不具有深度解析内容,则插入协议对应的链表,预处理结束;
A3、若具有深度解析内容,则根据协议提供的hash函数进行hash运算,然后判断规则内容条目是否已在hash表中;
A4、若不在hash表中,则创建规则条目和二分查找树后将源地址插入规则条目;
A5、若在hash表中,则直接将源地址插入规则条目。
步骤B中,对工业规则进行匹配包括以下步骤,
B1、根据数据包解析内容生成hash;
B2、在hash表中查找规则;
B3、根据数据包的源地址在二分查找树中查找对应的条目;
B4、判断条目是否存在;
B5、若条目不存在,则转至步骤B9;
B6、若条目存在,则根据数据包的目的地址在条目中查找,然后再次判断条目是否存在;
B7、若条目存在,则在协议链表内查找,若查找到对应条目,则根据规则ID判断匹配成功的规则,若未查找到对应的条目,则匹配成功规则;
B8、若条目不存在,则转至步骤B9;
B9、在协议链表中根据源地址和目的地址进行查找。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (3)
1.一种工业规则的快速匹配方法,其特征在于包括以下步骤:
A、对工业规则进行预处理;
B、对预处理后的工业规则进行匹配。
2.根据权利要求1所述的工业规则的快速匹配方法,其特征在于:步骤A中,对工业规则进行预处理包括以下步骤,
A1、对工业规则进行解析,判断是否具有深度解析内容;
A2、若不具有深度解析内容,则插入协议对应的链表,预处理结束;
A3、若具有深度解析内容,则根据协议提供的hash函数进行hash运算,然后判断规则内容条目是否已在hash表中;
A4、若不在hash表中,则创建规则条目和二分查找树后将源地址插入规则条目;
A5、若在hash表中,则直接将源地址插入规则条目。
3.根据权利要求1所述的工业规则的快速匹配方法,其特征在于:步骤B中,对工业规则进行匹配包括以下步骤,
B1、根据数据包解析内容生成hash;
B2、在hash表中查找规则;
B3、根据数据包的源地址在二分查找树中查找对应的条目;
B4、判断条目是否存在;
B5、若条目不存在,则转至步骤B9;
B6、若条目存在,则根据数据包的目的地址在条目中查找,然后再次判断条目是否存在;
B7、若条目存在,则在协议链表内查找,若查找到对应条目,则根据规则ID判断匹配成功的规则,若未查找到对应的条目,则匹配成功规则;
B8、若条目不存在,则转至步骤B9;
B9、在协议链表中根据源地址和目的地址进行查找。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810926637.1A CN110019325A (zh) | 2018-08-15 | 2018-08-15 | 一种工业规则的快速匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810926637.1A CN110019325A (zh) | 2018-08-15 | 2018-08-15 | 一种工业规则的快速匹配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110019325A true CN110019325A (zh) | 2019-07-16 |
Family
ID=67188372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810926637.1A Pending CN110019325A (zh) | 2018-08-15 | 2018-08-15 | 一种工业规则的快速匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019325A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633111A (zh) * | 2005-01-14 | 2005-06-29 | 中国科学院计算技术研究所 | 高速网络业务流分类方法 |
CN101309274A (zh) * | 2008-06-27 | 2008-11-19 | 南京邮电大学 | 混合架构入侵检测系统规则库创建方法 |
CN103957154A (zh) * | 2014-04-11 | 2014-07-30 | 国家计算机网络与信息安全管理中心 | 网络数据包url过滤方法 |
CN104717088A (zh) * | 2013-12-17 | 2015-06-17 | 北京中科网威信息技术有限公司 | 一种基于十字链表的工业防火墙规则库分析方法 |
CN106599097A (zh) * | 2016-11-24 | 2017-04-26 | 东软集团股份有限公司 | 海量特征串集合的匹配方法和装置 |
-
2018
- 2018-08-15 CN CN201810926637.1A patent/CN110019325A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633111A (zh) * | 2005-01-14 | 2005-06-29 | 中国科学院计算技术研究所 | 高速网络业务流分类方法 |
CN101309274A (zh) * | 2008-06-27 | 2008-11-19 | 南京邮电大学 | 混合架构入侵检测系统规则库创建方法 |
CN104717088A (zh) * | 2013-12-17 | 2015-06-17 | 北京中科网威信息技术有限公司 | 一种基于十字链表的工业防火墙规则库分析方法 |
CN103957154A (zh) * | 2014-04-11 | 2014-07-30 | 国家计算机网络与信息安全管理中心 | 网络数据包url过滤方法 |
CN106599097A (zh) * | 2016-11-24 | 2017-04-26 | 东软集团股份有限公司 | 海量特征串集合的匹配方法和装置 |
Non-Patent Citations (1)
Title |
---|
尚文利等: "基于哈希算法的工业防火墙规则自学习方法", 《计算机工程与设计》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104982011B (zh) | 使用多尺度文本指纹的文档分类 | |
US20180067921A1 (en) | System and method for keyword spotting using representative dictionary | |
KR101868720B1 (ko) | 정규 표현식들에 대한 컴파일러 | |
CN102594623B (zh) | 防火墙的数据检测方法及装置 | |
KR20140061359A (ko) | 앵커링된 패턴들 | |
US20080313708A1 (en) | Data content matching | |
CN103873441A (zh) | 防火墙安全规则优化方法及装置 | |
CN110546640B (zh) | 用于深度数据包分析的分级模式匹配 | |
CN106126383A (zh) | 一种日志处理方法和装置 | |
CN105743871A (zh) | 一种基于判定树的防火墙策略冲突检测方法 | |
CN102780681A (zh) | Url过滤系统及过滤url的方法 | |
CN106845227A (zh) | 一种基于ragel状态机的恶意脚本检测方法及系统 | |
EP1980081B1 (en) | A method of filtering high data rate traffic | |
CN110868404A (zh) | 一种基于tcp/ip指纹的工控设备自动识别方法 | |
CN111988231A (zh) | 一种掩码五元组规则匹配的方法及装置 | |
CN107204891A (zh) | 一种海量规则下报文识别的方法及装置 | |
CN110019325A (zh) | 一种工业规则的快速匹配方法 | |
CN102143151B (zh) | 一种基于深度包检测的协议跨包检测方法和装置 | |
CN106878171B (zh) | 一种用于多数据源的流式数据处理方法及装置 | |
CN113709129A (zh) | 一种基于流量学习的白名单生成方法、装置和系统 | |
CN102710524A (zh) | 一种多协议网络报文传输保序系统的实现方法 | |
CN113965378B (zh) | 一种威胁邮件溯源分析方法、系统、设备及存储介质 | |
EP3837625A1 (en) | Fuzzy inclusion based impersonation detection | |
CN116132138A (zh) | 邮件检测方法及装置 | |
CN115037698A (zh) | 一种数据识别方法、装置及电子设备 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190716 |