Sniffer的数据包分析与防范
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Sniffer的数据包分析与防范
【摘要】本文首先阐述了当前信息监听的重要意义,并简单介绍了目前比较常见的信息监听软件Sniffer的特点及工作原理。然后系统地介绍了网络中几种重要的协议的数据报格式,在此基础上,介绍Snifer对这几种协议进行的解码分析,通过Sniffer的分析能够清楚地看到几种数据报的详细内容。
鉴于Sniffer对信息的监听,本文提出了几种防范Sniffer监听的方法,主要有防火墙技术、加密技术等。最后,针对当前我国的信息监听面临的形势,提出了自己对信息监听技术发展前景的看法。
关键字:信息监听 Sniffer 数据包分析信息安全 Sniffer的防范
1.信息监听的意义;
我国的网络正在快速发展中,相应的问题也就显现出来,网络管理及相关应用自然将越发重要,而监听技术正是网络管理和应用的基础,其意义当然重要,随着中国网络的发展,监听系统必将大有用武之地,因此监听技术的研究已是时势的要求。
监听技术有助于网络管理、故障报警及恢复,也就是运用强大的专家分析系统帮助维护人员在最短时间内排除网络故障。
2、Sniffer的介绍;
Sniffer Pro是一款一流的便携式网管和应用故障诊断分析软件,不管是在有线网络还是在无线网络中,它都能够给予网管管理人员实时的网络监视、数据包捕获以及故障诊断分析能力。进行快速的网络和应用问题故障诊断,基于便携式软件的解决方案具备最高的性价比,却能够让用户获得强大的网管和应用故障诊断功能。Sniffer程序是一种利用以太网的特性把网络适配卡置为杂乱模式状态的工具,一旦同卡设置为这种模式,它就能接收传输在网络上的每一个信息包。
Sniffer之所以著名,是因它在很多方面都做的很好,它可以监听到网上传输的所有信息。Sniffer可以是硬件也可以是软件。主要用来接收在网络上传输的信息。网络是可以运行在各种协议之下的,包括以太网Ethernet、TCP/IP 等等,也可以是集中协议的联合体系。
Sniffer的优点是易于安装部署,易于学习使用,同时也易于交流;缺点是无法抓取网络上所有的传输,某些情况下也就无法真正了解网络的故障和运行情况。硬件的Sniffer通常称为协议分析仪,具备支持各类扩展的链路捕获能力以及高性能的数据实时捕获分析的功能。
Sniffer是个非常之危险的东西,它可以截获口令,可以截获到本来是秘密的或者专用信道内的信息,截获到信用卡号、经济数据、E-mail等等,更加可以用来攻击与己相临的网络。
3、网络数据包的结构;
数据在网络中的传输要遵循不同的协议,根据不同的标准可以有不同的分层模型。这里有ISO 七层模型和TCP/IP 的五层模型,ISO 七层分为:物理层、数据链路层、网络层、运输层、会话层、表示层、应用层;TCP/IP 的四层为:网络接口层、网络层、运输层、应用层。
数据在网络中的传输通过使用一些特定的协议来实现,下面以TCP/IP 的四层模型为例,每一层都有一些特定的协议构成(如图1所示)
HTTP FTP 和Telnet 等 TCP 和UDP IP ICMP IGMP 设备驱动程序及接口卡(DLC ) ARP 图1
网络中的数据包的总体结构如图2所示,数据在从应用层到达传输层时,将添加TCP 数据段头,或是UDP 数据段头。在网络层,还要给数据包添加一个
下面具体介绍一下TCP 、UDP 和IP 数据包的格式:
2.UDP 报文的格式如图4所示;
3.IP 报文结构为IP 协议头+载荷(详细内容如图3所示),信息监听时对IP 协议头部的分析,时分析IP 报文的主要内容之一。
0 4 8 16 19 24 31
版本:4个字节;
首部长度:单位为4字节,最大60字节
总长度:单位为字节,最大65535字节
标识:IP报文标识字段
标志:MF=1,后面还有分片的数据包
MF=0,分片数据包的最后一个
DF=1,不允许分片
DF=0,允许分片
偏移量:分片后的分组在原分组中的相对位置,单位为8字节
生存时间:TTL(Time To Live)丢弃TTL=0的报文
协议:携带的是何种协议报文
首部检验和:对IP协议首部的校验和
源IP地址:IP报文的源地址
目的IP地址:IP报文的目的地址
数据发送时从协议栈的高层到底层,会在每一层根据所使用的不同协议添加不同的数据头,所以通常在底层直接截获得到的数据包内,会有不止一个的协议头。数据在从应用层到达传输层时,将添加TCP数据段头,或是UDP数据段头。在网络层,还要给数据包添加一个IP数据段头以组成IP数据报。
4. ARP是地址解析协议,它是物理网络系统的一部分,不是网络协议的一部分,它的报文格式如图6所示。
4、Sniffer的数据报文解码;
Sniffer具有强大的网络流量捕捉能力,可以将网络流量捕捉到计算机的内存或直接存储到硬盘上,从而进行解码分析。Snifer能够对很多种协议进行解码分析,它的解码界面也是解码的一个标准界面。解码界面分为Summary(概要解码)、Detail(详细解码)、Hex(十六进制码)。
通过以上对几种主要的数据报格式的介绍,有利于我们对Sniffer解码的理解。下面介绍一下Sniffer对几种重要的协议的解码分析。
4.1 ARP协议的解码分析
ARP协议,即地址解析协议,它提供了一种可以把IP地址映射到物理地址的协议。通过分析Sniffer捕获的数据包中的ARP协议,可以知道信息的发送方和接收方的一些相关数据,如图7是捕获的数据包中的ARP协议内容:
图7
从以上的数据包可以看出ARP协议中的详细内容,例如:硬件类型(Hardware type)字段指明发送方想要知道的硬件接口类型,对于以太网,该字段含有的值为“1”;操作(Opcode)字段指明的是ARP请求(1)、ARP响应(2)、ARP请求(3)、ARP响应(4);硬件地址长度字段和协议地址长度字段分别指出了硬件地址和高层协议地址的长度;目标硬件地址和目标协议地址字段分别指出了目标硬件地址和目标IP地址。
4.2 IP协议的解码分析
IP是英文Internet Protocol(网络之间互连的协议)的缩写,中文简称为“网协”,也就是为计算机网络相互连接进行通信而设计的协议,图8为Sniffer 对IP协议首部的解码分析。
从图8中可以看出IP数据报文中的详细内容,例如:版本(Version)字段指出了数据报所用的IP协议的版本信息;生存时间(Time to live)字段指明了数据报在互联网系统中允许保留的多长时间;首部校验和(Header checksum)