摘 要 随着网络技术的不断发展,社会进入了一个信息爆炸的时代,世界也由于网络而变小,人们通过各种技术和工具使交流突破了空间的限制。在网络技术发展与普及的同时,网络安全问题引起了人们的广泛关注。因此,研究并开发出一种能够有效地实时捕获网络信息的系统具有极其重要的意义。基于这一情况,本论文针对网络数据的捕获与数据包信息分析等问题进行了深入的探讨和研究。本论文逐一介绍了信息捕获中的相关技术及需求分析,在系统设计中对数据包捕获模块、解码数据包模块和数据库信息模块的实现进行了详细讲述。通过运用WinPcap开发包实现网络数据包的捕获,利用TCP/IP 协议的封装理论和自下而上的分析实现了数据包信息的分析,并且将分析出来的信息存入数据库。另外,还能实现一些功能,如对指定的IP地址进行数据包的捕获,对捕获结果进行显示等。
关键词:WinPcap;数据捕获;信息分析;局域网 The Design and Implementation of LAN Information Capture Software Abstract As development of the network and technology, the society comes into a age of information explosion. Due to the network, the world has become smaller, and people use all kinds of technologies and tools to break through the limitation of communication. The network security has been widely concerned followed by the development and universal of the network technology. Therefore, it is great significance that an effective real-time interception network information system is studied and developed. Based on this situation, this thesis in-depth studies to capture the network data and so on. Besides, it introduces relative technology and the needs information capture. The realization of the data capture module, data packet decoded module and database information module is displayed for detail in the system's design. The network data packet is captured through WinPcap, some functions has been realized, such as network data packet capture, data packets of information analysis by using TCP / IP protocol encapsulation theory and bottom-up, and will analyze the information stored in the database. Simultaneously, this software would also increases some functions, such as data packet capture by the IP address, make the results and statistics,display the results of data packet capture and so on.
Key words: WinPcap; data capture; information analysis ; LAN 本课题研究的相关技术及方法 网络数据捕获技术是获取信息的关键技术,它通过监听技术,过滤技术获取原始数据,根据TCP/IP分层理论进行层层拆解,提取相关协议中的信息。本毕业设计主要通过使用Winpcap开发包,在VC++环境下编写出了一款简单的软件对数据包信息按TCP协议类型、UDP协议类型和特定IP地址进行分类捕获,捕获出所需要的敏感信息,并且将捕获出来的信息写入数据库。
功能需求 随着个人计算机和互联网的普及,越来越多的人开始使用网络这个媒介来发送,接收信息,计算机网络给人们生产和生活带来了巨大的便利。但是由于网络是一个面向大众的开放系统,对数据信息的保密和系统的安全性考虑得并不完备,存在着许多的安全隐患。而有的人,就利用这些隐患,通过网络来发送一些包含色情,反动等不良内容的信息,达到扰乱正常社会秩序的目的。网络的安全形势日趋严峻。因此,现在在Internet安全隐患中扮演重要角色之一的网络数据抓包软件受到越来越大的关注。 本软件的设计就是为了达到基本的维护网络安全的作用,对网络上传输的数据进行捕获,然后从中得到所有的网络数据包,并对其进行简单的分析操作。在网络入侵取证系统中,对网络上传送的数据包进行有效的监听即捕获包是目前取证的关键技术,只有进行高效的数据包捕获,网络管理员才能对所捕获的数据进行一系列的分析,从而进行可靠的网络安全管理。 IP是TCP/IP协议族中最为核心的协议。所有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输。这些数据类型中又以TCP和UDP两种数据类型为多数。所以本软件需要设计出按TCP协议类型和按UDP协议类型来过滤网络中的数据。同时本软件还还应当具有一种过滤功能,那就是当我们知道某个IP地址发送的数据包信息都是属于一些不良,反动等等内容的信息,那么,我们可以通过在软件上输出这台主机IP地址,来过滤从这台主机上发送的所有TCP和UDP协议类型的数据。从而达到信息过滤的要求。
性能要求 由于本设计是安装在个人电脑上,所以要求用户界面简洁,友好,方便使用和操作。 网络上数据包的捕获是入侵检测系统的基础,关键是要保证高速的抓包和低的丢包率。一方面,网络检测部分的数据源是网络上的数据包,需要经过捕获后方可以提交给分析系统;另一方面,捕获数据包效率的高低直接影响着网络探测部分的性能的好坏,如果发生丢包现象,则有可能丢掉的包就是攻击包。 在保证高速的抓包和低的丢包率的同时,要还要求程序能有较强的稳定性。一款好的信息过滤软件,都是将在一个长时间工作的环境中运行。如果不能保证较强的稳定性的话,那么软件对信息过滤的效率和功能有很大的局限性,对数据信息过滤就是失败的。那么这款软件就不会具备同其他同类似软件的竞争力,更不会有市场,那么它就注定成为一款失败的软件。 试想一下,假如,当用户使用这款软件时,软件占用了太多的系统资源而导致用户对电脑的其他操作都很难进行,那么,谁还会用这款软件呢?所以,该软件还应该具备一种特点就是:低的系统资源占用率。
功能概述 通过前面的叙述可以知道,这款软件具有的功能,那就是:能够分别捕获局域网中的TCP协议类型数据,UDP协议类型数据和从某一特定的IP地址发送出来的TCP协议类型数据和UDP协议数据类型。并且,将这些捕获出来的数据包的基本信息存入到数据库中,提供给网络管理员使用和进一步的分析。
本系统包括三个基本模块,分别是数据包捕获模块,数据分析模块和数据库模块。其中数据包捕获模块的功能是:利用Winpcap控件,通过网卡设备从网络中捕获数据包;数据分析模块的功能是:主要实现数据的解析,从网络适配器中捕获到的数据的为原始数据(raw data),这些原始数据为二进制格式,必须转化为能比较好明白的格式,这就要求将这些原始数据能按照网络数据传输的具体格式来保存,主要为了能较好的读懂相关的信息,以便使用者分析;数据库模块的功能是:经过前两个模块处理后的数据,现在已经转化成了对我们有用的信息了,而这些信息不可能一直让他存放在内存中,那么就需要在数据库中建立相应的表,把这些信息存贮在这些数据库表的相应列名中,以便使用者处理、使用。
目 录 1 引言 1 1.1 课题背景及意义 1 1.2 本课题研究的相关技术及方法 1 1.3 VISUAL C++ 6.0 1 1.4 WINPCAP简介 2 2 基于信息捕获的相关理论基础 4 2.1 TCP/IP协议 4 2.2 数据封装与分用过程 6 2.3 IP协议 7 3 需求分析 9 3.1 功能需求 9 3.2 性能要求 10 4 局域网信息捕获器的设计 10 4.1 功能概述 10 4.2 系统功能模块的设计 11 4.2.1 数据包捕获模块 11 4.2.2 数据分析模块实现 13 4.2.3 数据库模块的实现 16 4.3 用户界面模块 19 5 局域网信息捕获测试和测试结果 20 5.1 测试环境 20 5.2 测试结果 20 (毕业设计) 结 论 22 参考文献 23 致 谢 24 声 明 25 |