包过滤型个人防火墙软件开发毕业设计论文

包过滤型个人防火墙软件开发毕业设计论文

ID:5399914

大小:521.50 KB

页数:36页

时间:2017-12-09

包过滤型个人防火墙软件开发毕业设计论文_第1页
包过滤型个人防火墙软件开发毕业设计论文_第2页
包过滤型个人防火墙软件开发毕业设计论文_第3页
包过滤型个人防火墙软件开发毕业设计论文_第4页
包过滤型个人防火墙软件开发毕业设计论文_第5页
资源描述:

《包过滤型个人防火墙软件开发毕业设计论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、包过滤型个人防火墙软件开发毕业设计论文1引言1.1课题背景与意义随着网络在各领域应用的越来越广泛,网络安全问题得到了更多的关注。计算机病毒攻击可以导致电脑系统瘫痪;而木马和黑客攻击可致使重要信息被窃取,造成不可估量的损失。所以人们开始寻求如何能在电脑和网络间添加一种可靠保护体系。防火墙就此应运而生。顾名思义,防火墙能够在计算机和网络间形成一道过滤屏障,保证被认可的行为顺利执行,而危险行为则被屏蔽。从而很大程度上增加了网络的安全性。1.2课题目标现在防火墙的花样与种类繁多,让人眼花缭乱。但是防火墙的主要功能是防止外部

2、网络的攻击以达到保护主机的目的。哪些未知的网络IP可能对主机产生攻击可能是未可知的,只有试验过才知道。所以现在防火墙一般与防病毒软件配合使用。这样才能安全的保护主机。实现的主要的核心功能如下定义:(1)根据应用程序访问规则可对应用程序连网动作进行过滤;(2)对应用程序访问规则具有自学习功能;(3)可实时监控、监视网络活动。1.3课题的研究方法本课题由两大模块构成,分别为DLL模块和EXE模块。首先利用Winsock2SPI技术建立winsock钩子用来截获winsock调用从而拦截TCP/IP封包,并做相应处理。然

3、后设置控管规则访问控制,通过控管规则的检查认证,确定socket连接是否允许通过。在此之后是TCP/IP的封包分析,利用TIP/IP的封包结构分析截获的数据,提取需要的数据。这些封装在DLL里面【1】。EXE模块主要是用户页面的制作。这里介绍与DLL模块第34页共37页通信的地方。EXE中与DLL直接通信的小模块主要有两个。一个是完成应用程序初始化的类CPropertyApp,它继承自CWinApp,是EXE的入口,其实里面封装了WinMain函数;另一个是主窗口模块CMainFrame,这个主窗口并不是EXE显示

4、出来的那个属性页窗口,而是一个隐藏的窗口,它继承自CMrameWnd,是一个无模式窗口,他隐藏显示,充当接受机,用来接受DLL及其他模块发送过来的消息,然后对消息进行相应的处理。每一个连网的程序连网之前都会建立一个Socket连接。这时钩子程序就会起作用,把截获的底层服务进行“过滤”,及先调用自定义的函数再转给下层服务提供者函数【2】。本文将这一层实现封包过滤的,把规则与功能写到这一层。本层的实现是本课题的核心。第34页共37页1WINSOCK2SPI编程技术Winsock2是WindowsSockets的2.0版

5、本,在此之前的版本是1.1。与1.1版本相比,2.0版本引入了一种新的叫做SPI的编程接口。利用这种技术可以在Socket中插入一曾层,从而可以完成诸如扩展TCP/IP协议栈,网络安全控制等功能,所以这是一个非常强大而且有用的接口,下面介绍这种编程技术。1.1WINSOCK2SPI基础Winsock是为上层应用程序提供的一种标准网络接口,上层应用程序不用关心Winsock实现的细节,它为上层应用程序提供透明的服务。Winsock2引入的一个新的功能就是打破服务提供者的透明,让开发者可以编写自己的服务提供者接口程序,

6、即SPI程序。SPI以动态链接库的形式存在,它工作在应用层,为上层API调用接口函数【3】。Winsock2是一个接口,不是一个协议。作为接口,它只能发现和利用底层传输协议完成通信。自己编写的SPI程序安装到系统之后,所有的Winsock请求都会发送到这个程序并由它完成网络调用。由于系统提供的SPI已经可以完成网络传输功能,所以自己编写的SPI没有必要重新编写这部分功能。一般可以直接调用系统函数完成网络传输,这样工作的效果就是“钩子程序。Winsock2SPI除了有完成网络传输的传输服务提供者,还有提供友好名称服务

7、的名字空间服务提供者。传输服务提供者能够提供建立通信、传输数据、流量控制和错误控制等服务。名字空间服务提供者把一个网络协议的地址属性和一个或多个用户友好名称关联起来,这样可以起用与协议无关的名字解析方案。1.2传输服务提供者传输服务提供者又分为基础服务提供者和分层服务提供者。基础服务提供者和分层服务提供者都开放相同的SPI接口,所不同的是基础服务提供者位于提供者的最底层。所以编写基础服务提供者和分层服务提供者基本相同。但安装是却需要将基础服务提供者安装在服务提供者加载顺序链的最底端,而分层服务提供者则根据需要分布在

8、顺序链的中间。第34页共37页1.1开发平台与开发工具开发平台如题说明,以Windows平台为主,重点讨论开发工具的选择。根据不同的工程选择不同的开发工具,可以有效地提高工作效率。不同的开发工具各有各的优点同时又各有各的不足,在开发中要扬长避短。目前常用的Windows开发工具有VS5.0/6.0、VS.net(包括VB、BC、VFP、VJ、C#等一组开发工

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。