1、网网 络络 与与 信信 息息 安安 全全 课课 程程 设设 计计 设计题目:设计题目:网络嗅探器的设计网络嗅探器的设计与实现与实现 网络与信息安全课程设计-网络嗅探器的设计与实现 1 网络嗅探器的设计网络嗅探器的设计与实现与实现 目目 录录 摘要摘要 2 一、网络嗅探器的定义一、网络嗅探器的定义3 二、二、网络嗅探器的作用网络嗅探器的作用4 三、三、嗅探器的原理嗅探器的原理4 1、网络技术与设备简介4 2、网络监听原理5 3、嗅探器分类6 4、网络监听目的7 四、四、嗅探器的扩展应用嗅探器的扩展应用8 五、五、嗅探器的简单用法嗅探器的简单用法8 六、六、反嗅探技术反嗅探技术10 七、实现一个简
2、单的嗅探器七、实现一个简单的嗅探器11 八、总结八、总结16 参考文献17 网络与信息安全课程设计-网络嗅探器的设计与实现 2 网络嗅探器的设计与实现网络嗅探器的设计与实现 摘摘 要要 随着网络技术的发展和网络应用的普及, 越来越多的信息资 源放在了互联网上, 网络的安全性和可靠性显得越发重要。 因此, 对于能够分析、诊断网络,测试网络性能与安全性的工具软件的 需求也越来越迫切。网络嗅探器具有两面性,攻击者可以用它来 监听网络中数据,达到非法获得信息的目的,网络管理者可以通 过使用嗅探器捕获网络中传输的数据包并对其进行分析, 分析结 果可供网络安全分析之用。 本文对网络嗅探技术进行了简要分析,
3、 研究了网络数据包的 捕获机制,如 winpcap、原始套接字。文中首先分析了嗅探的原 理和危害,并介绍了几种常见的嗅探器,然后研究了入侵检测系 统中使用的包捕获技术。本文利用原始套接字在 windows 平台 下实现了一个网络嗅探器程序,完成了对数据包进行解包、分析 数据包的功能。 网络与信息安全课程设计-网络嗅探器的设计与实现 3 一、一、什么是嗅探器什么是嗅探器 嗅探器, 可以理解为一个安装在计算机上的窃听设备它可以 用来窃听计算机在网络上所产生的众多的信息。简单一点解释: 一部电话的窃听装置, 可以用来窃听双方通话的内容,而计算机 网络嗅探器则可以窃听计算机程序在网络上发送和接收到的数
4、 据。 可是,计算机直接所传送的数据,事实上是大量的二进制数 据。因此, 一个网络窃听程序必须也使用特定的网络协议来分解 嗅探到的数据, 嗅探器也就必须能够识别出那个协议对应于这 个数据片断,只有这样才能够进行正确的解码。 计算机的嗅探器比起电话窃听器,有他独特的优势: 很多 的计算机网络采用的是“共享媒体“。也就是说,你不必中断他的 通讯,并且配置特别的线路,再安装嗅探器,你几乎可以在任何 连接着的网络上直接窃听到你同一掩码范围内的计算机网络数 据。 我们称这种窃听方式为“基于混杂模式的嗅探” (promiscuous mode) 。 尽管如此,这种“共享” 的技术发展的很快,慢慢转 向“交
5、换” 技术,这种技术会长期内会继续使用下去, 它可以实 现有目的选择的收发数据。 网络与信息安全课程设计-网络嗅探器的设计与实现 4 二二、网络嗅探器网络嗅探器的作用的作用 嗅探器是网络的抓包工具,可以对网络中大量数据抓 取,从而方便使用者对网络中用户的一些信息进行分析,所 以,通常被黑客运用于网络攻击。我们如果也能掌握网络嗅 探器的原理和设计,可以将它运用与网络故障检测、网络状 况的监视,还可以加强企业信息安全防护。 三、三、嗅探器嗅探器的原理的原理 1网络技术与设备简介网络技术与设备简介 首先需要讲述局域网设备的一些基本概念。 数据在网络 上是以很小的称为帧(Frame)的单位传输的,帧由几部分 组成,不同的部分执行不同的功能。帧通过特定的称为网络 驱动程序的软件进行成型,然后通过网卡发送到网线上,通 过网线到达它们的目的机器,在目的机器的一端执行相反的 过程。接收端机器的以太网卡捕获到这些帧,并告诉操作系 统帧已到达,然后对其进行存储。就是在这个传输和接收的 过程中,嗅探器会带来安全方面的问题。 每一个在局域网(LAN)上的工作站都有其硬件地址, 这些地址惟一地表示了网络上的机器(这一点与 Internet 地 址系统比较相似) 。当用户发送一个数据包时,这些数据包 就会发送到 L