1、第第2章章 网络监听与网络监听与TCP/IP协议分析协议分析 教学提示:本章主要介绍网络监听的基本原理,概括网络层和传输层各协议的数据报结构,讲解Sniffer Pro的安装和使用方法。 教学要求:了解网络监听的基本原理,熟悉网络监听在网络管理中的应用,掌握网络层协议和传输层协议的报头结构,熟悉Sniffer Pro的安装和基本操作方法,熟练掌握使用Sniffer Pro进行抓包并分析的步骤。网络监听技术网络监听技术 2.1 网络监听技术概览 2.2网络监听技术定义及原理 2.3网络监听的实现方式 2.4网络监听工具简介 2.5网络监听工具sniffer2.1 网络监听技术概览 基础知识简介
2、以太网的通信是基于广播方式的,这意味着在同一个网段的所有网络接口都可以访问到物理媒体上传输的数据,而每一个网络接口都有一个惟一的硬件地址,即MAC地址,一般来说每一块网卡上的MAC地址都是不同的。一台接在以太网内的计算机为了和其他主机进行通讯,在硬件上需要网卡,在软件上需要网卡驱动程序。 基础知识简介 以太网的网卡设备驱动程序不关心IP数据报中的目的IP地址,它所需要的仅仅是MAC地址,所以我们需要在MAC地址和IP地址间使用ARP和RARP协议进行相互转换。 一般网络接口接收的两种数据:与自己硬件地址相匹配的数据帧;发向所有机器的广播地址。 网卡有4种接收方式:广播方式;组播方式;直接方式;
3、混杂方式。 以太网的工作机制: 把要发送的数据包发往连接在同一网段中的所有主机,在包头中包括有目标主机的正确地址,只有与数据包中目标地址相同的主机才能接收到信息包。2.2网络监听技术定义及原理 2.2.1网络监听定义 网络监听也叫嗅探器,其英文名是Sniffer,即将网络上传输的数据捕获并进行分析的行为。 网络监听是一种网络监测设备,既可以是硬件,也可以是软件。2.2.2网络监听原理 2.原理 以太网数据是以广播方式发送的,也就是说局域网内的每台主机都在监听网内传输数据。以太网硬件将监听到的数据帧所包含的MAC地址与自己的滤MAC地址相比较,如果相同,则接收该帧,否则丢掉它,这就是以太网的过滤
4、规则。但是,如果把网卡设置为“混杂模式”,它就能接收传输在网络上的每一个信息包。Sniffer就是依据这种原理来监测网络中流动着的数据。 2.2.3网络监听的组成(1)网络硬件设备如网卡、集线器、路由器等。(2)监听驱动程序截获数据流,进行过滤并把数据存入缓冲区。(3)捕获驱动程序这是最重要的部件,它直接控制网络硬件从信道上抓取数据,并将数据存入缓冲器。(4)缓冲器用来存放捕获到的数据的容器。由于缓冲器容量有限,监听器使用缓冲器时,通常有两种方式:一是如果缓冲器满,马上停止捕获;二是缓冲器满了还继续捕获,但是新的数据会覆盖旧的数据。(5)实时分析程序实时分析数据帧中所包含的数据,目的是发现网络
5、性能问题和故障,侧重于网络性能和故障方面的问题。(6)解码程序将接收到的加密数据进行解密,构造自己的加密数据包并把它发送到网络中。(7)数据包分析器对截取到的数据包进行模式匹配和分析,将感兴趣的信息从原始数据包中剥离出来。 2.2.4网络监听的用途 1.把网络中的数据流转化成可读格式。2.进行性能分析以发现网络瓶颈。3.进行入侵检测以发现外界入侵者。4.生成网络活动日志和安全审计。5.进行故障分析以发现网络中潜在的问题。 2.2.5网络监听的意义 在网络安全中,sniffer起着“双刀刃”的作用:一方面,通过网络监听软件,管理员可以监视网络的状态、数据流动的情况以及网络上传输的信息,可以观测分
6、析实时的数据包,从而快速地进行网络故障定位。另一方面,sniffer给以太网带来很大的隐患,很多网络入侵事件往往伴随着以太网内的Sniffer行为,从而造成口令失窃,敏感数据被截获等恶性安全事件。 2.3网络监听的实现方式 (1)针对集线器的监听 首先从TCP/IP模型的角度来看数据包在局域网内发送的过程:当数据由应用层自上而下地传递时,在网络层形成IP数据报,再向下到达数据链路层,由数据链路层将IP数据报分割为数据帧,增加以太网包头,再向下一层发送。需要说明的是,以太网的包头中包含着本机和目标设备的MAC地址,也就是说,数据链路层的数据帧发送时,是依靠48bit/s的以太网地址而非IP地址来
7、确认的,以太网的网卡设备驱动程序不会关心IP数据报中的目的IP地址,它所需要的仅仅是MAC地址。当局域网内的主机通过集线器连接时,集线器的作用就是局域网上面的一个共享的广播媒体,所有通过局域网发送的数据首先被送到集线器,然后集线器将接收到的所有数据向它的每个端口转发。 2.3网络监听的实现方式 (2)针对交换机的监听 不同于工作在物理层的集线器,交换机是工作在数据链路层的。交换机在工作时维护着一张ARP的数据库表,在这个库中记录着交换机每个端口所绑定的MAC地址,当有数据报发送到交换机时,交换机会将数据报的目的MAC地址与自己维护的数据库内的端口对照,然后将数据报发送到“相应的”端口上,交换机
8、转发的报文是一一对应的。对交换机而言,仅有两种情况会发送广播方式,一是数据报的目的MAC地址不在交换机维护的数据库中,此时报文向所有端口转发;二是报文本身就是广播报文。因此,基于交换机以太网建立的局域网并不是真正的广播媒体,交换机限制了被动监听工具所能截获的数据。为了实现监听的目的,可以采用MAC Flooding和ARP欺骗等方法。 2.4网络监听工具简介1.WinDump是最经典的Unix平台上的TcpDump的Window移植版,和TcpDump几乎完全兼容,采用命令行方式运行,对用惯TcpDump的人来讲会非常容易上手。目前版本是3.5.2,可运行在Windows95/98/ME/Wi
9、ndowsNT/2000/XP平台上。2.IrisEeye公司的一款付费软件,有试用期,完全图形化界面,可以很方便的定制各种截获控制语句,对截获数据包进行分析,还原等。对管理员来讲很容易上手,入门级和高级管理员都可以从这个工具上得到自己想要得东西。运行在Windowsgx/ME/NT/2000/xP平台上。3.Snort目前很红火的免费的IDS系统,除了用作IDS以外,被用来Sniffer也非常不错,可以借助工具或是依靠自身能力完全还原被截获的数据。4.Dsniff作者设计的出发点是用这个东西进行网络渗透测试,包括一套小巧好用的小工具,主要目标放在口令,用户访问资源等敏感资料上,非常有特色,工
10、具包中的arpspoof,macof等工具可以令人满意的捕获交换机环境下的主机敏感数据。2.4.1 Sniffer工具介绍 计算机网络是共享通信通道的,这意味着计算机能够接收到发送给其他计算机的信息。捕获在网络中传输的数据信息就称为sniffing(窃听)。 以太网是现在应用最广泛的计算机连网方式。以太网协议的特点是在同一网络向所有主机发送数据包信息。数据包头包含有目标主机的地址。一般情况下只有具有该地址的主机会接收这个数据包。如果一台主机能够接收所有数据包,而不理会数据包头内容,这种方式通常称为“混杂”模式。 Sniffer软件是NAI公司推出的功能强大的协议分析软件。Sniffer支持的协
11、议丰富,解码分析速度快。其中Sniffer Pro版可以运行在各种Windows平台上。 2.4.2 深入了解Sniffer Sniffer是一种常用的收集有用数据的方法,这些数据可以是用户的账号和密码,还可以是一些商用机密数据等。随着Internet及电子商务的日益普及,Internet的安全也越来越受到重视。Sniffer在Internet安全隐患中显示了很重要的作用。 Sniffer通常运行在路由器或有路由器功能的主机上,这样就能对大量的数据进行监控。Sniffer几乎能得到任何以太网上传送的数据包。 在以太网中Sniffer将系统的网络接口设定为混杂模式。这样,它就可以监听到所有流经同
12、一以太网网段的数据包,而不管它的接受者或发送者是不是运行Sniffer的主机。2.5工具及软件选用1、网络协议分析软件sniffer pro的安装第一步:安装过程也很简单,双击安装程序,下一步,进入安装界面,下一步,出现许可协议,这些是软件安装的通用的步骤了,YES同意即可。接下来要求名称各公司输入即可。第二步:下一步后,选择并设置安装的目的路径后再下一步。就开始安装了。第三步:接下来要求填写个人信息:姓名、商业、电子邮件等,填写完成后就可以下一步了。接下来还是要求填写个人联联系方式:地址、城市、国家、邮编、电话等,填写完成后就可以下一步了。需要注意的是各项目在填写时注意格式,字母与数字要区分
13、开。 第四步:接下来会问是如何了解本软件的?选择一个。最后的序列号要正确填写。SN序列号 第五步:接下来是通过网络注册的提示。 第六步:由于我没有连网所以出现下面的界面,即无法连接,这不防碍软件的使用,只是注册用。 第七步:下一步后,出现注册结果,点完成就可以结束sniffer pro安装了。出现提示要求IE5支持,接受即可,最后点完成,询问是否重启,重启后软件就可以使用了。 2、网络协议分析软件sniffer pro的配置停止查看启动捕获捕获设置启动sniffer pro软件,在主窗口的工具栏上点选捕获设置(Define Filter)按钮,可以对要捕获的协议数据设置捕获过滤条件。默认情况下捕获所有从指定网卡接收的全部协议数据。捕获到数据后停止查看按钮会由灰色不可用状态变为彩色的可用状态。 2、网络协议分析软件sniffer pro的配置选择停止查看按钮会出现如下图所示对话框,选择最下面的Decode选项卡。即可以看捕获后的数据的解码。