题目 Windows XP包过滤防火墙的设计与实现
论文摘要
当今时代是飞速发展的信息时代计算机与信息处理技术日渐成熟。随着Internet和计算机网络技术的蓬勃发展网络安全问题现在已经得到普遍中重视。网络防火墙系统就是网络安全技术在实际中的应用之一。本设计实现的防火墙采用IP过滤钩子驱动技术过滤钩子驱动是内核模式驱动它实现一个钩子过滤回调函数并用系统提供的IP过滤驱动注册它 IP过滤驱动随后使用这个过滤钩子来决定如何处理进出系统的数据包。本防火墙由以下几个模版组成过滤规则添加模块、过滤规则显示模块、过滤规则储存模块、文件储存模块、安装卸载规则模块 IP封包过滤驱动功能模块。用户只需要通过主界面菜单和按钮就可以灵活地操作防火墙有效地保护Windows系统的安全。
关键词 防火墙过滤钩子过滤驱动包过滤
Design and Implementation of Windows XP Packet Filter Firewall
Abstract
The present era is the rapid development of the informationage,computer and information processing technology is reachingmaturity.With the Internet and the rapid development of computer networktechnology, network security issues are now widely in importance.Networkfirewal l network security technology system is one of the appl ications inpractice.The design and implementation of firewal l IP fi lter hook drivertechnology, fi lter hook driver is a kernel-mode driver,which implements a fi lterhook cal lback function,and use the IP system fi lter driver to register it, IP fi lterdriver then use this fi lter to determine how to hook processing data packetsout of the system.The firewal l component by the fol lowing template: fi lteringrule module, display module fi lter rules, fi lter rules for storage modules, fi lestorage module, the module instal led uninstal l rules, IP packet fi ltering drivermodules.Users only need to interface through the main menus and buttonshave the flexibi l ity to operate the firewal l , effectively protect Windows-basedsystem.
Key Words:Firewal l fi lter hook Fi lter Driver packet fi ltering
第2页
目 录
1 引言
1 .1 课题背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
1 .2 本课题研究意义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
1 .3 本课题研究方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2防火墙概述
2.1 防火墙的定义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
2.2 防火墙的基本策略. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
2.3 包过滤防火墙. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
2.3.1数据包. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
2.3.2包过滤防火墙的工作原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
3开发工具
3.1 Visual C++6.0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
3.2 Visual
SourceSafe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
4防火墙系统构成
第3页
4.1 需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
4.2 设计思路. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
4.3 功能模块构成. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
4.4 功能模块介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
4.4.1过滤规则添加删除功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
4.4.2过滤规则显示功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
4.4.3过滤规则存储功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
4.4.4文件存储功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
4.4.5文件载入功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
4.4.6安装卸载功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
4.4.7 IP封包过滤驱动功能模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
5防火墙设计
5.1 程序关键类
5.1 .1应用程序类CFireWal lAPP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
5.1 .2主框架类CMainFrame. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
第4页
5.1 .3文档类CFireWal lDoc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
5.1 .4视图类CFireWal lView. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
5.1 .5 _RuleInfo类. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
5.2 详细设计
5.2.1主界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
5.2.2添加过滤规则. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
5.2.3删除过滤规则. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
5.3 驱动程序设计
5.3.1简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
5.3.2结构图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
5.3.3该驱动的优点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
5.3.4本程序的驱动设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
结 论.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
致 谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
第5页
Windows XP包过滤防火墙的设计与实现
1.1课题背景
防火墙是一种隔离技术是一类防范措施的总称利用踏实的内部网络与Internet或者其他外部网络之间相互隔离通过限制网络互访来保护内部网络。防火墙是建立在内部网络与外部网络之间的唯一安全通道简单的可以只用路由器实现复杂的可以用主机甚至一个子网来实现它可以在IP层设置屏障也可以用应用软件来阻止外来攻击。通过制定相应的安全规则可以允许符合条件的数据进入同时将不符合条件的数据拒之门外这样就可以阻止非法用户的侵入保证内部网络的安全。
1.2本课题研究意义
随着计算机技术和网络技术的发展计算机网络给人们带来了很多便利与此同时网络安全的问题也伴随着网络技术的发展而日趋严重。使用防火墙能很好的提高系统的安全性减少系统收到网络安全方面的威胁。本毕业设计选择开
第6页
发一个Windows下的防火墙它能够对网络IP数据包按照用户的设置进行过滤。通过此防火墙的开发锻炼了学生的实际动手能力对以后的学习和工作能力的培养具有重要意义。
1.3本课题研究方法
本设计使用VS2010开发运用IP过滤钩子驱动技术设计和实现的。本次毕业设计应首先分析防火墙的相关功能结合本次毕业设计的相关要求写出需求分析其次综合运用以前所学的相关知识在设计中以需求分析为基础写出系统开发计划、实现流程及相关问题的实现方法同时在开发设计与视线中要保存好相关的设计文档。
2 防火墙概述
2.1防火墙的定义
防火墙是指设置在不同网络如可信的企业内部网和不可信的公开网或网络安全域之间的一系列部件的组合。它可通过监测、限制、更改跨越防火墙的数据流尽可能地对外部屏蔽网络内部的信息、结构和运行状况以此来实现网络
第7页
的安全保护。
在逻辑上防火墙是一个分离器一个限制器也是一个分析器有效地监控了内部网和Internet之间的任何活动保证了内部网络的安全。
防火墙是设置在被保护网络和外部网络之间的一道屏障实现网络的安全保护以防止发生不可预测的、潜在破坏性的侵入。防火墙本身具有较强的抗攻击能力它是提供信息安全服务、实现网络和信息安全的基础设施。
2.2防火墙的基本策略
按照美国国家计算机安全协会(NCSA)的建议制定安全计划必须包括服务访问策略和防火墙设计策略。服务访问策略应包括控制用户对某些Internet服务的访问。另外用户也需要限制访问的方式如PPP或SLIP。在建立服务访问政策时需要注意两个方式
1. 不允许从Internet上访问到用户的网络但是允许个别用户设定得到的网络访问有限Internet站点。但必须进行地址伪装
2. 允许有限的从Internet上访问到公司网络如从Internet上只能访问公司的WWW和FT P服务器。
作为防火墙策略就是定义实现服务访问策略的具体规则。在实现防火墙策
第8页
略时用户可以采用以下两个原则之一
1 . 除了允许的事件之外拒绝其他所有的事件。
2. 除了拒绝的事件之外允许其他的任何事件。
制定的策略是由一条条规则构成的防火墙的规则可分为三条链输入链、
输出链和转发链。
2.3 包过滤防火墙
2.3.1 数据包
数据包是指IP网络消息。 IP标准定义了在网上两台计算机之间大宋的消息的结构结构上一个包包含了一个信息头和应被传送数据的一段消息体。Linux中包含的IP防火墙机制3种IP消息类型 ICMP Internet控制消息协议 、UDP用户数据报协议和TCP传输控制协议 。所有的IP包头包含了源、目的IP地址、 IP协议消息类型。包头里根据协议类型还包括了不同的字段。 ICMP数据包包含了一个类型字段用来标识控制或状态消息类型。UDP和TCP包包含了源和目的服务端口号。
2.3.2 包过滤防火墙的工作原理
采用这种技术的防火墙产品通过在网络中的适当位置对数据包进行过滤
第9页
美国高防服务器提速啦专业提供美国高防服务器,美国高防服务器租用,美国抗攻击服务器,高防御美国服务器租用等。我们的海外高防服务器带给您坚不可摧的DDoS防护,保障您的业务不受攻击影响。HostEase美国高防服务器位于加州和洛杉矶数据中心,均为国内访问速度最快最稳定的美国抗攻击机房,带给您快速的访问体验。我们的高防服务器配有最高层级的DDoS防护系统,每款抗攻击服务器均拥有免费DDoS防护额度,让您...
御云怎么样?炎炎暑期即将来临,御云(royalyun)香港、美国服务器开启大特惠模式。御云是新成立的云服务提供商,主要提供香港、美国的云服务器,不久将开启虚拟主机业务。我们的香港和美国主机采用CN2 GIA线路。目前,香港cn2 gia vps仅7.9元每月起,美国vps仅8.9/月,续费同价,可叠加优惠,香港云服务器国内延迟一般在50ms左右,是搭建网站的最佳选择,但是请不要用于违法用途。点击进...
NameCheap商家如今发布促销活动也是有不小套路的,比如会在提前一周+的时间告诉你他们未来的活,比如这次2021年的首次活动就有在一周之前看到,但是这不等到他们中午一点左右的时候才有正式开始,而且我确实是有需要注册域名,等着看看是否有真的折扣,但是实际上.COM域名力度也就一般需要51元左右,其他地方也就55元左右。当然,这次新年的首次活动不管如何肯定是比平时便宜一点点的。有新注册域名、企业域...