浅谈Windows的防火墙设计与实现论文
0引言
防火墙是建立在网络外部环境与计算机系统之间的防护措施,其可以对网络进行访问控制,将非用户允许的网络入侵行为给予阻止和屏蔽。本文首先对Windows防火墙的功能、种类进行介绍,分析目前较为流行的Windows防火墙方案,并选择其中一种较为理想的方案进行设计,最后完成对系统的主控模块和数据包过滤的实现。
1Windows防火墙概述
1.1基本功能介绍
Windows防火墙的基本功能概括为其是在计算机网络中对数据流的可信度在Windows操作系统中进行传输控制。首先,建立起计算机网络安全策略;其次,对网络通信数据进行扫描,将违反网络安全策略的行为给予过滤;然后,防火墙具有通信端口管理功能,对暴露在网络中的计算机危险端口在其不使用的过程中给予关闭,防止不法分子对网络用户进行攻击。
1.2防火墙种类
防火墙可根据技术发展历程进行划分,划分为包过滤型、代理型和检测型防火墙。
包过滤型防火墙是基于网络层与传输层中的识别和控制数据包发送方及接收方的护地址,并对IP地址进行分析,对来自未知护地址的数据包进行过滤。包过滤型防火墙配置简单,处理速度快,但是其无法分析应用层协议,无法规避系统漏洞风险,防火墙功能有限。
代理型防火墙是建立在互联网与局域网之间的防护措施,互联网络数据进入局域网络前要经过防火墙的转发,防火墙在应用层进行访问控制,对危险数据包不予以转发。代理防火墙可以对网络应用层、传输层、网络层的特征进行检测,但其处理速度较慢,无法实现较大规模的网络并发连接。
检测型防火墙是改变传统被动式防护方式,主动检测网络通信书包,在用户访问互联网时,用户端与服务器端相互通信,检测型防火墙针对通信数据包的状态变化判断通信数据包中是否包括危险信息并进行防护。
2系统设计
2.1系统功能结构
防火墙功能可实现网络数据包的过滤、应用程序的控制、网络日志的记录和根据用户需求设置网络过滤规则。
本文利用w insock2 SP工技术实现对Windows防火墙的构建,w insock2 SP工技术能够将Windows系统应用程序和防火核心层驱动程序之间建立通信连接,在防火墙保护下的Windows用户进行网络应用要通过防火墙实现,防火墙可对网络应用层上的数据包进行截获、分析和处理,winsock2SP CPU占用率较小,同时可保证所截获的数据包的完整性。Windows防火墙功能上划分两大板块,一是主控部分,主动部分是对防火墙自身进行管理和监控,其分析冲突检测和系统监控两个模块,冲突检测可对防火墙规则库中的规则进行冲突检测,保证规则库的规则为最新的,同时系统监控模块保证防火墙的可用性与完整性。另一部分是防火墙功能实现模块,其中包括虚拟设备驱动模块、数据包过滤模块、内容过滤模块和流量监控模块。
2.2模块设计
根据防火墙设计方案,要实现基于Windows网络数据包的过滤,对应用程序控制和网络操作监控,防火墙设计包括:虚拟设备驱动模块、数据包过滤模块、内容过滤模块、流量监控模块、冲突检测模块和系统监控模块。
虚拟设备驱动模块:虚拟设备驱动模块是负责对网络数据包的'封装和截获,其与Windows底层网络设备协议驱动进行会话,分析网络数据包的流量与危险性。
数据包过滤模块:数据包过滤模块将所采集的网络数据包与数据包过滤规则进行比对,将过滤规则内包含的数据包进行处理,并将允许通过的数据包提交给内容过滤模块进行进一步的分析,同时为流量监控模块提供网络流量分析。
内容过滤模块:内容过滤模块将经过数据包过滤的允许数据包进行组装取证,再与内容中过滤库中的规则进行比对,将内容过滤规则内包含的数据进行处理,将允许通过的数据提供给流量监控模块进行流量分析。
流量监控模块:流量监控模块对网络数据流量数据进行统计,该功能模块可对不同层次的数据包统计流量,并记录在Windows日志文件中,可通过流量监控数据对网络数据包进行特征提取、审计分析。
冲突检测模块:冲突检测模块是对于相应规则发生冲突时的检测,包括数据包过滤规则、内容过滤规则。
系统监控模块:系统监控模块是对整个系统中的各个模块的功能状态进行监控,如果某一个功能模块被非法关闭则会发出警告,并提醒开启该模块。
3系统实现
3.1虚拟设备驱动模块实现
虚拟设备驱动模块是连接计算机网络底层与上层的服务模块,通过NDIS-HOOK技术对网络中的数据包进行截获和过滤。采用SPIHOOK与防火墙控制规则共同构建过滤模块,首先,获取NDISSYS在内存中的基地址;将具有特定功能的封包、发包函数替换系统标准NDIS库中的函数;其次,获取当前系统进程信息;然后,初始化调用Windows协议驱动程序;第4,处理协议缓冲区数据包并解析协议并与控制规则进行比较,实现与上层模块的通信。
3.2数据包过滤模块实现
数据包的过滤是防火墙最基本的过滤方式,其对数据包的IP,TCP等的包头信息进行提取,分析包头字段,再对比用户所定义的数据包过滤规则,如果符合规则,则允许访问网络,如果不符合规则,则拒绝访问。
3.3内容过滤模块实现
内容过滤模块的实现是对网络应用层的内容进行检测,首先,初始化内容过滤表和过滤方式,初始化协议栈缓冲区;其次,加载系统W S2 35D LL程序,取得SP工服务地址,获取Winsock缓冲区数据;然后,对数据包进行解析,通过HTTP过滤规则、FTP过滤规则、SM TP过滤规则对数据包内容进行过滤。
3.4流量监控模块实现
流量监控模块是实现不同时间段的网络访问统计,首先,初始化流量统计规则列表,获取当前活动进程D、端口号或者是内存中的地址;其次,为每个活动进程设置计数器,监测每个数据包的状态、流向、记录进程的连接状态;然后,创建子线程,用于数据包的统计,如果流量超过预设流量则隔断进程,并记录流量日志,如果没有超过预设流量则进入防火墙虚拟设备驱动模块,通过ND IS HOOK解析数据包,解析判断如果数据包内容违反规则,则记录数据包的源1P ,大小、时间等到日志记录中,如果没有违反规则,则SPIHOOK记录所有数据包的源P、源端口、目标端口、协议类型、大小、进程级别、时间、接收状态等,同时在日志中记录所有结果。
3.5冲突检测模块实现
在防火墙规则库中有大量的控制访问限制,如果要对规则库添加新的访问控制,会出现新规则与老规则冲突的问题。因此,冲突检测模块可对新规则与老规则进行比对分析,发现新规则与老规则冲突后,针对规则的完善性以规则最优原则合并规则,并删除失效规则。
3.6系统监控模块实现
系统监控模块是保障Windows防火墙整体运行安全及完整的监控模块,当防火墙系统出现部分功能被非法关闭问题时,系统监控模块会发出提示,并提示重启防火墙或者是修复防火墙。系统监控模块实现是对防火墙各项功能的完整性进行检测,根据用户设置予以监控保护。
4结束语
防火墙是保护网络通信的基础,本文利用winsock2 SP工技术实现对Windows防火墙的构建,主要实现对网络数据包的截获、分析与处理,该防火墙具有防御规则添加、删除等功能,具有良好的扩充性。防火墙实现对Windows系统的保护是根据防御规则完成基于网络访问护地址和端口的数据包进行过滤,与访问控制。
【浅谈Windows的防火墙设计与实现论文】相关文章:
浅谈防火墙在局域网中的部署与实现论文10-21
Windows软件防火墙实现技术简述服务器教程 -电脑资料01-01
浅谈设计速写论文04-24
浅谈学案设计论文05-16
浅谈跨存储数据迁移技术与实现论文10-27
浅谈少数人权利的实现论文10-20