防火墙内核安全组件一体化的方法

文档序号:7595689阅读:122来源:国知局
专利名称:防火墙内核安全组件一体化的方法
技术领域
本发明涉及一种防火墙内核安全组件组织的方法,特别是将包过滤、攻击检测、应用代理结合为一体的方法,属于计算机网络安全领域。
背景技术
由于防火墙主要安全组件攻击检测、包过滤、应用代理通常都被分别单独实现,它们使用的安全策略也相对独立。对用户而言,这样的架构缺乏直观性,在逻辑上也比较分散,很难体现实际的相关性,容易产生矛盾和错误的配置;对系统而言,相互协作困难,效率上由于分别进行安全策略检查,存在很多重复的匹配项,特别是应用代理通常实现在应用层,数据传递时需要进行多次内存复制,对系统性能影响很大。因此,将各个安全组件在内核中进行一体化实现,无疑是一种很好地解决手段。

发明内容
本发明的主要目的在于提供一种将防火墙安全组件,如包过滤、攻击检测、应用代理,在操作系统内核中一体化实现的方法,在策略配置上它将更加具备统一性和直观性,在系统工作中,它将有更简便的协作手段和更高的处理效率。
本发明的目的是这样实现的对防火墙系统的设计,采用一体化构架的流水线方式处理的系统结构,一体化组织的安全策略,以及一条内核中数据包和当前策略匹配点的传输路径。
对于一体化系统结构的实现,统一定义在操作系统内核的调用接口点,包过滤、攻击检测和应用代理根据功能目标,分别在最合适的接口点插入检查函数,相互之间可进行有效的协作。
对一体化组织的安全策略的实现,使用从保护目标为根结点出发的树形结构组织安全策略,策略树的不同分支之间互斥,保证每次匹配都唯一确定一个子分支或叶结点,叶结点即表明防火墙应当采取的动作;包过滤对安全策略的检查最终结果若是送交代理分支,则代理可以继续从这个检查点向下进行匹配;策略树在内核中由各安全组件共享,当前检查点随数据包在协议栈中传递,使得检查可具有延续性。
防火墙对数据包进行安全检查的一个完整步骤包括步骤1在底半队列中进行混合模式处理,判定当前数据包交网关还是网桥处理模块;步骤2在路由前做以下工作步骤201基本安全检查;步骤202组播广播处理;步骤203进行目的NAT;步骤204进行攻击检测;步骤205上层协议检查-对TCP协议首先进行攻击检测,然后查全状态表并根据结果丢弃或转发,对syn包在全状态表中未查到的,进行安全策略检查,根据结果丢弃/送代理/添加全状态表并转发;对UDP协议先查状态表,能查到的进行转发,查不到的进行安全策略检查,并根据结果决定是丢弃还是添加状态表并转发;对ICMP协议如果是差错包,直接转发,否则查状态表,能查到的进行转发,查不到的进行安全策略检查,并根据结果决定是丢弃还是添加状态表并转发。
步骤3应用代理支撑对匹配到的需要应用代理检查的数据包,将当前检查点和数据包同时送交TCP层。
步骤4应用代理从队列中获取数据包以及相关安全策略检查点,继续进行安全策略检查,并实行代理功能。
步骤5路由后做以下工作步骤501进行攻击检测;步骤502进行流量控制;步骤503进行源NAT。
在内核中数据包和当前策略匹配点传递的实现,是利用skb传递当前安全策略检查状态,通过协议栈专用通道传送数据包。


图1为本发明的内核一体化安全组件的结构图;图2为本发明的方法流程图对路由前数据包,根据防火墙开/关状态的流程,以及安全检查,并根据组播/广播策略对组播/广播包进行处理的流程。
图3为本发明的方法流程图对TCP数据包进行传输层的攻击检测,并根据策略树进行安全检查的流程4为本发明的方法流程图,对UDP数据包查询状态表判断是否存在虚连接,并根据策略树进行安全检查的流程5为本发明的方法流程图,对ICMP数据包查询状态表判断是否存在虚连接,并根据策略树进行安全检查的流程6为本发明内核协议栈一体化结构图具体实施方式
以下结合附图和具体实施例对本发明做进一步说明参见图1,包过滤、供给检测、应用代理等防火墙核心安全组件共存于操作系统内核中,在Ip_rcv调用点,Arp代理、全状态模块、策略树模块共同实现包过滤的功能,攻击检测和地址转换模块完成其相应功能,透明代理支撑则对skb进行修改,提过对TCP层的应用代理的支持;对直接转发的包进行路由查找后发出,对需要送交代理的包,经协议栈专用通道传送到TCP层,代理分析处理后发出;在Ip_output调用点,透明代理支撑对代理发出的包再次做修改后发出,攻击检测和地址转换模块再次进行操作,此外,流量控制模块实现包过滤对数据包流量的控制功能。
图2、图3、图4、图5说明了防火墙对数据包的主要处理流程。
参见图2,对路由前数据包,首先检查防火墙开/关状态,如果状态为关,直接按操作系统原有流程进行操作,否则开始基本的安全检查,并根据组播/广播策略对组播/广播包进行处理,然后根据收包网卡的区域属性,进行目的NAT,接下来调用攻击检测对网络层攻击进行探测,最后对传输层协议分别进行后续处理,分别如图3、图4、图5所示。
参见图3,对TCP数据包,首先对其进行传输层的攻击检测,然后分析其是不是syn包,如果不是直接查全状态表判断对其进行的操作,如果是,接下来查其源端口,判断是否是某些协议的动态连接,如果可能是则查状态表判断是否当前确实有相应的该协议的通讯,若存在即可放行,如果不是动态连接,则根据策略树进行安全检查,最后根据结果丢弃/转发数据包、或者通过专用通道送代理处理。
参见图4,对UDP数据包,先查状态表判断是否存在虚连接,如果存在则转发,如果不存在,则根据策略树进行安全检查,并根据结果丢弃/转发数据包,转发数据包时,同时添加状态表相应项。
参见图5,对ICMP数据包,如果承载的是差错返回数据,则直接转发,否则查询状态表判断是否存在虚连接,如果存在则直接转发,如果不存在,则根据策略树进行安全检查,并根据结果丢弃/转发数据包,转发数据包时,同时添加状态表相应项。
当数据包经过专用通道到达TCP层应用代理时,应用代理从其中抽取数据进行分析,并从skb中取得包过滤已经分析到的安全检查点,从而接着根据策略树进行应用层安全的检查工作,具体代理过程以及数据包发出流程在此不再赘述。
最后应当说明上述实施例仅用以说明本发明,而并非限制本发明的技术方案,尽管参照上述的实例对本发明已经进行了详细说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或者等同替换,因此,一切不脱离本发明的精神和范围的技术方案及其相关改进,均应涵盖在本发明的权利要求范围当中。
权利要求
1.防火墙内核安全组件一体化的方法,其特征在于对防火墙系统的设计,采用一体化构架的流水线方式处理的系统结构,一体化组织的安全策略,以及一条内核中数据包和当前策略匹配点的传输路径;对于一体化系统结构的实现,统一定义在操作系统内核的调用接口点,包过滤、攻击检测和应用代理根据功能目标,分别在最合适的接口点插入检查函数,相互之间可进行有效的协作;对一体化组织的安全策略的实现,使用从保护目标为根结点出发的树形结构组织安全策略,策略树的不同分支之间互斥,保证每次匹配都唯一确定一个子分支或叶结点,叶结点即表明防火墙应当采取的动作;包过滤对安全策略的检查最终结果若是送交代理分支,则代理可以继续从这个检查点向下进行匹配;策略树在内核中由各安全组件共享,当前检查点随数据包在协议栈中传递,使得检查可具有延续性。
2.根据权利要求1所述的防火墙内核安全组件一体化的方法,其特征在于防火墙进行数据包检查的方法包含以下步骤步骤1在底半队列中进行混合模式处理,判定当前数据包交网关还是网桥处理模块;步骤2在路由前做以下工作步骤201基本安全检查;步骤202组播广播处理;步骤203进行目的NAT;步骤204进行攻击检测;步骤205上层协议检查-对TCP协议首先进行攻击检测,然后查全状态表并根据结果丢弃或转发,对syn包在全状态表中未查到的,进行安全策略检查,根据结果丢弃/送代理/添加全状态表并转发;对UDP协议先查状态表,能查到的进行转发,查不到的进行安全策略检查,并根据结果决定是丢弃还是添加状态表并转发;对ICMP协议如果是差错包,直接转发,否则查状态表,能查到的进行转发,查不到的进行安全策略检查,并根据结果决定是丢弃还是添加状态表并转发。步骤3应用代理支撑对匹配到的需要应用代理检查的数据包,将当前检查点和数据包同时送交TCP层。步骤4应用代理从队列中获取数据包以及相关安全策略检查点,继续进行安全策略检查,并实行代理功能。步骤5路由后做以下工作步骤501进行攻击检测;步骤502进行流量控制;步骤503进行源NAT。
3.根据权利要求1所述的防火墙内核安全组件一体化的方法,其特征在于在内核中数据包和当前策略匹配点传递的实现利用skb传递当前安全策略检查状态,通过协议栈专用通道传送数据包。
4.根据权利要求1所述的防火墙内核安全组件一体化的方法,其特征在于对路由前数据包,首先检查防火墙开/关状态,如果状态为关,直接按操作系统原有流程进行操作,否则开始基本的安全检查,并根据组播/广播策略对组播/广播包进行处理,然后根据收包网卡的区域属性,进行目的NAT,接下来调用攻击检测对网络层攻击进行探测,最后对传输层协议分别进行后续处理。
5.根据权利要求1所述的防火墙内核安全组件一体化的方法,其特征在于对TCP数据包,首先对其进行传输层的攻击检测,然后分析其是不是syn包,如果不是直接查全状态表判断对其进行的操作,如果是,接下来查其源端口,判断是否是某些协议的动态连接,如果可能是则查状态表判断是否当前确实有相应的该协议的通讯,若存在即可放行,如果不是动态连接,则根据策略树进行安全检查,最后根据结果丢弃/转发数据包、或者通过专用通道送代理处理。
6.根据权利要求1所述的防火墙内核安全组件一体化的方法,其特征在于对UDP数据包,先查状态表判断是否存在虚连接,如果存在则转发,如果不存在,则根据策略树进行安全检查,并根据结果丢弃/转发数据包,转发数据包时,同时添加状态表相应项。
7.根据权利要求1所述的防火墙内核安全组件一体化的方法,其特征在于对ICMP数据包,如果承载的是差错返回数据,则直接转发,否则查询状态表判断是否存在虚连接,如果存在则直接转发,如果不存在,则根据策略树进行安全检查,并根据结果丢弃/转发数据包,转发数据包时,同时添加状态表相应项。
全文摘要
一种防火墙内核安全组件一体化的方法,防火墙各组件的开发往往是相对独立的,对用户而言也是割裂的几个部分。本发明首先构架应当一体化,在结构上不严格区分各组件间的差异;其次安全策略的配置和检查应当一体化,对用户而言配置是统一的,对系统而言检查工作时前后相承的,再次应当有一条完整的数据包和当前策略匹配点的传输途径,可以使数据包经过各个检查点并最终通过防火墙。对于一体化系统结构的实现,统一定义在操作系统内核的调用接口点,包过滤、攻击检测和应用代理根据功能目标,分别在最合适的接口点插入检查函数,相互之间可进行有效的协作等。
文档编号H04L12/24GK1604539SQ20041006518
公开日2005年4月6日 申请日期2004年10月29日 优先权日2004年10月29日
发明者蔡圣闻, 李论, 金毅, 齐竞艳 申请人:江苏南大苏富特软件股份有限公司, 南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1