论文部分内容阅读
随着网络的发展和普及,基于网络的应用技术、模式逐渐成熟,尤其是在云计算日趋完善的大背景下,更多的公司、个人选择在线系统作为商业、生活的一部分。随之而来,网络攻击行为不断增加,带来的危害日趋严重,成为任何网络系统所要面对的首要问题。现在的网络攻击手段以应用层、混合性攻击为主,对于这种攻击方式,采用的主要识别手段是深度内容检测(DPI),这种技术深入到数据包负载对内容进行检测,与已知的攻击指纹特征进行模式匹配以识别非法行为,具备较高的识别率和准确性。但深度内容检测是一项时间复杂度、空间复杂度都比较大的工作,时间、资源消耗与规则库大小成线性关系,对设备性能有很高的要求。传统的软件系统受体系结构的制约,往往难以胜任高速网络环境下的安全检测任务,导致安全设备成为系统的瓶颈,安全性的提高以应用性的降低为代价,迫切需要一种新的系统平台架构。半导体技术的发展与成熟带来了硬件化的解决方案,可编程逻辑器件以其优越的性能、较高的灵活性、低廉的成本逐渐成为时间敏感计算的上佳解决方案,在通信、宇航、汽车、工业控制等越来越多的领域得到了广泛的应用,也成为使用硬件对数据包扫描进行加速、构造安全过滤设备的良好选择。在本文中,设计出一种集成式的片上防火墙与入侵检测系统联动模型,使用FPGA(现场可编程逻辑门阵列)构建专用的安全过滤芯片,融合包头过滤与深度内容检测技术,应用经典的Snort入侵检测规则,将扫描功能实施于网卡处,以独立子系统的方式为各种典型应用提供针对性的安全防护,有效降低安全过滤的延迟,方便系统升级与修改,是对网络防护体系进行创新的有益尝试。本文首先介绍了安全防护系统的研究现状,分析目前体系架构的利弊,探讨对其进行改进的必要性与方向,之后重点研究以下内容:1、防火墙与入侵检测联动的必要性以及实现的技术途径,并探讨集成式片上安全防护模型。2、NetFPGA的配置、接口与功能,以及适合于高速网络数据处理的特点,并以此为硬件平台,构建安全过滤芯片,应用Snort入侵检测规则,构建集包头过滤和深度内容检测于一体的安全防护系统;3、根据Snort规则同时包含普通字符串与PCRE正则表达式的特点,分别讨论两者所用的面向FPGA的模式匹配算法的异同,并针对安全过滤的特殊需求,提出深度内容检测的实现算法与结构;4、将包头过滤、深度内容检测、规则接口、并行控制整合于一体,设计通用安全检测平台,方便规则的更新与扩展。随后,详细介绍各个模块的细节,包括线速包头过滤结构,普通字符串匹配算法的FPGA实现与存储结构,PCRE正则表达式的非限定性有限状态自动机结构,两种匹配机构的同步机制,Snort规则的转化方法,板级并行的控制方式,分布式部署方案等。最后,给出实际的测试环境与得出的测试数据,表明基于NetFPGA的安全防护平台的良好性能,能够在一定程度上满足高速网络环境下的安全扫描需求。同时,这种基于嵌入式独立子系统的安全防护架构,代表了高速度、分布式、低成本网络安全防护的一个崭新方向,具备一定的学术研究意义与商业价值。