1 / 10
文档名称:

实验十五 网络嗅探与Tcp协议分析.pdf

格式:pdf   大小:1,369KB   页数:10页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实验十五 网络嗅探与Tcp协议分析.pdf

上传人:1781111**** 2024/5/11 文件大小:1.34 MB

下载得到文件列表

实验十五 网络嗅探与Tcp协议分析.pdf

相关文档

文档介绍

文档介绍:该【实验十五 网络嗅探与Tcp协议分析 】是由【1781111****】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【实验十五 网络嗅探与Tcp协议分析 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..)(Sniffer软件应用)一、实验目的和意义网络嗅探器sniffer可以监听到所有流经同一以太网网段的数据包,不管它的接收者或发送者是不是运行sniffer的主机。通过在网络上拦截(接收)数据包并做出分析,来确定该数据包使用了什么协议,是TCP/IP协议,还是UDP协议等,并同时分析出不同数据包的结构,再从中得到具体的内容,如帧的源MAC和目的MAC地址、IP地址、TCP序号等,这些数据内容还可以是用户的帐号和密码,以及一些商用机密数据等。sniffer几乎能得到以太网上传送的任何数据包,黑客也就会使用各种方法Sniffer是NAI公司推出的协议分析软件,它支持丰富的协议,在网络特殊应用尤其是在网络管理过程中,可以通过计算机的网络接口,从网络上截获目的地为其他计算机的数据报文,利用专家分析系统,对捕获到的数据帧进行快速解码分析,诊断收集到的数据,实时监控网络活动,网络运行状态和错误信息等,是网络管理的有力工具。本实验通过sniffer软件的应用,监视并分析TCP/UDP应用层程序在客户端和服务器间的交互(、HTTP、FTP、DNS等的应用),加强对TCP连接中的三次握手过程及相关网络原理、协议及相关技术的掌握,同时熟练掌握涉及网络管理、网络安全方面的技术技能,为今后的网络管理、网络开发应用打下良好基础。二、实验原理1、网络嗅探网络中处于同一个网段上的所有网络接口都有一个不同的硬件地址,每个网络还有一个广播地址。在正常工作情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于自己的报文则不予响应,因为此网络接口应该只响应:1)帧的目标地址和本机网络接口的硬件地址相匹配;2)帧的目标区域具有广播地址,这样的两种数据帧。在接收到上面两种情况的数据包时,nc通过cpu产生一个硬件中断,由操作系统将帧中所包含的数据传送给系统进一步处理。也就是说,一个连到以太网上的网络设备接口,在任何时间里都在接收数据,但只将传给自己的数据传给本计算机上的应用程序,但如果将网络接口设置为promiscuous(混杂)工作模式,那么接收的并不仅仅是自己的数据,而是对网络线路上传送的所有数据都可以进行接收即侦听。利用这一点,可以将一台计算机的网卡设置为promiscuous(混杂)工作模式以接收所有以太网线上的数据,从而达到实现sniffer的目的。而sniffer就是一种能将本地nc接口设成(promiscuous)状态的软件,当sniffer软件将nc设为这种“混杂”方式时,该nc具备“广播地址”,它对所有流经网络线路上的每一个帧都产生一个硬件中断,以使操作系统接收处理每一个报文包。可见,sniffer工作在网络环境中的底层,它会拦截所有正在网络上传送的数据,并且通过软件处理,实时分析这些:..通常通过sniffer分析的内容有以下几类:(1)数据的来源和去处:主机网络接口地址、远程网络接口ip地址,以太网帧的其他部分存放实际的用户数据、TCP/IP的报文头或IPX报文头等;(2)信息协议分析,MAC帧、IP、TCP、ICMP包等,还有ip路由信息和tcp连接的字节顺序号码等;(3)分析网络的流量,以便找出网络中潜在的问题;(4)口令:sniffer可以记录到明文传送的userid和passwd;(5)金融帐号:sniffer可以很轻松截获在网上传送的用户姓名、口令、信用卡号码和pin;(6)***机密或敏感的信息数据:通过拦截数据包,可以很方便记录别人之间敏感的信息传送,或者干脆拦截整个的会话过程。(一般我们只嗅探每个报文的前200到300个字节,用户名和口令都包含在这一部分中,也可以嗅探给定接口上的所有报文。)2、TCP/IP通信协议因特网在传输层有两种主要的协议:一种是面向连接的协议,一种是无连接的协议。传输控制协议TCP是(transmissioncontrolprotocol)专门用于在不可靠的因特网上提供可靠的、面向连接的端对端的字节流通信协议。通过在发送方和接收方分别创建一个称为套接字的通信端口就可以获得TCP服务,所有的TCP均是全双工的和点到点的连接。发送和接收方TCP实体以数据报的形式交换数据。一个数据报包含一个固定的20字节的头、一个可选部分以及0或多字节的数据。对数据报的大小有两个限制条件:一是每个数据报(包括TCP头在内)必须适合IP的载荷能力,不能超过65535字节;其次,每个网络都存在最大传输单元MTU(maximumtransferunit)的限制,故要求每个数据报必须适合MTU。如果一个数据报进入了一个MTU小于该数据报长度的网络,那么网络边界上的路由器会把该数据报分解为多个小的数据报。TCP实体所采用的基本协议是滑动窗口协议。当发送方传送一个数据报时,它将启动计时器,当该数据报到达目的地后,接收方的TCP实体回送一个数据报,其中包含有一个它希望收到的下一个数据报的确认顺序号。如果发送方的定时器在确认信息到达之前超时,那么发送方会重发该数据报。TCP数据被封装在一个IP数据报中,其报头格式如下:源端口、目的端口:16位长。标识出远端和本地的端口号。顺序号:32位长。表明了发送的数据报的顺序。确认号:32位长。希望收到的下一个数据报的序列号。TCP头长:4位长。表明TCP头中包含多少个32位字。接下来的6位未用。URG:紧急比特;标识紧急数据要优先发送。ACK:确认比特;ACK位置1表明确认号是合法的。如果ACK为0,那么数据报不包含确认信息,确认字段被省略。:..PUSH标志的数据;接收方所请求数据报一到,不等缓冲便可送往应用程序。RST:复位比特;用于复位,由于主机崩溃或其它原因而出现的错误连接。还可以用于拒绝非法的数据报或拒绝连接请求。SYN:同步比特;用于建立连接;FIN:终止比特;用于释放连接;窗口大小:16位长;窗口大小字段表示在确认了字节之后还可以发送多少个字节。校验和:16位长;是为了确保高可靠性而设置的。它校验头部、数据和伪TCP头部之和。可选项:0个或多个32位字;包括最大TCP载荷,窗口比例、选择重发数据报等选项。最大TCP载荷:允许每台主机设定其能够接受的最大的TCP载荷能力;在建立连接期间,双方均声明其最大载荷能力,并选取其中较小的作为标准。如果一台主机未使用该选项,那么其载荷能力缺省设置为536字节。窗口比例:允许发送方和接收方商定一个合适的窗口比例因子;这一因子使滑动窗口最大能够达到232字节。选择重发数据报:这个选项允许接收方请求发送指定的一个或多个数据报。另一方面,Sniffer也成为了一种对安全造成威胁的工具,因为它可以捕获口令,可以截获机密的或专有的信息,以获取更高级别的访问权限,它也可以被用来攻击其他的网络,故应用中也要增加对其防范,提高安全的防范意识。三、实验设备器材:计算机一台,交换机或HUB一台,接入四、实验方法步骤1、实例一、利用SnifferPro截取ICMP通信协议包:首先设定过滤器(DefineFilter),這是为了避免截取過多的包导致数据量太大,同時也会增加分析的难度。设定所要截取主机的IP(Address)、过滤规则(DataPattern)、选择通信协议(Advanced)、以及数据缓冲的大小(Buffer);在Advanced中,若选择了IP通信协议设定,其携带的几个通信协议的也会被监听,如果想要使监听仔细,可以继续选择下层級的通信协议。做好设定之后,开始截取,mand,輸入ping命令,按下sniffer的停止并查看所捕获的內容,选择Decode的Tab解码,其截取画面如下:(注意ICMP的号码顺序关系):..::..:2、实例二、监视TCP/UDP应用层程序在客户端和服务器间的响应过程,如HTTP,FTP,DNS等的应用,特别观察并分析客户端和服务器间登录响应过程中的帐户名、密码及其加密情况;登录过程,监视,记录并分析在客户端和服务器间响应过程中相互交互的情况,特别仔细观察分析客户端和服务器间登录响应过程中的序号变化情况;我们知道客户和服务器之间的TCP连接有三次过程,即通常所说的三次握手,握手过程如下:第一次,客户端向服务器端发送一个SYN置位的TCP报文,包括客户端使用的端口号和初始序列号x;第二次,服务器端收到客户端发送过来的SYN报文后,向客户端发送一个SYN和ACK都置位的TCP报文,包括确认号x+1和服务器的序列号y;第三次,客户端接收到服务器端返回的SYN+ACK报文后,向服务器端返回一个确认号y+1和序号x+1的ACK报文,一个标准的TCP连接完成。客户端与服务器之间的TCP连接建立的过程。从图中可以看到在整个TCP连接过程中,Sniffer所捕获到的数据中三行记录所截取的图形如下所示:::..:(第二次握手):..,初始序列号SEQ=3730418230,服务器从23端口向客户端的1052端口返回一个同时带有SYN标志和ACK标志的应答包,ACK应答序列号SEQ=3730418230+1,SYN请求序列号SEQ=1639809427。接下来,客户端再向服务器返回一个包含ACK标志的应答包,应答序列号SEQ=3730418233。最后,服务器之间就建立了一个安全的可靠的TCP连接。TCP连接建立的三次握手过程示意图如下:3、实验练****一:通过Ping命令捕获数据并分析ICMP协议;启动Sniffer的Capture,在DOS命令提示符下运行ping某一主机IP地址后,观察是:..4、实验练****二:命令捕获数据并分析1、)启动Sniffer的Capture,某一主机IP地址后,观察是否捕获到数据,并进行分析;2、)服务,权限的帐号,如用户名:user1;口令:user1;服务器主机名或IP地址后,登录进入系统,从Sniffer中捕获数据,操作中TCP连接建立的过程;3、)在TCP已建立连接的情况下,在虚拟终端上进行一些简单的操作后,按“CTRL+C”提示符下,输入“quit”,在此情况下捕获数据,操作中TCP连接断开的完整过程。5、实验练****三:运行FTP命令捕获数据并分析1、)安装并启动服务器上的FTP服务,并建立一个帐号,其用户名可为anonymous或其他,在DOS命令提示符下运行ftp命令连入服务器,在“Login:”提示符后输入用户名(anonymous),然后在“Password:”提示符后输入口令登录入服务器,然后在客户端上进行一些基本操作:pwd/ls/cd/lcd等,最后输入“quit”退出ftp;2、)在Sniffer中捕获数据,对该过程中发送和接收的全部TCP数据包进行分析:(a)记录每个TCP数据包的TCP协议头部分,关注其中源、目的端口号、序号和确认序号、ACK、SYN和FIN等标志位、窗口大小等字段的值;(b)根据各字段的值分析TCP协议连接的建立、会话和断开连接的各过程情况;(c)分析会话过程中所捕获的用户帐户和密码;(d)根据捕获数据,计算在该TCP连接过程中本地以太网上用户有效数据的实际吞吐量是多少?6、实验练****四(选做):通过发送电子邮件捕获数据并分析1、)上选择的邮件服务器建立TCP连接:(a)选择一个邮件服务器,如mail.,利用DNS解析出其IP地址,(b)打开TCP连接客户端,填写所选择的邮件服务器的IP地址及邮件服务器进程的端口号25,然后点击“起动”,从而建立与邮件服务器的TCP连接;(c)若连接成功,在接收窗口会显示成功连接的信息(文本方式或十六进制方式);若不成功,再次尝试进行连接,直到成功。2、)使用邮件工具OutlookExpress编辑并发送一电子邮件数据(a)在发送窗口编辑欲发送的数据信息:(b)在Sniffer中截获相应的报文并分析。(c)观察TCP连接客户端的接收信息窗口中返回的信息。3、断开连接:(a)点击TCP连接客户端上的“停止”按扭,断开与服务器端的连接。(b)在Sniffer中截获报文并分析。7、实验练****五(选做):通过接收电子邮件捕获数据并分析1、)上选择的邮件服务器建立一个TCP连接:(a)选择一个邮件服务器,如mail.,并获得它的IP地址;:..TCP连接客户端,填写所选择的邮件服务器的IP地址及邮件服务器进程的端口号110(POP3服务端口号),然后点击“起动”,从而建立与邮件服务器的TCP连接;(c)若连接成功,在接收窗口会显示成功连接的信息(文本方式或十六进制方式);若不成功,再次尝试进行连接,直到成功。2、)察看及接收邮件信息。(a)在邮件收发器中接收邮件:(b)在Sniffer中截获报文并分析。(c)观察TCP连接客户端的接收信息窗口中返回的信息。3、)断开连接:(a)点击TCP连接客户端上的“停止”按扭,断开与服务器端的连接。(b)在Sniffer中截获报文并分析。8、思考问题:1、)ICMP协议通常用于做什么?2、)ICMP报文是自己独立封装并发送的吗?3、)FTP的工作过程是怎样的?4、)FTP工作中有几个连接?5、)TCP连接断开过程中其通信是怎样的6、)发送邮件的过程采用的是应用层的什么协议?7、)接收邮件的过程采用的是应用层的什么协议?8、)描述A给B发送一电子邮件,以及B接收到该电子邮件的过程以及每一步所用到的协议,并画图说明;9、)远程登录和FTP文件传输安全吗?为什么?如果不安全,你认为实现安全的办法是什么?10、)通过本实验能说明电子邮件在网络上传输是安全的吗?为什么?如果不安全,你认为实现邮件安全传输的最好的办法是什么?9、以下为选做:使用Monitor/Dashbord,监控网络的利用率、流量以及错误报文等多种内容,通过网络监控可以进行相关参数的分析,既可以是形象直观但相对粗略的参数分析方法,也可对参数进行深入的分析。无论哪种分析方式,Dashbord都提供了短时间和长期两种分析选择。可以选择自己最关心的问题作细致分析,并且当用户将鼠标移动到相关选项上时,如Network中的Error选项,分析图中的对应曲线会突出显示。步骤为:首先做捕获参数的设定,单击SetThresholds?按钮,做符合需要的参数设置。除了一些常用的测量与控制(MAC)参数(如Packets)之外,还可以在Monitorsampling中选择监听采样时间,“确定”完成参数的保存,单击Reset按钮即可开始一次新的网络监控;在Monitor/ApplicationResponseTime(ART)应用中,打开ART操作界面监视TCP/UDP应用层程序在客户端和服务器的响应时间,如HTTP,FTP,DNS等的应用。单击properties进入属性设置对话框。在General下首先选择数据更新的时间间隔,然后打开DisplayProtocols页面,在Name的ShoeART栏选择需要应用的协议,最后打开:..ServerOnly选择具体需要监视的参数,确定后,系统提示监视功能将按照新的参数设置重新启动。在TableView、Client-ServerResponseTime、ServerResponseTime几个网络参数观察方式之间切换观察捕获的信息,刷新可获取最新最有效的信息。10、提高安全意识,防范Sniffer的一般方法:sniffer是一种被动攻击,不会留下什么痕迹,所以在网络上通常是难以发现sniffer的。对于一般防范来说,首先要检查网络线路,确定是否有硬件接入的sniffer;其次,检查每一台机器的每一个网络通信连接端口,当sniffer存在时,被窃听机器的网络端口会被改为混杂模式(promiscuousmode),可以通过此检测自己是否被窃听,第三,对敏感数据要加密,对敏感数据的加密是安全的必要条件,其安全级别取决于加密算法的强度和密钥的强度;第四,使用安全的网络拓朴结构,Sniffer无法穿过交换机、路由器、网桥等。网络分段越细,则安全程度越大,等等。五、实验报告写明捕获操作的情况和结果,并进行分析。