- 1、本文档共52页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于局域网的数据包的截获与分析
目 录
1 绪论 1
1.1选题背景 1
1.2研究的目的和意义 1
1.3系统开发的目标 1
1.4系统的开发方法 2
1.5发展现状 2
2 方案论证 3
2.1 网络通信原理及协议 3
2.2 WINSOCK2原始套接字技术 4
2.3数据库技术 5
2.4系统的运行环境 6
3系统分析 7
3.1可行性分析 7
3.2系统操作流程图 7
3.3 需求分析 8
3.4 系统E-R图 9
4 总体设计 10
4.1 总体功能图 10
4.2 系统流程图 11
5 详细设计 12
5.1 数据库的物理结构 12
5.2 系统界面设计 12
5.3 数据包截获的设计 13
5.4 数据分析功能设计 13
5.5 主机查询功能设计 14
6 编码与实现 15
6.1数据库连接的实现 15
6.2系统功能的实现 16
6.2.1登陆界面实现 16
6.2.2主界面实现 19
6.2.3根据截获规则数据包的截获 21
6.2.4数据包的分析 24
6.2.5数据分析记录和删除 33
6.2.6主机查询 41
6.2.7清除记录 46
7 结束语 48
参考文献 49
致谢 50
基于局域网的数据包的截获与分析
1 绪论
1.1选题背景
目前,社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。随着经济文化水平的显著提高,人们对生活质量以及工作环境的要求也越来越高。信息作为现代社会中赖以生存的精神食粮,越来越受到重视,大量的信息不断涌现在社会的各个角落,无论是生活还是工作,信息作为一项重要的财富,使得有效的安全性成为一种必须。因此,由各种信息的安全问题也就顺理成章的提上了日程[1]。
随着的飞速发展,安全逐渐成为一个潜在的巨大问题。安全性是一个涉及面很广泛的问题通过对数据包的分析,我们可以判断通信双方的操作系统、网络信息流量、经过的路由、 数据包的大小,以及数据包的内容等等,并且对拦截下来的数据包进行分析,所得到的分析结果作为入侵检测系统的源数据,是入侵检测的重要组成部分。Winsock原始套接字技术Winsock原始套接字技术国内在创建了原始套接字后,需要通过setsockopt()函数来设置IP头操作选项,然后再通过bind()函数将原始套接字绑定到本地网卡。为了让原始套接字能接受所有的数据,还需要通过ioctlsocket()来进行设置,而且还可以指定是否亲自处理IP头。至此,实际就可以开始对网络数据包进行了,对数据包的获取仍象流式套接字或数据报套接字那样通过recv()函数来完成。但是与其他两种套接字不同的是,原始套接字此时捕获到的数据包并不仅仅是单纯的数据信息,而是包含有 IP头、 TCP头等信息头的最原始的数据信息,这些信息保留了它在网络传输时的原貌。通过对这些在低层传输的原始信息的分析可以得到有关网络的一些信息。由于这些数据经过了网络层和传输层的打包,因此需要根据其附加的帧头对数据包进行分析
系统采用ODBC连接SQL Server#importC:\Program Files\Common Files\System\ado\msado15.dll\
no_namespace\
rename(EOF,ADOEOF)\
rename(BOF,ADOBOF)
(4) 建立一个_ConnectionPtr对象
导入ADO后,就可以创建_ConnectionPtr对象,其对象的作用是连接数据库。如:_ConnectionPtr m_pConnection;
(5) 建立一个_RecordsetPtr对象。
_RecordsetPtr是执行Sql查询语句返回结果保存的对象,含有sq1语句执行后产生的表。在_RecordsetPtr对象中都含有一个游标,可以用来指向记录集中的任何一个具体的行。Sql执行完成后,游标指向第一行的前面的一个位置,调用_RecordsetPtr的movenext()方法就可以游标到下一行记录。当然,_RecordsetPtr对象的游标的移动方式和execsql()方法执行的参数有关。
(6) 关闭_RecordsetPtr和_ConnectionPtr对象。
这三类对象都有close()方法,使用完对象后进行关闭是一种好的代码编写习惯,这样对象所占有的资源将立即得到清理和释放。
(7) 异常处理
数据库出现错误可能涉及到脏数据的问题,使得数据的正确性不能得到保证。一般的异常处理。
2.4系统的运行环境
系统对运行的环境的要求:
硬件平台:CPU:赛扬2.4G RAM:B,HD:0GB
软件平台:操作系统:WindowsXP Professional
数据库:SQL server 2000(个人版)
开发工具:M
文档评论(0)