论文部分内容阅读
随着针对应用层的网络攻击以及拒绝服务攻击的日益频繁和复杂化,目前防火墙技术面临的突出问题是:如何在提供复杂的应用层数据保护的同时,解决防火墙软件的平台无关性和可移植性问题,在不断提高性能的同时,具备更强的安全防护能力。本文研究了防火墙的基本理论和虚拟机技术的基本理论。在此基础上,将虚拟机技术应用到防火墙包过滤处理中,研究并实现了以包过滤虚拟机为核心的新型包过滤引擎NPFE。由于虚拟机技术的应用,在某种程度上,使防火墙软件具备了平台无关性和可移植性。本文也将可编程技术应用到了防火墙的使用中,设计了名为FireTiger的包过滤语言,同时将现代编译优化技术应用到了包过滤程序的编译上,开发了FireTiger的优化编译器,提高了包过滤代码的质量,在通用PC平台上兼顾了性能和功能的要求。同时虚拟机技术和可编程技术的应用,实现了一种新的防火墙使用方式——包过滤程序。本文研究了深度包检测技术的基本问题,并详细研究了深度包检测的代表技术——流过滤技术。本文从TCP报文处理的本质入手,研究了流过滤的功能和技术特点,得到了实现要点,给出了与应用层协议无关的实现方案,并对其在原型系统中的编码实现进行了详细描述。本文研究了基于Syn-Flooding的拒绝服务攻击的原理和主机系统上的典型防范技术,并在此基础上提出并在原型系统中实现了TCP拦截技术。本文还研究了基于算法时间复杂度的拒绝服务攻击的原理,并以哈希查找算法为具体研究对象,提出了哈希函数构造结构化、参数化、随机化的技术思路,并在原型系统中实现了基于全域哈希算法的解决方案。为了验证、实验本文的研究工作,本课题以Linux系统为实验平台,在充分研究Linux内核TCP/IP框架结构和Netfilter实现机制的基础上,研究并实现了一个名为FireNet的原型防火墙系统。