高速漏洞签名匹配技术解析
在网络安全领域,快速准确地匹配漏洞签名对于防范网络攻击至关重要。本文将介绍一种名为 VESPA 的架构,它在高速匹配漏洞签名方面表现出色,能够显著提升网络入侵检测系统的性能。
1. 对 binpac 的修改
为了提高漏洞签名匹配的效率,对 binpac 进行了一系列修改:
- 动态对象分配 :在 binpac 中,有些对象必须使用指向动态创建对象的指针来指定,不能预先分配。例如,在 Bro DNS 的 binpac 规范中,DNS 名称由 DNS 标签组成,而 DNS 标签类型在指向另一个名称时还包含一个 DNS 名称对象,这种循环依赖在静态大小的类中无法实现。因此,在 binpac 语言中添加了 &pointer 属性修饰符,让作者能够明确标记必须动态分配的对象。
- 数组处理方式 :原始的 binpac 为每个数组创建一个向量,并分别存储每个元素。但由于二进制遍历只需在解析时访问数据,不需要存储整个数组,只需要存储当前元素。因此,完全消除了向量类型,修改 binpac 使其使用预先分配的对象仅存储数组中的当前元素。如果作者需要存储数组中每个元素的数据,必须在 VESPA 解析器类中使用处理函数将其显式存储在 binpac 之外。
2. 评估实验
对 VESPA 在文本和二进制协议中的漏洞进行了评估,具体实验设置如下:
- 实验环境 :所有实验在 Ubuntu 7.10 Linux(2.6.22 - 14 - x86 64)系统上进行,使用双核 2.
超级会员免费看
订阅专栏 解锁全文
4108

被折叠的 条评论
为什么被折叠?



