1、毕业设计文献综述 计算机科学与技术 基于 C#的网络嗅探器设计与实现 一 、前言部分 1 写作目的 随着网络技术的发展和网络应用的普及,越来越多的信息资源放在了互联网上,网络的安全性和可靠性显得越发重要。因此,对于能够分析、诊断网络,测试网络性能与安全性的工具软件的需求也越来越迫切。网络嗅探器 就是一种用于网络分析的好工具,且它 具有两面性,攻击者可以用它来监听网络中数据,达到非法获得信息的目的,网络管理者可以通过使用嗅探器捕获网络中传输的数据包并对其进行分析,分析结果可供网络安全分析之用。 于是编写一个网络 嗅探器就极其重要了。 2 有关概念、综述范围 网络嗅探器是一种网络分析工具,用于监听
2、流经网络接口的信息,网络管理员可以用它来分析数据包,而黑客可以用它来窃听数据。 网卡 的 混杂模式: 处于该模式的网卡能接受所有通过它的数据流, 无论 是什么格式,什么地址。网卡的混杂模式是 为 网络分析提供的 11。 Winpcap: 它是一个基于 Win32 的开源的包捕获驱动构架,它弥补了 windows 系统内核本身提供很少包捕获接口的劣势,可以直接捕获到链路层的数据帧,而且基于它开发的监听程序具有很好的移植性。 它 包含了一个内核级的数据包 过滤器 NPF,一个底层动态链接 ( Packet.dll )和一个高层的独立于系统的库 (Wpcap.dll)。 NPF 模块过滤数据包 ,
3、将数据包不做任何改动的传递给用户。 Packet.dll 模块提供了 Win32 平台下的捕获包的驱动接口 ,基于Packet.dll 编写的程序可以不经过重新编译就在各种 Win32 平台下实现捕获数据包 4。 网络监听: 一种监视网络状态、数据流程以及网络上信息传输的管理工具,它可以将网络界面设定成监听模式,并且可以截获网络上所传输的信息。也就是说,当黑客登录网络主机并取得超级用户 权限后,若要登录其它主机,使用网络监听便可以有效地截获网络上的数据,这是黑客使用最好的方法。但是网络监听只能应用于连接同一网段的主机,通常被用来获取用户密码等 13。 网络嗅探技术: 网络嗅探也称为网络监听,包
4、括网络监测、流量分析和数据获取等功能 9。 在局域网中,由于以太网的共享式特性决定了嗅探能够成功。因为以太网是基于广播方式传送数据的,所有的物理信号都会被传送到每一个主机节点,此外网卡可以被设置成混杂模式,这种模式下,无论监听到得数据帧目的地址如何,网卡都能予以接收。而 TCP/IP 协议栈中的应用协 议大多数以明文在网络上传输,这些明文数据中往往包含一些敏感的信息(如密码、账号等),因此使用嗅探器可以悄无声息地监听到所有局域网的数据通信,达到这些敏感信息。同时嗅探器的隐蔽性好,它只是“被动”接收数据,而不向外发送数据,所以在传输数据的过程中,根本无法觉察到有人监听。当然,嗅探器的局限性是只能
5、在局域网的冲突域中进行,或者是在点到点连接的中间节点上进行监听 5。 在交换网络中,虽然避免了利用网卡混杂模式进行嗅探,但交换机并不会解决所有问题,在一个完全由交换机连接的局域网内,同样可以进行网络嗅探。主要有以下 三种可行的方法。 MAC 洪水法:交换机要负责建立两个节点间的“虚电路”,就必须维护一个交换机端口与 MAC 地址的映射表,这个映射表是放在交换机内存中的,但由于内存数量的有限,地址映射表可以存储的映射表项也有限。如果恶意攻击者向交换机发送大量的虚假 MAC 地址数据,有些交换机在应接不暇的情况下,就会像一台普通的 Hub,简单地向所有端口广播数据,嗅探者就可以借机达到窃听的目的。
6、当然,并不是所有交换机都采用这样的处理方式,况且,如果交换机使用静态地址映射表,这种方法就失灵了 5。 MAC 复制法:实际上就是修改本地的 MAC 地址,使其与所要嗅探的主机的 MAC 地址相同,这样,交换机就会发现,有两个端口对应相同的 MAC 地址,于是到该 MAC 地址的数据包就同时从这两个交换机端口发送出去。但是只要简单设置交换机使用静态地址映射表,这种欺骗方式也失效了 5。 ARP 欺骗:按照 ARP 协议的设计,为了减少网络上过多的 ARP 数据通信,一台主机,即使收到的 ARP 应答并非自己请求得到的,它也会将其插入到自己的 ARP 缓存表中,这样,就造成了“ ARP 欺骗”的
7、可能。如果黑客想探听同一网络中的两台主机之间的通信,他会分别给这两台主机发送一个 ARP 应 答包,让两台主机都误认为对方的 MAC 地址是第三方黑客所在的主机,这样,双方看似直接的通信连接,实际上都是通过黑客所在的主机间接进行。黑客一方面得到了想要的通信内容,另一方面,只需要更改数据包中的一些信息,成功地做好转发工作即可。这种嗅探方式中,黑客所在主机是不需要设置网卡的混杂模式的,因为通信双方的数据包在物理上都是发给黑客所在的中转主机的 5。 3 有关争论焦点 网络嗅探器是一个很好的网络分析工具, 网络管理者可以通过使用嗅探器捕获网络中传输的数据包并对其进行分析,分析结果可供网络安全分析之用。
8、 但 攻击者可以用 它来监听网络中数据,达到非法获得信息的目的 。网络嗅探器运行后很难被发现,因为运行网络嗅探器的主机只是被动地接收在局域网上传输的信息,不主动地与其他主机交换信息,也没有修改在网上传输的数据包。所以我们目前要做的就是如何用好这个工具,既要把它很好地用于网络流量和安全分析上,又要努力防范它所带来的安全隐患,使它不被攻击者利用来危害我们的利益。 二、主题部分 1. 历史背景 网络嗅探器,它与当前的网络生活有很大的关系,一些网络管理员普遍采用它,也有很多黑客通过使用它来获得他们想要的信息资料。与电话线路不同,计算机网络是共 享通信通道的,这就意味着计算机能够接收到发给其他计算机的信
9、息。捕获在网络中传输的数据信息就称为“窃听” 3。 在内部网上,黑客想要迅速获得大量的账号,最有效的手段是使用嗅探程序。这种方法要求运行嗅探器程序的主机和被监听的主机必须在同一个以太网段上。以太网窃听则是对以太网设备上传送的数据包进行侦听,来探测感兴趣的包。如果发现符合条件的包,就把它存下来 。网络嗅探器通常运行在路由器或有路由功能的主机,这样就能对大量的数据进行监控1。 信息革命正在改造我们的生活,这场革命早 在 工业化进程中就开始孕育。 20 世纪 50 年代前的电报电话等基础通信技术和计算机技术的出现,为 20 世纪 60 年代计算机联网实验提供了最初的条件, 20 世纪 70 年代半导
10、体微电子技术的飞跃以及数字技术的成熟 为 计算机网络走出军事的封锁环境、研究所和校园的象牙塔奠定了技术基础 2。 为了发觉信息革命的巨大潜能,美国率先提出了信息高速公路的构思,提倡实施国家信息基础设施,西方发达国家紧跟着提出全球信息基础设施的提倡。我国也大力推动信息化,普通老百姓在家里上 Internet 周游世界已经成为今天的社会现实。人们热情高涨地推动着信息化,期盼着信息化带来的理想成 真 6。 嗅探器几乎和 Internet 有一样久的历史了,随着 Internet 及电子商务的日益普及,Internet 的安全也越来越受到重视,在 Internet 安全隐患中扮演重要角色之一的网络嗅探
11、器也受到越来越大的关注 15。 2. 现状和发展方向 网络嗅探目前为世界各国普遍重视。以美国为首的信息发达国家,为了在信息化浪潮中占据先机,打击网络犯罪和网络恐怖活动,窃取他国秘密和信息,搞信息霸权等,已经建立和完善其信息监控法律法规制度,并颁布了相应的法律和总统令 7,开始实施相关网络监控项目,对关键性的信息活动进行 全球性的监视 10。在亚洲,日本也已经编制出一套准则,防止越权访问计算机网络。在颁布相关法律的同时,各国也都开始实施相关网络监控项目,监视全球关键性的信息活动。美国联邦调查局开发了名为“肉食者”的电子窃听系统 8,用于监视可疑的电子邮件(包括邮件头或全部的内容)、列出服务器怀疑
12、的访问(例如 FTP、 HTTP等)、全面地嗅探可疑的 IP 地址和通过 RADIUS 登陆发现网络上正在发生的可疑活动等。 网络嗅探器可以是软件,也可以是硬件设备 12。硬件的网络嗅探器也称为协议分析器,是一种监视网络数据运行的软件设备, 协议分析器既能用于合法网络管理也能用于窃取网络信息 14。网络运作和维护都可以采用协议分析器,如监视网络流量、分析数据包、监视网络资源利用、执行网络安全操作规则、鉴定分析网络数据以及诊断并修复网络问题等。由于专业人士的普遍使用,协议分析器广泛应用于所有能够捕获和分析网络流量的产品。协议分析器基本上可分成两大类:手提式协议分析器和分布式协议分析器。手提式协议
13、分析器是一种能够安装在个人电脑上的单机设备软件。它能够捕获数据,实时控制和分析数据。手提式协议分析器一般应用于小型公司或者大型公司。其核心技术主要是用于 数据包的捕获和分析。不同的供应商的产品具有不同的特征,诸如简单协议分析(即数据包重组为原始信息)或专家分析等。分布式协议分析器主要由两部分组成:一个是各网络点上的监视探测器;另一个是网络操作中心的控制台。大型企业一般采用该装置实现中心监控网络运行。协议分析器价格非常昂贵,狭义的网络嗅探器是指软件嗅探器,常见的软件嗅探器有 Sniffer Pro 系统和影音神探系统等。 Sniffer Pro 是美国 Network Associates 公司
14、出品的一种网络分析软件,可用于网络故障与性能管理,在网络界应用非常广泛,可用于 网络故障分析与性能管理,支持各种平台,性能优越。 Sniffer Pro 集网络专家积累的经验和智能捕获技术于一身,帮助用户更快地分析判断和解决网络性能问题,其特点是对于网络的数据包进行监控,可以了解网络中流动的所有数据信息,分析数据包中的源地址、目的地址以及端口号,甚至还可以对数据包中的内容进行分析。 影音神探是一款国产嗅探器,它能够嗅探流过网卡的数据并智能分析过滤,快速找到所需要的网络信息。 3. 问题的评述 随着以太网技术的不断发展,网络嗅探器的应用越来越多。借助网络嗅探器进行网络流量监控和网络问题分析已经成
15、为网 络管理员不可缺少的工作内容,利用网络嗅探器进行网络攻击也深受广大黑客欢迎。网络嗅探技术的不断发展,给用户带来了巨大的便利,但也给一些不法分子提供了新的犯罪空间。从维护社会治安稳定、打击计算机犯罪、收集网络情报和保卫国家安全的角度出发,我们研究网络嗅探器的相关技术已刻不容缓,一些国家也已经制定了相关的法律准则来防范网络监听,数据加密技术的迅猛发展也在一定程度上减小了网络监听带来的危害,一些反嗅探技术正在逐步的发展并且逐渐强大。我相信在不久的以后网络嗅探器在带给我们方便的同时也能保证我们的网络安全。 三、总结部 分 通过对现状的分析,我们可以发现网络嗅探是网络信息安全的重要组成部分,对维护社
16、会稳定和国家安定有着重要的意义。网络嗅探器在监听时,常常要保存大量的信息,并将对收集到的信息进行大量的整理,这样就会使正在监听的机器对其它用户的请求响应变的很慢。同时监听程序在运行的时候需要消耗大量的处理器时间,如果在这个时候就详细 地 分析包中的内容,许多包就会来不及接收而被漏走。所以监听程序很多时候就会将监听得到的包存放在文件中等待以后分析。所以 我们要做的事情就是 如何改进网络嗅探程序,提高它的运行效率,但同时不影响主机其他程序的 运行 。 四、参考文献 1 卢昱等著 .网络安全技术 专著 - 北京:经济管理出版社, 2004 2 石志国,薛为民等著 .计算机网络安全教程 M.北京:清华
17、大学出版社 .2007 3 蔡开裕,范金鹏著 .计算机网络 M.北京:机械工业出版社 . 2006 4 庄春兴,彭志奇 .基于 Winpcap的网络嗅探程序设计 J - 计算机与现代化, 2002 5 张耀疆,聚焦黑客攻击手段和防护策略 专著 - 北京:人民邮电出版社, 2002 6 井口信和著 .TCPIP网络工具篇 专著 - 北京 : 科学出版社, 2003 7 孙锐,赵战生隐私权“撞击”网络监控信息网络安全 , 2003 8 Arun Sen,Peter A.Dacin.Current Trends in Web Data Analysis.Communications of the A
18、CM,2006,(11):85-91 9 E.Eugene Schultz,Thomas A.Longstaff.Internet Sniffer Attacks.Communications of the ACM,1997(10):137-146 10 刘恒富,孔令瑽计算机信息系统安全现状及分析科技与经济, 2001 11 谢希仁著 .计算机网络电子 M.北京:工业出版社 .2005 12 万映辉,邸晓奕,张水平基于 NDIS的网络嗅探器的设计与实现计算机工程, 2004 13 王宝智等著 .全新计算机网络教程 专著 - 天津:天津科学技术出版社, 1983.1 14 王晓薇网络嗅探器技术微计算机信息, 2003 15 程秉恢等著 .黑客任务实战 - 北京:科学出版社, 2005