基于windis32技术实现网络通信监测

上传人:繁星 文档编号:40623102 上传时间:2018-05-26 格式:DOC 页数:6 大小:31KB
返回 下载 相关 举报
基于windis32技术实现网络通信监测_第1页
第1页 / 共6页
基于windis32技术实现网络通信监测_第2页
第2页 / 共6页
基于windis32技术实现网络通信监测_第3页
第3页 / 共6页
基于windis32技术实现网络通信监测_第4页
第4页 / 共6页
基于windis32技术实现网络通信监测_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《基于windis32技术实现网络通信监测》由会员分享,可在线阅读,更多相关《基于windis32技术实现网络通信监测(6页珍藏版)》请在金锄头文库上搜索。

1、基于基于 WinDis 32 技术实现网络通信监测技术实现网络通信监测【摘要摘要】 本文论述了网络通信监测的实现原理与实现过本文论述了网络通信监测的实现原理与实现过程,遵照国际标准化开放系统互联(程,遵照国际标准化开放系统互联(osi)七层体系结构,利用网)七层体系结构,利用网络驱动接口规范络驱动接口规范 windis32 v5.0 技术,实现了在应用层对数据链路技术,实现了在应用层对数据链路层的控制,完成了对网上流动数据帧的实时截获、解封与分析。层的控制,完成了对网上流动数据帧的实时截获、解封与分析。 【关键词关键词】网络分层网络分层 windis32 技术技术 网络信息截获网络信息截获 数

2、据帧数据帧 ndis网络适配器网络适配器 1前言前言 随着计算机网络技术的发展,各类网络随着计算机网络技术的发展,各类网络规模的扩大,远程访问的增加,虚拟专用网(规模的扩大,远程访问的增加,虚拟专用网(vpn)的出现和)的出现和internet 的普及,网络安全性已成为计算机网络领域一门重要的的普及,网络安全性已成为计算机网络领域一门重要的研究学科。研究学科。 网络监控是保障网络安全性的基本措施之一。网络网络监控是保障网络安全性的基本措施之一。网络监控,用于监测网上流动信息,并对网络信息给予适当控制。网监控,用于监测网上流动信息,并对网络信息给予适当控制。网络监控,可用于调试网络应用程序,判断

3、应用程序是否正确地发络监控,可用于调试网络应用程序,判断应用程序是否正确地发送或接收了数据包。网络监控,还可用于监视网络信息,杜绝不送或接收了数据包。网络监控,还可用于监视网络信息,杜绝不健康站点的不健康内容,维护网络环境。应用于安全防范,可监健康站点的不健康内容,维护网络环境。应用于安全防范,可监视我方信息内容、保障网络安全,截获情报、分析怀有敌意方的视我方信息内容、保障网络安全,截获情报、分析怀有敌意方的网站。在计算机网络上实施有效的攻击与保护,是网络监控技术网站。在计算机网络上实施有效的攻击与保护,是网络监控技术在在*上的重要发展方向之一。上的重要发展方向之一。 本文论述的网络通信实时监

4、测的实本文论述的网络通信实时监测的实现,是用于特殊目的的数据通信程序设计的突破口,是网络监控现,是用于特殊目的的数据通信程序设计的突破口,是网络监控技术的基础部分,其实现基于网络体系结构与技术的基础部分,其实现基于网络体系结构与 windis32 技术。技术。 2网络体系结构网络体系结构 现代计算机网络设计是按高度的结构化方式进现代计算机网络设计是按高度的结构化方式进行的,国际标准化组织(行的,国际标准化组织(iso)为更广泛的计算机互联制定了标准)为更广泛的计算机互联制定了标准化的开放系统互联(化的开放系统互联(osi)网络体系结构,如图)网络体系结构,如图 1 所示。所示。 osi 参考参

5、考模型用结构描述方法,即分层描述的方法,将整个网络的通信功模型用结构描述方法,即分层描述的方法,将整个网络的通信功能划分为七个部分(也叫七个层次)能划分为七个部分(也叫七个层次) ,每层各自完成一定的功能。,每层各自完成一定的功能。LoCalhoSt 由低层至高层分别称为物理层、数据链路层、网络层、由低层至高层分别称为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。两台网络主机之间进行通信传输层、会话层、表示层和应用层。两台网络主机之间进行通信时,发送方将数据从应用层向下传递到物理层,每一层协议模块时,发送方将数据从应用层向下传递到物理层,每一层协议模块为下一层进行数据封装,数据流

6、经网络,到达接收方,接着再由为下一层进行数据封装,数据流经网络,到达接收方,接着再由下而上通过协议栈传递,并与接收方应用程序进行通信。下而上通过协议栈传递,并与接收方应用程序进行通信。 在通在通用网络中,数据链路层由网络适配器实现,本文中网络通信监测用网络中,数据链路层由网络适配器实现,本文中网络通信监测的立足点在于数据链路层,基于电缆是固有的广播性介质,通过的立足点在于数据链路层,基于电缆是固有的广播性介质,通过对网络适配器的控制,实时截获与分析经过网络适配器的所有网对网络适配器的控制,实时截获与分析经过网络适配器的所有网上流动信息。上流动信息。 3windis32 技术技术 windis3

7、2 全称为全称为 win32 ndis(network driver interface specification)网络驱动接口规范,)网络驱动接口规范,用于开发用于开发 windows 产品,可在产品,可在 windows 9x 和和 windows nt 上直接上直接访问访问 ndis 媒体访问控制(媒体访问控制(mac)驱动接口。图)驱动接口。图 2 显示了显示了 windows网络驱动组件与网络驱动组件与 win32 ndis 结构组件:结构组件: 图图 2windows 网络驱动网络驱动组件与组件与 win32 ndis 结构组件结构组件 windis32 网络组件由四部分组成:网

8、络组件由四部分组成:ndis 适配器、适配器、pcandis5 ndis 协议驱动、协议驱动、w32n50 windis32 api dll、windis32 应用程序。应用程序。windis32 应用程序调用应用程序调用 w32n50.dll 动态动态链接库提供的链接库提供的 api 应用程序接口,通过应用程序接口,通过 ndis 协议驱动模块,实现协议驱动模块,实现对对 ndis 适配器进行的存取操作。网络驱动接口规范适配器进行的存取操作。网络驱动接口规范 ndis 的主要的主要特征是所有适配器相关驱动均由特征是所有适配器相关驱动均由 ndis 接口打包,例如,最底层接口打包,例如,最底层

9、ndis nic 驱动不能对网卡直接执行驱动不能对网卡直接执行 i/o,它通过,它通过 ndis 打包服务来访打包服务来访问硬件;高层问硬件;高层 windows ndis 网络组件使用网络组件使用 ndis 打包界面与适配打包界面与适配器相关驱动通信。只有器相关驱动通信。只有 ndis 协议驱动可以调用协议驱动可以调用 ndis 打包,访问打包,访问ndis 适配器。适配器。 windis32 应用程序接口函数包括:应用程序接口函数包括:w32n_openadapter(),打开一个已被命名的,打开一个已被命名的 ndis 适配驱动器,若适配驱动器,若操作成功,则生成一个面向适配器对象的操作

10、成功,则生成一个面向适配器对象的 windis32 适配器句柄,适配器句柄,这一句柄被随后多个在该适配器上操作的这一句柄被随后多个在该适配器上操作的 w32n_xxx 函数所用;函数所用; w32n_closeadapter(),关闭已打开的适配器句柄;,关闭已打开的适配器句柄;w32n_packetread(),数据帧读操作;,数据帧读操作;w32n_packetreadex(),数据,数据帧异步读操作;帧异步读操作;w32n_packetsend(),发送数据帧操作;,发送数据帧操作;w32n_packetsendex()、w32n_makendisrequest()等等。等等。 wind

11、is32技术使得从技术使得从 win32 应用层进行应用层进行 ndis 请求如同在一个内核模式的驱请求如同在一个内核模式的驱动器内部进行请求一样简单,并支持多个网络适配器同时打开,动器内部进行请求一样简单,并支持多个网络适配器同时打开,完成各自的信息发送与接收。完成各自的信息发送与接收。 4网络信息监测的实现网络信息监测的实现 网络信网络信息监测程序分为信息截获与信息分析两大部分,其中信息截获程息监测程序分为信息截获与信息分析两大部分,其中信息截获程序流程如图序流程如图 3 所示,采用多进程与多线程技术,完成数据的实时所示,采用多进程与多线程技术,完成数据的实时截获。截获。 其中网络适配器列

12、表通过读取系统注册表生成;网络适其中网络适配器列表通过读取系统注册表生成;网络适配器详细信息包括适配器型号、网络适配器物理地址、传输最大配器详细信息包括适配器型号、网络适配器物理地址、传输最大帧、传输速率以及机内标识符,通过函数帧、传输速率以及机内标识符,通过函数w32n_makendisrequest()获得。获得。 协议过滤部分是包括协议过滤部分是包括 pcausa 端端口的口的 pcandis5 协议驱动,协议驱动,bpf 过滤器是由过滤器是由 unix 环境到环境到 windows 的的模拟机制,为模拟机制,为 win32 应用程序提供了一种普通而又便利的机制,应用程序提供了一种普通而

13、又便利的机制,可过滤指定协议,由协议驱动执行,拒绝不想要的数据帧。支持可过滤指定协议,由协议驱动执行,拒绝不想要的数据帧。支持协议包括:传输控制协议协议包括:传输控制协议 tcp、互连网协议、互连网协议 ip、地址解析协议、地址解析协议arp、反向地址解析协议、反向地址解析协议 rarp、互连网控制报文协议、互连网控制报文协议 icmp、互连、互连网组管理协议网组管理协议 igmp、novell spx/ipx 协议协议 ipx、用户数据报协议、用户数据报协议udp、netbeui 协议、协议、appletalk 协议。协议。 信息分析部分利用已获知信息分析部分利用已获知的媒体访问控制协议,提

14、取出数据帧中的有效域值,如源主机物的媒体访问控制协议,提取出数据帧中的有效域值,如源主机物理地址、目的主机物理地址、帧长度等。并同时为每一被截获的理地址、目的主机物理地址、帧长度等。并同时为每一被截获的数据包打上时标,注上序列号,为下一步数据重组提供可靠依据。数据包打上时标,注上序列号,为下一步数据重组提供可靠依据。接收数据帧显示与信息统计结果范例如下:接收数据帧显示与信息统计结果范例如下: 包序列号:包序列号:0000000032 时间:时间:0005860470 msec 长度:长度:54/54 ethernet 目的:目的:00.40.05.39.a2.b0 源:源:00.00.b4.8

15、6.74.fa 类型:类型:0x0800 000000: 00 40 05 39 a2 b0 00 00 : b4 86 74 fa 08 00 45 00 .9.t.e. 000010: 00 28 26 03 40 00 20 06 : a3 25 64 64 64 7a 64 64 .(. .%dddzdd 000020: 64 65 04 06 00 8b 00 40 : bf 14 00 6c 24 b9 50 10 de.l$.p. 000030: 22 38 12 ea 00 00 : 8. 包序列号:包序列号:0000000033 时间:时间:0005860764 msec 长

16、度:长度:109/109 ethernet 目的:目的:00.40.05.39.a2.b0 源:源:00.00.b4.86.74.fa 类型:类型:0x0800 000000: 00 40 05 39 a2 b0 00 00 : b4 86 74 fa 08 00 45 00 .9.t.e. 000010: 00 5f 27 03 40 00 20 06 : a1 ee 64 64 64 7a 64 64 ._. .dddzdd 000020: 64 65 04 06 00 8b 00 40 : bf 14 00 6c 24 b9 50 18 de.l$.p. 000030: 22 38 de c6 00 00 00 00 : 00 33 ff 53 4d 42 1a 00 8.3.smb. 000040: 00 00 00 00 00 80 00 00 : 00 00 00 00 00 00 00 00 .

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号