基于数据包过滤技术的防火墙模型设计
- 格式:pdf
- 大小:539.08 KB
- 文档页数:1
基于防火墙技术为重心的网络安全体系架构熊亚蒙(广州工程技术职业学院 信息工程系 广东 广州 510900)摘 要: 近年来,随着网络的发展,网络安全问题也日益严重。
防火墙作为最早出现的使用量最大的安全产品,备受网络用户和网络研发机构的青睐。
重点讨论防火墙的概念、分类与功能,结合自己对防火墙技术的理解对防火墙技术进行阐述,并对防火墙网络安全体系架构的进行初步的研究。
关键词: 防火墙技术;网络;技术;安全;体系架构中图分类号:TP393 文献标识码:A 文章编号:1671-7597(2012)1120049-02类型的数据包通过。
ACL可以被配置为根据数据包报头的任何1 防火墙的概念部分进行接收或拒绝数据包,目前,这种过滤主要是针对数据防火墙实际上是一种隔离技术,它可以将内部网和公众访包的协议地址(包括源地址和目的地址)、协议类型和问网分开,是一种最重要的网络防护设备。
从专业角度讲,防TCP/IP端口(包括源端口和目的端口)来进行的。
因此,数据火墙是位于两个网络间,实施网络之间访问控制的一组组件集包过滤服务被人为是工作在网络层与传输层的边界安全机制。
合,它可以在两个网络通讯时执行的一种访问控制尺度,它允4.2 状态检测防火墙许安全的数据进入内部网,同时将有威胁的数据拒之门外。
最状态检测防火墙采用了状态检测包过滤的技术,是传统包大限度地减少恶意用户访问给网络信息带来的威胁。
防火墙的过滤上的功能扩展。
采用这种技术的防火墙对通过其建立的每目的是在网络连接之间建立一个安全控制点,通过允许、拒绝一个连接都进行跟踪,并且根据需要动态地在过滤规则中增加或重新定向经过防火墙的数据流,实现对进、出内部网络的服或更新条目。
状态检测防火墙在网络层有一个检查引擎,它截务和访问进行审计和控制。
获数据包从中抽取出与应用层状态有关的信息,并以此为依据2 防火墙的分类决定对该连接是接受还是拒绝。
防火墙有很多种形式,有的以软件形式运行在普通计算机4.3 代理服务型防火墙之上,也有的以固件形式设计在路由器之中。
防火墙包过滤技术分析[摘要] 随着计算机网络技术的突飞猛进,网络安全的问题已经日益突出地摆在各类用户的面前。
而防火墙已经成为一般企业用来保护自身网络安全的主要机制,因此对防火墙技术进行深入探讨是非常必要的。
防火墙技术主要分为包过滤和应用代理两类。
从数据包结构出发,分析包过滤技术,首先提出包过滤技术的核心问题;然后在分析传统包过滤技术缺陷的基础上,详细论述了包过滤技术的两种发展趋势。
[关键词] 防火墙包过滤动态包过滤深度包检测一、引言随着Internet的迅速发展,网络应用涉及到越来越多的领域,网络中各类重要的、敏感的数据逐渐增多;同时由于黑客入侵以及网络病毒的问题,使得网络安全问题越来越突出。
因此,保护网络资源不被非授权访问,阻止病毒的传播感染显得尤为重要。
就目前而言,对于局部网络的保护,防火墙仍然不失为一种有效的手段。
防火墙技术主要分为包过滤和应用代理两类。
其中包过滤作为最早发展起来的一种技术,其应用非常广泛。
所谓包过滤,就是对流经网络防火墙的所有数据包逐个检查,并依据所制定的安全策略来决定数据包是通过还是不通过。
包过滤最主要的优点在于其速度与透明性。
也正是由于此,包过滤技术历经发展演变而未被淘汰。
考虑包过滤技术的发展过程,可以认为包过滤的核心问题就是如何充分利用数据包中各个字段的信息,并结合安全策略来完成防火墙的功能。
二、包过滤防火墙工作原理包过滤防火墙工作在OSI网络参考模型的网络层和传输层,它根据数据包头源地址,目的地址、端口号和协议类型等标志确定是否允许通过。
只有满足过滤条件的数据包才被转发到相应的目的地,其余数据包则被从数据流中丢弃。
包过滤方式是一种通用、廉价和有效的安全手段。
之所以通用,是因为它不是针对各个具体的网络服务采取特殊的处理方式,适用于所有网络服务;之所以廉价,是因为大多数路由器都提供数据包过滤功能,所以这类防火墙多数是由路由器集成的;之所以有效,是因为它能很大程度上满足了绝大多数企业安全要求。
计算机光盘软件与应用
2010年第5期 Computer CD Software and Applications 软件设计开发
— 145 —基于数据包过滤技术的防火墙模型设计
肖 瑜,吕定辉
(濮阳职业技术学院,河南濮阳 457000)
摘 要:本文分三部分介绍了个人防火墙系统模型的设计。
第一部分介绍了数据包过滤模块的设计;第二部分进程管理模块实现了与Windows操作系统的任务管理器的“任务管理”部分的功能;第三部分端口扫描模块在Windows平台下使用套接口(SOCKET)技术实现了把本机作为客户端,把需要扫描的IP地址所在的机器作为服务器端端口扫描。
关键词:防火墙;套接口;内核;NDIS;过滤器
中图分类号:TP393.08 文献标识码:A 文章编号:1007-9599 (2010) 05-0145-01
Firewall Model Design against Data Package Filtering Technology
Xiao Yu,Lv Dinghui
(Puyang Vocational&Technical Institute,Puyang 457000,China)
Abstract:This three-part model describes the design of a personal firewall.The first part describes the design of packet filtering module;second part of the process management module with the Windows operating system Task Manager"Task Manager"section of the function;third part of the port scan module in the Windows platform using the socket(SOCKET)technology has put the machine as the client,need to scan the IP address of the host machine as the server-side port scan.
Keywords:Firewall;Socket;Kernel;NDIS;Filter
一、系统模块的划分
系统由数据包过滤模块、进程管理模块及IP地址扫描功能三大部分组成。
过滤模块是本系统工作的基础,在设计阶段充分考虑了系统在实际应用中的实际应用情况,设计了过滤规则的添加、修改,过滤数据包的实时性等,并详细描述了过滤钩子驱动的实现。
进程管理模块可以在本系统查看并结束相应非法进程。
客户端使用套接口技术实现了端口扫描功能。
三部分结合在一起组成了个人防火墙系统的完整功能。
二、过滤模块
(一)过滤模块的功能
内核中将操作系统的网络传输所有出入包,都流入到虚拟设备中,按照一定的规则进行处理数据包,即可完成数据包过滤功能。
程序的过滤模块主要应实现的功能包括:
添加过滤规则;删除过滤规则;保存过滤规则;加载过滤规则;卸载过滤规则;安装过滤规则;启动过滤;停止过滤。
本文采用过滤钩子技术获取数据包,因此应当首先加载过滤钩子驱动。
(二)过滤钩子驱动
NDIS(网络驱动程序接口)提供了一种通过建立过滤器钩子驱动过滤IP包的方法。
具体步骤是:在过滤器钩子驱动中建立一个普通的设备,通过IOCTL_PF_SET_TENSION_POINTER操作将其内核模式过滤钩子挂接到系统默认的IP过滤器驱动上,从而在其过滤钩子中实现完整的基于数据包的各种分析和过滤处理。
该法仅能对IP包进行过滤,其他的协议不会经过该过滤钩子进行处理。
下面对该步骤予以详细说明。
1.过滤钩子驱动的创建
首先由过滤器钩子驱动程序设置过滤器钩子回调函数,它是这类驱动程序的主体,通过系统提供的IP过滤器驱动注册这些过滤器钩子回调函数。
接着,IP过滤器驱动就可以使用过滤器钩子决定如何处理传入或传出的数据包。
当过滤器钩子驱动通过系统提供的IP过滤器驱动注册其过滤钩子(的入口点时,它给出了过滤器钩子的符号(可变)地址。
由于过滤器驱动程序并不提供过滤器钩子入口点的名称,因此,开发人员可以自由选择过滤器钩子名称。
一般地,应根据过滤器钩子函数的基本功能来命名[51]。
过滤器钩子对传入和传出的数据包做一些特殊处理。
首先是把数据包的特定信息和IP过滤器驱动提供给过滤器钩子的信息加以比较,以此决定下一步如何处理数据包。
其次,在过滤器钩子检测完数据包后,向IP过滤器驱动回复三种响应代码,通知IP 过滤器驱动如何对数据包进行处理数据包。
2.初始化和卸载过滤器钩子驱动
像所有的内核模式驱动程序一样,过滤器钩子驱动程序为驱动对象创建和初始化一个设备对象例程是某个系统对外提供的功能接口或服务的集合。
通过IP过滤器驱动注册驱动的过滤器钩子。
如果用户模式应用程序(非核心态工作模式)或高层驱动程序通过向下层过滤钩子驱动程序发送一个I/O控制请求设置过滤钩,则必须设置和输出一个控制设备的入口点。
当操作系统卸载过滤器钩子驱动程序时,卸载例程将函数中已创建的设备对象移走,而不是清除先前已注册的过滤器钩子。
3.设置和清除过滤器钩子
过滤器钩子驱动程序设置了过滤器钩子回调函数,并通知IP 过滤器驱动为每个传入或者传出的IP数据包调用这个钩子回调函数。
过滤器钩子有可能清除先前注册的钩子回调。
4.过滤器钩子的I/O控制
当应用程序或者上层驱动程序通过向过滤器钩子驱动程序发送I/O控制请求建立过滤器钩子时,驱动程序自动会响应例程,例程处理发来的I/O控制请求。
三、进程管理模块
(一)进程管理模块的功能
程序的进程管理模块主要应实现的功能包括:
1.获取本机正在运行的系统进程的名称、ID号等,并显示在列表框中。
2.删除某个进程:指定需要删除的进程的唯一标志号进行删除。
(二)进程管理的实现
1.获取和显示系统进程
首先使用函数给当前系统内执行的进程拍快照(Snapshot),也就是获得一个进程列表,该列表中记录着进程的ID、进程对应的可执行文件的名称等数据。
然后遍历快照中记录的列表。
可显示每个进程的可执行文件名和进程ID号等。
2.删除系统进程
在对一个进程操作前,必须首先取得该进程的进程句柄。
函数创建进程后会返回一个进程句柄,而对于一个已经存在的进程,只能使用固定函数来取得这个进程的访问权限,该函数打开一个存在的进程并返回其句柄。
四、基于套接口技术端口扫描模块的设计
端口扫描模块通过创建套接口、请求连接、套接口I/O状态查等一系列动作与其他IP地址建立连接。
主要实现的功能为:对单个IP地址的端口进行扫描;对IP段地址的特定端口进行扫描。
五、小结
本章描述了个人防火墙系统的设计模型。
用户可以根据基于钩子过滤技术的数据包过滤模块获得的数据和IP过滤器驱动提供给过滤器钩子的信息加以比较,以此决定数据包被如何被处理。
进程管理模块可以让用户更便捷的判断当前的进程是否合法,并决定是否继续或者中断当前进程。
使用套接口技术来扫描当前与用户主机进行通信的IP地址,设计了端口扫功能,描在一定程度上起到了更加全面的保护作用。