论文部分内容阅读
随着现代网络技术的飞速发展,千兆局域网解决方案已经成为一种潮流。因此,人们迫切需要速度更快、功能更好、性能更强的入侵检测系统,来适应在高速环境下的网络安全防护。
本课题研究基于IXP2400网络处理器的网络型入侵检测系统。整个系统被分成预处理子系统,规则检测子系统,告警子系统三大部分。作者在本课题中负责预处理子系统的设计与实现。预处理子系统由报文解码,IP分片重组,端口扫描,TCP协议分析,应用协议分析等模块构成。
本论文首先对IXP2400网络处理器技术作简要介绍;然后提出了NP-NIDS预处理子系统整体设计方案;接着详细探讨了报文解码模块,IP分片重组模块,端口扫描检测模块的设计与实现方案;最后简要讨论了其它预处理功能,并对下一步工作进行了展望。
解码模块在微引擎中实现,文中对解码数据结构的设计作了详细分析,设计出的解码结构只有5个长字,比起SNORT的packet结构可以说有了质上的不同,非常适合微引擎处理,通过测试,基本实现了1G比特的报文解码功能。
IP分片重组模块的实现分CC和MB两部分,CC部分用于完成正常的分片重组及告警;MB部分主要完成自保机制,两者有机配合,可以抵抗IP分片洪流的攻击。本文对此模块的关键点,即分片存储和重组,作了详细探讨,并提出了分区合并分片重组算法,此方法相对于SNORT的分片重组算法,大大降低了对内存的需求。
端口扫描模块在微引擎中实现,设计上使用了按升序排列关键字外加设标志位的办法,合理的解决了双关键字问题;采用超大hash表来作为连接结点数据库和源IP数据库,使得查寻结点在几次内就可以完成;对过时结点清除采用了多队列超时方法,使清除结点基本只与结点数量有关;对结点分配管理采用了堆栈式管理,这种管理看似浪费内存,但因为很方便缓冲到ME的寄存器内,所以结点分配效率极高。