CN111580931A - 支持多元协议变量的组合表达式的匹配规则引擎 - Google Patents
支持多元协议变量的组合表达式的匹配规则引擎 Download PDFInfo
- Publication number
- CN111580931A CN111580931A CN202010389565.9A CN202010389565A CN111580931A CN 111580931 A CN111580931 A CN 111580931A CN 202010389565 A CN202010389565 A CN 202010389565A CN 111580931 A CN111580931 A CN 111580931A
- Authority
- CN
- China
- Prior art keywords
- rule
- matching
- file
- compiler
- binary
- 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
- 230000014509 gene expression Effects 0.000 title claims abstract description 23
- 238000001514 detection method Methods 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims description 12
- 235000005979 Citrus limon Nutrition 0.000 claims description 10
- 244000131522 Citrus pyriformis Species 0.000 claims description 9
- 230000009471 action Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 4
- 238000001914 filtration Methods 0.000 abstract description 26
- 238000005516 engineering process Methods 0.000 abstract description 15
- 238000011156 evaluation Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 9
- 238000011161 development Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 244000248349 Citrus limon Species 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/425—Lexical analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
- G06F9/45512—Command shells
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
支持多元协议变量的组合表达式的匹配规则引擎涉及信息技术领域,本发明由规则定义器、词法解析器、语法解析器、编译器和二进制代码生成器组成;规则定义器由规则输入器、规则检测引擎和规则输出器组成;本发明改进了扩展伯克利包过滤技术,使得匹配规则引擎的规则语法可定制,并且支持函数嵌套调用、函数变量引用、缓存范围偏移、嵌套表达式求值;本发明采用JIT技术,动态编译为机器码运行,可媲美C程序的执行效率,具备良好的系统移植性。
Description
技术领域
本发明涉及信息技术领域,特别是信息安全技术领域。
背景技术
随着网络通信技术和信息化技术的快速发展,互联网已渗透到人们工作、学习、生活的各个领域。在互联网深刻地改变着人们现实生活的同时,也带来了前所未有的网络安全和信息安全问题。当前,全球网络安全形势异常严峻,网络攻击、渗透提权、病毒、木马、勒索敲诈等网络威胁日益泛滥,以APT等为代表的网络攻击日益提高;个人信息与商业数据遭遇大规模泄露与违规利用,针对关键信息基础设施的恶意网站攻击频发,各国在网络空间对抗态势进一步加剧。面对网络安全和信息的严峻形势,如何采取有效措施保障网络信息的安全健康发展,已经成为各国政府与企业亟待解决的重大课题。
规则匹配引擎是一种嵌入在应用程序中的组件,可以对僵尸、木马、蠕虫、病毒和敏感信息进行检测,能检测出网络威胁信息并上报,有效保证网络信息的安全健康发展。
规则匹配引擎实现将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。具体执行可以分为接受数据输入、解释业务规则、根据业务规则做出业务决策几个过程。使用规则匹配引擎可以把复杂、冗余的业务逻辑同应用支撑系统分离开,做到系统架构的可复用移植。规则匹配引擎通常允许用户在不重新启动系统或部署新的可执行代码的情况下调整规则,从而实现业务处理能力的变化。规则匹配引擎旨在成为一个提供更高级别抽象的工具,以便用户可以更少地关注开发细节。
现有市场上采用规则匹配引擎的安全产品,其规则语法对表达式组合、复杂表达式的表达能力存在不足,缺乏多种协议变量组合逻辑判断能力、缺乏函数嵌入执行和复杂表达式动态求值的能力。
在本发明中,区别于现有技术提出了规则检测引擎对报文与恶意代码监测的匹配规则定义了一套语法标准规范,明确了组合表达式和函数嵌入的语法描述,对复杂的运算符增加了别名功能,规则更加简单明了,易于理解和编辑。
常规的规则匹配引擎更多是按照预定义的语法树解释执行,面向多核系统缺少优化,其执行效率不高,而基于虚拟机和即时编译器的执行模式能够提供更高的处理性能。
扩展伯克利包过滤技术是基于著名的伯克利包过滤技术的进化项目。Ebpf即扩展伯克利包过滤在BPF即伯克利包过滤的基础上扩展了虚拟机的指令,支持了函数调用,并对JIT即即时编译器做了优化。当扩展伯克利包过滤技术在linux 内核3.17版被正式引入后,逐步统一了内核追踪、应用性能调优与监控、流量控制、安全检测等处理流程。同时,扩展伯克利包过滤技术提供了良好的接口设计,具有高度扩展性和灵活性。开发人员通过编写扩展伯克利包过滤技术程序,将其编译为扩展伯克利包过滤技术对象文件,然后将其动态加载到内核,即可实现业务能力的扩展。反之亦可以动态卸载业务功能。比如在Linux的防火墙系统中,开发人员借助扩展伯克利包过滤技术来实现IPTables的过滤模块,然后动态加载到操作系统内核中,即可实现对特定报文的过滤需求。IPTABLES 是与最新的 3.5 版本Linux 内核集成的 IP 信息包过滤系统。
扩展伯克利包过滤技术为内核而生,其用户态程序仅仅作为配置管理工具使用,这大大限制了它的应用范围。尤其是基于零拷贝的用户态网络功能设备的开发,如防火墙、DPI、IDS/IPS。
因此,需要研究在用户态运行的扩展伯克利包过滤技术机制,即用户空间的扩展伯克利包过滤技术虚拟机,我们称之为用户态的扩展伯克利包过滤技术。
现有技术中扩展伯克利包过滤技术程序的入口函数只支持一个参数,且不支持对不连续的内存空间的检测。当需要对多个协议变量进行组合检测时,由于各协议变量并不在同一个连续的地址空间内,扩展伯克利包过滤技术程序是无法正确执行。
现有技术中扩展伯克利包过滤技术程序在编译时无法确定常量串将来会加载到内存的哪个地址,因而规定ebpf程序源代码中不能直接嵌入常量数据串,包括:字符串、正则表达式和二进制串以及字符与二进制混合串。但是,在安全匹配规则中常常需要输入待匹配的关键词串或正则表达式串或二进制串,这就导致现有技术的扩展伯克利包过滤技术机制无法满足多元协议变量组合的规则匹配的需求。
现有技术说明
即时编译器:通常情况下,Java程序最初都是被编译为字节码,通过解释器进行解释执行,解释执行能够获得更好的启动时间。某些被频繁执行的方法或者代码块,会被JVM认定为“热点代码”。在运行时JVM会把这些热点代码编译成与本地平台相关的机器码,并且进行各种层次的优化,以提高执行效率。完成这个任务的编译器称为即时编译器。
Ragel介绍:
Ragel是个“状态机编译器”,是用来从某定义编译出状态机的工具,是个很强大的基于正则表达式和状态机的超级词法分析器。可以用它来生成强大的词法分析器,用来分析诸如配置文件、规则文件、协议文件等。
Lemon介绍:
Lemon是一个LALR语法分析器生成器。与GNU Bison和Yacc不同。为了减少编写代码的错误,它使用了一种不同的语法。Lemon使用了一种更为高级的分析引擎,LALR的好处就是产生的状态表比较小,运行速度快,并且该引擎是可重入的和线程安全的。更进一步的,Lemon实现了能够消除资源泄漏的特性,适合于要求长时间稳定运行的程序。
Clang 是一个C、C++、Objective-C和Objective-C++编程语言的编译器前端。它采用了底层虚拟机LLVM作为其后端。它的目标是提供一个GNU编译器套装(GCC)的替代品。作者是克里斯·拉特纳,在苹果公司的赞助支持下进行开发,而源代码授权是使用类BSD的伊利诺伊大学厄巴纳-香槟分校开源码许可。 Clang项目包括Clang前端和Clang静态分析器等。
ELF文件由4部分组成,分别是ELF头(ELF header)、程序头表(Program headertable)、节(Section)和节头表(Section header table)。实际上,一个文件中不一定包含全部内容,而且它们的位置也未必如同所示这样安排,只有ELF头的位置是固定的,其余各部分的位置、大小等信息由ELF头中的各项值来决定。
发明内容
鉴于现有技术的不足,本发明提供的支持多元协议变量的组合表达式的匹配规则引擎由规则定义器、词法解析器、语法解析器、编译器和二进制代码生成器组成;规则定义器由规则输入器、规则检测引擎和规则输出器组成;
规则输入器接收来自计算机输入设备输入的规则文本,当规则文本符合规则检测引擎所定义的规则规范时,规则检测引擎按照规则规范将规则文本转化成即时编译器能够识别的编译器文本,由规则输出器将编译器文本存储成预编译文本;当规则文本不符合规则检测引擎所定义的规则规范时,规则检测引擎向计算机输出设备输出规则规范作为提示;
规则检测引擎所定义的规则规范的具体内容为:
书写规范为:
1)#表示规则注释,以#开头的内容不会被系统加载;
2)规则文件包含标题行;
3)每条规则以换行结束;
4)规则内部以tab或空格分隔;
每条规则必须包含的内容:
1)规则id:最长11位的整数;
2)协议:规则所属的协议类型,如:ip、ipv6、tcp、udp、http、dns;
3)确定使用的匹配方式:值为packet表示按单包匹配,值为stream 表示按流匹配;
4)匹配条件:需要匹配的内容;
5)响应动作:匹配后的执行动作;
每条响应动作包括下列内容,内容是可选的:
①是否记录日志:log选项,值为0表示不记录日志;值为1表示记录日志;
②是否存储样包:pcap选项,值为0表示不记录样包;值为1表示记录样包;
③威胁大类;category选项记录威胁大类信息;
④威胁子类;subCategory选项记录威胁子类信息;
⑤威胁描述;desc选项记录威胁描述信息;
词法解析器采用Ragel开源工具读入预编译文本的字符流,并将字符流组织成为有意义的词素的序列;对于每个词素,词法解析器用一个枚举值进行标识,生成的词素序列被传递到语法解析器;
语法解析器采用Lemon开源工具,使用词素序列的各个词素和Lemon语法规范文件来识别表达式,通过嵌入在表达式中的C代码进行语义分析并转换成C代码输出到序列C语言代码模块文件当中;
由编译器循环输入序列C语言代码模块文件,使用Clang编译序列C语言代码模块文件,生成ELF格式的目标文件,生成的二进制可执行指令放在代码段标记为.code,包含的全局变量和局部静态变量放到变量数据段,变量数据段细分为多个只读段和读写段;规则检测引擎所定义的规则规范中的匹配条件的内容所包括的常量字符串和二进制常量由编译器在序列C语言代码模块文件编译后强制存储在.rodata段;
由二进制代码生成器从目标文件中分离可执行代码和只读常量,存为二进制字节序列文件,形成二进制规则块;将二进制规则块写入规则库文件,生成最终的动态匹配规则库。
有益效果
本发明改进了扩展伯克利包过滤技术,使得匹配规则引擎的规则语法可定制,并且支持函数嵌套调用、函数变量引用、缓存范围偏移、嵌套表达式求值;本发明采用JIT技术,动态编译为机器码运行,可媲美C程序的执行效率;支持Linux操作系统用户态执行,也支持内核态运行;可以移植到Windows平台;支持虚拟机运行,具备良好的系统移植性。
附图说明
图1是本发明的系统结构图。
具体实施方式
参看图1实现本发明提供的支持多元协议变量的组合表达式的匹配规则引擎由规则定义器1、词法解析器2、语法解析器3、编译器4和二进制代码生成器5组成;规则定义器由规则输入器、规则检测引擎和规则输出器组成;
规则输入器10接收来自计算机输入设备输入的规则文本,当规则文本符合规则检测引擎11所定义的规则规范时,规则检测引擎11按照规则规范将规则文本转化成即时编译器能够识别的编译器文本,由规则输出器12将编译器文本存储成预编译文本;当规则文本不符合规则检测引擎11所定义的规则规范时,规则检测引擎11向计算机输出设备输出规则规范作为提示;
规则检测引擎11所定义的规则规范的具体内容为:
书写规范为:
1)#表示规则注释,以#开头的内容不会被系统加载;
2)规则文件包含标题行;
3)每条规则以换行结束;
4)规则内部以tab或空格分隔;
每条规则必须包含的内容:
1)规则id:最长11位的整数;
2)协议:规则所属的协议类型,如:ip、ipv6、tcp、udp、http、dns;
3)确定使用的匹配方式:值为packet表示按单包匹配,值为stream 表示按流匹配;
4)匹配条件:需要匹配的内容;
5)响应动作:匹配后的执行动作;
每条响应动作包括下列内容,内容是可选的:
①是否记录日志:log选项,值为0表示不记录日志;值为1表示记录日志;
②是否存储样包:pcap选项,值为0表示不记录样包;值为1表示记录样包;
③威胁大类;category选项记录威胁大类信息;
④威胁子类;subCategory选项记录威胁子类信息;
⑤威胁描述;desc选项记录威胁描述信息;
词法解析器2采用Ragel开源工具读入预编译文本的字符流,并将字符流组织成为有意义的词素的序列;对于每个词素,词法解析器用一个枚举值进行标识,生成的词素序列被传递到语法解析器3;
语法解析器3采用Lemon开源工具,使用词素序列的各个词素和Lemon语法规范文件来识别表达式,通过嵌入在表达式中的C代码进行语义分析并转换成C代码输出到序列C语言代码模块文件当中;
由编译器4循环输入序列C语言代码模块文件,使用Clang编译序列C语言代码模块文件,生成ELF格式的目标文件,生成的二进制可执行指令放在代码段标记为.code,包含的全局变量和局部静态变量放到变量数据段,变量数据段细分为多个只读段和读写段;规则检测引擎11所定义的规则规范中的匹配条件的内容所包括的常量字符串和二进制常量由编译器4在序列C语言代码模块文件编译后强制存储在.rodata段;
由二进制代码生成器5从目标文件中分离可执行代码和只读常量,存为二进制字节序列文件,形成二进制规则块;将二进制规则块写入规则库文件,生成最终的动态匹配规则库。
Claims (2)
1.支持多元协议变量的组合表达式的匹配规则引擎,其特征在于由规则定义器、词法解析器、语法解析器、编译器和二进制代码生成器组成;规则定义器由规则输入器、规则检测引擎和规则输出器组成;
规则输入器接收来自计算机输入设备输入的规则文本,当规则文本符合规则检测引擎所定义的规则规范时,规则检测引擎按照规则规范将规则文本转化成即时编译器能够识别的编译器文本,由规则输出器将编译器文本存储成预编译文本;当规则文本不符合规则检测引擎所定义的规则规范时,规则检测引擎向计算机输出设备输出规则规范作为提示;
词法解析器采用Ragel开源工具读入预编译文本的字符流,并将字符流组织成为有意义的词素的序列;对于每个词素,词法解析器用一个枚举值进行标识,生成的词素序列被传递到语法解析器;
语法解析器采用Lemon开源工具,使用词素序列的各个词素和Lemon语法规范文件来识别表达式,通过嵌入在表达式中的C代码进行语义分析并转换成C代码输出到序列C语言代码模块文件当中;
由编译器循环输入序列C语言代码模块文件,使用Clang编译序列C语言代码模块文件,生成ELF格式的目标文件,生成的二进制可执行指令放在代码段标记为.code,包含的全局变量和局部静态变量放到变量数据段,变量数据段细分为多个只读段和读写段;规则检测引擎所定义的规则规范中的匹配条件的内容所包括的常量字符串和二进制常量由编译器在序列C语言代码模块文件编译后强制存储在.rodata段;
由二进制代码生成器从目标文件中分离可执行代码和只读常量,存为二进制字节序列文件,形成二进制规则块;将二进制规则块写入规则库文件,生成最终的动态匹配规则库。
2.根据权利要求1所述的支持多元协议变量的组合表达式的匹配规则引擎,其特征在于规则检测引擎所定义的规则规范的具体内容为:
书写规范为:
1)#表示规则注释,以#开头的内容不会被系统加载;
2)规则文件包含标题行;
3)每条规则以换行结束;
4)规则内部以tab或空格分隔;
每条规则必须包含的内容:
1)规则id:最长11位的整数;
2)协议:规则所属的协议类型,如:ip、ipv6、tcp、udp、http、dns;
3)确定使用的匹配方式:值为packet表示按单包匹配,值为stream 表示按流匹配;
4)匹配条件:需要匹配的内容;
5)响应动作:匹配后的执行动作;
每条响应动作包括下列内容,内容是可选的:
①是否记录日志:log选项,值为0表示不记录日志;值为1表示记录日志;
②是否存储样包:pcap选项,值为0表示不记录样包;值为1表示记录样包;
③威胁大类;category选项记录威胁大类信息;
④威胁子类;subCategory选项记录威胁子类信息;
⑤威胁描述;desc选项记录威胁描述信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010389565.9A CN111580931A (zh) | 2020-05-10 | 2020-05-10 | 支持多元协议变量的组合表达式的匹配规则引擎 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010389565.9A CN111580931A (zh) | 2020-05-10 | 2020-05-10 | 支持多元协议变量的组合表达式的匹配规则引擎 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111580931A true CN111580931A (zh) | 2020-08-25 |
Family
ID=72126482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010389565.9A Pending CN111580931A (zh) | 2020-05-10 | 2020-05-10 | 支持多元协议变量的组合表达式的匹配规则引擎 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580931A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111930366A (zh) * | 2020-10-12 | 2020-11-13 | 北京江融信科技有限公司 | 一种基于jit实时编译的规则引擎实现方法及系统 |
CN114760369A (zh) * | 2022-04-14 | 2022-07-15 | 曙光网络科技有限公司 | 一种协议元数据提取方法、装置、设备及存储介质 |
CN115037658A (zh) * | 2022-06-08 | 2022-09-09 | 广东电网有限责任公司 | 基于bpf的计量主站网络检测方法及计量主站 |
WO2022257643A1 (zh) * | 2021-06-11 | 2022-12-15 | 中兴通讯股份有限公司 | 网络传输层数据处理方法、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102819527A (zh) * | 2011-06-08 | 2012-12-12 | 中兴通讯股份有限公司 | 在移动通信系统中匹配规则的方法和系统 |
US8464232B2 (en) * | 2010-12-27 | 2013-06-11 | Aleksandr F. Urakhchin | Compiler compiler system with syntax-controlled runtime and binary application programming interfaces |
CN103885810A (zh) * | 2014-03-07 | 2014-06-25 | 东莞市升力智能科技有限公司 | 基于正则表达式的Gerber文件编译器 |
CN108399176A (zh) * | 2017-02-07 | 2018-08-14 | 阿里巴巴集团控股有限公司 | 一种基于规则的数据处理方法及规则引擎装置 |
CN110708215A (zh) * | 2019-10-10 | 2020-01-17 | 深圳市网心科技有限公司 | 深度包检测规则库生成方法、装置、网络设备及存储介质 |
CN110780879A (zh) * | 2019-10-29 | 2020-02-11 | 南京星环智能科技有限公司 | 一种基于智能编译技术的决策执行方法、装置、设备及介质 |
-
2020
- 2020-05-10 CN CN202010389565.9A patent/CN111580931A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8464232B2 (en) * | 2010-12-27 | 2013-06-11 | Aleksandr F. Urakhchin | Compiler compiler system with syntax-controlled runtime and binary application programming interfaces |
CN102819527A (zh) * | 2011-06-08 | 2012-12-12 | 中兴通讯股份有限公司 | 在移动通信系统中匹配规则的方法和系统 |
CN103885810A (zh) * | 2014-03-07 | 2014-06-25 | 东莞市升力智能科技有限公司 | 基于正则表达式的Gerber文件编译器 |
CN108399176A (zh) * | 2017-02-07 | 2018-08-14 | 阿里巴巴集团控股有限公司 | 一种基于规则的数据处理方法及规则引擎装置 |
CN110708215A (zh) * | 2019-10-10 | 2020-01-17 | 深圳市网心科技有限公司 | 深度包检测规则库生成方法、装置、网络设备及存储介质 |
CN110780879A (zh) * | 2019-10-29 | 2020-02-11 | 南京星环智能科技有限公司 | 一种基于智能编译技术的决策执行方法、装置、设备及介质 |
Non-Patent Citations (2)
Title |
---|
DOMINIK SCHOLZ: "Performance Implications of Packet Filtering with Linux eBPF" * |
刘智: "二进制代码级的漏洞攻击检测研究" * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111930366A (zh) * | 2020-10-12 | 2020-11-13 | 北京江融信科技有限公司 | 一种基于jit实时编译的规则引擎实现方法及系统 |
WO2022257643A1 (zh) * | 2021-06-11 | 2022-12-15 | 中兴通讯股份有限公司 | 网络传输层数据处理方法、设备及存储介质 |
CN114760369A (zh) * | 2022-04-14 | 2022-07-15 | 曙光网络科技有限公司 | 一种协议元数据提取方法、装置、设备及存储介质 |
CN114760369B (zh) * | 2022-04-14 | 2023-12-19 | 曙光网络科技有限公司 | 一种协议元数据提取方法、装置、设备及存储介质 |
CN115037658A (zh) * | 2022-06-08 | 2022-09-09 | 广东电网有限责任公司 | 基于bpf的计量主站网络检测方法及计量主站 |
CN115037658B (zh) * | 2022-06-08 | 2023-05-02 | 广东电网有限责任公司 | 基于bpf的计量主站网络检测方法及计量主站 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9715593B2 (en) | Software vulnerabilities detection system and methods | |
CN111580931A (zh) | 支持多元协议变量的组合表达式的匹配规则引擎 | |
US8402547B2 (en) | Apparatus and method for detecting, prioritizing and fixing security defects and compliance violations in SAP® ABAP™ code | |
US10025688B2 (en) | System and method for detecting data extrusion in software applications | |
US20170017789A1 (en) | High Performance Software Vulnerabilities Detection System and Methods | |
US20090271867A1 (en) | Virtual machine to detect malicious code | |
US8387017B2 (en) | Black box testing optimization using information from white box testing | |
US10599852B2 (en) | High performance software vulnerabilities detection system and methods | |
CN104134039A (zh) | 病毒查杀方法、客户端、服务器以及病毒查杀系统 | |
US10579799B2 (en) | System and method for execution of objects lacking rules of interpretation | |
CN113312618A (zh) | 程序漏洞检测方法、装置、电子设备及介质 | |
Bagheri et al. | Automated dynamic enforcement of synthesized security policies in android | |
Hu et al. | A semantics-based hybrid approach on binary code similarity comparison | |
KR101557455B1 (ko) | 응용 프로그램 코드 분석 장치 및 그것을 이용한 코드 분석 방법 | |
Khoo | Decompilation as search | |
CN116028495A (zh) | 智能合约的检测方法及装置 | |
Borders et al. | Spector: Automatically analyzing shell code | |
Cheng et al. | Automatic inference of taint sources to discover vulnerabilities in soho router firmware | |
KR102341137B1 (ko) | 중간언어 기반 코드 변환 방법 및 이를 포함하는 전자 장치 | |
WO2023101574A1 (en) | Method and system for static analysis of binary executable code | |
Li et al. | Detection malicious Android application based on simple-Dalvik intermediate language | |
CN115168861A (zh) | 数据安全验证方法、装置、设备及存储介质 | |
EP2709033B1 (en) | System and method for detecting data extrusion in software applications | |
Lachmund | Auto-generating access control policies for applications by static analysis with user input recognition | |
CN113138797A (zh) | 面向Intel SGX的程序自动化移植系统 |
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 |
Application publication date: 20200825 |
|
WD01 | Invention patent application deemed withdrawn after publication |