以太局域网的监听检测原理与实现.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
以太局域网的监听检测原理与实现

PAGE PAGE 1 以太局域网的监听检测原理与实现 鄢鹏 王忠 (四川大学电气信息学院通信工程系,成都610065) 摘要: 以太局域网的监听检测软件可以监视网络的状态,并利用这些信息来分析网络性能等。由于监听工具能有效的截获网络上的数据,所以它也对网络信息安全造成极大威胁。还必须采用各种反监听的检测措施以保护网络信息安全。软件设计包括用户界面部分、数据包的捕获与过滤部分、监听检测部分、数据解码部分。在Visual C++.NET环境下开发实现。 关键词:网络安全;信息安全;监听;检测。 1 引言 计算机局域网和Internet的发展给个人、企事业单位带来了革命性的改革和发展。同时又要面对网络开放带来的数据安全的新挑战和新危险:网络的安全访问、黑客的攻击等。一旦网络安全问题发生,通常会造成严重的后果,1994年曾发生过黑客在众多的主机和骨干网络设备上安装了网络监听软件,利用它对美国骨干互联网和军方网窃取了超过100000个有效的用户名和口令。所以必须加强网络安全意识,并及早发现防范。特别是企业更应该加强网络的安全控制。计算机网络监听和检测软件就是在这种情况下而产生发展起来。 2 监听与检测概述 2.1监听概述 一个简单的监听程序的大体结构如图1所示,大体上来说,可以将监听程序分为两个组成部分: (1)内核空间部分:负责从网络重捕获以及过滤数据包。 (2)用户空间部分:负责处理用户界面的显示、协议分析,此外如果核心层没有进行过滤的话,还必须负责过滤部分工作。 图1 监听程序基本结构 监听的实施是有条件的,不可能在网络上的任意某一台主机装上监听软件,就可以看到整个的网络的状况。在以太局域网内,主机间的通信采用了广播机制。广播机制使得整个子网内的数据分组都将到达监听者的网卡接口。这样,只需要将某台主机的网卡设置为“混杂”模式,所有到达网卡的数据都将送给系统进行处理分析,就可以实施对整个网段内的监听。如果需要监听特定的数据,监听者必须在监听软件中设置过滤器。因为混杂模式下网卡式不会自己过滤数据。 图2、3是网卡的正常工作模式和混杂模式的比较示意图。 图2 正常网卡的工作流程图 图3 混杂模式下网卡的工作流程图 2.2检测概述 由于产生网络监听行为的主机在工作时总是不做声的收集数据包,几乎不会主动发出任何信息,所以,一直都没有很有效好的检测方法。常见的监听方法主要有以下四种。 (1)根据主机的反应时间:因为处在监听状况下的主机的负荷量会比较大,所以对任何请求的延迟都会比较大。 (2)检测主机上运行的进程:因为监听软件都有特定的进程在运行,不过网络监听软件太多,这种方法不一定有效。 (3)利用Ping模式进行监测:就是向被怀疑有监听系统的目标主机发送一个含有错误的MAC地址和正确的IP地址的数据帧。正确的IP地址使数据包可以到达主机,错误的MAC地址只有处在监听状况下的主机才可能接收。 3 程序的总体设计 先分析一下准备设计的程序需要实现的主要功能。 (1)友好的界面:便于与用户进行交互,用户可以方便的对程序进行操作。 (2)以太网的数据报捕获:直接读取以太网数据包,而不在高层获得IP包。使得到的数据信息更加完整,并且网卡需要工作在“混杂”模式。 (3)数据报的过滤:可以根据监听者的需要,过滤掉不需要的信息,只捕获想得到的信息,避免太多垃圾信息。 (4)数据报的解码:对数据包的包头进行分析,显示出包头的具体含义。使监听者很容易分析网络的状态等。 (5)监听检测功能:向网络中各个可疑主机发送检测数据包,检查对方是否正在监听。避免信息被窃取,维护网络安全。 可以看出,整个监听检测程序主要分为两大部分:程序驱动程序部分和应用程序部分。驱动程序工作在核心态,负责网络数据的接受和发送;应用程序工作在用户态,除了与驱动程序进行正常的通信外,还需要将有关信息显示出来,并提供过滤等操作。缓冲区由应用程序动态分配提供。程序的总体框架大致如图4所示。 图4 程序模块示意图 4程序的具体实现 4.1界面部分 利用微软基本类库(MFC),生成单文档视图窗口(MFC SDI)程序,用户可以利用这个窗口实时、清晰地看到捕获的数据包的简单统计信息和捕获到的数据包的较详细的解析信息。 在文档类中存储一些捕获的简单统计信息,捕获到的数据以及数据包的解析信息,而在几个视图类中分别显示这些信息。 ? 程序中的几个主要的视图类的介绍。 (1)CSstatistic View 负责显示一些简单的统计信息,比如一共捕获到多少个数据包。 ?(2)CListCapture View 用以列表的形式显示捕获到的数据包,当这个列表的某一个数据被选中时,对(CDataHierarchy View)视图进行更新,使他们显示当前这个被选中的数据包的详细解码信息。 ?(3)CDa

您可能关注的文档

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档