ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:36.03KB ,
资源ID:3312368      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3312368.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验四 数据包嗅探工具NetXray的应用.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验四 数据包嗅探工具NetXray的应用.docx

1、实验四 数据包嗅探工具NetXray的应用实验四 数据包嗅探工具NetXray的应用 一实验目的: 二、实验内容 三、实验条件 四、实验过程五、结果及其分析NetXray使用简介NetXray是上网的好东东,NetXray/Dual-Demo,3.0.0。由于其为英文版,故很多初级网虫不太习惯它的用法。笔者现在简单介绍一下NetXray的用途和使用方法,以方便大家的使用。首先是做好准备工作,到网上下载NetXray,并安装好。选择开始-程序-NetXray运行。此时,出现缺省的几个窗口Dashboard,Capture,Packet Generator,下面会详细介绍它们。然后,我们开始了我们

2、的捕捉游戏:一、 熟悉界面:NetXray具有和其他Windows应用程序同样的友好界面: 菜单栏有六个选项,分别为文件、捕获、包、工具、窗口和帮助。工具栏依次为:打开文件(Open)、保存(Save)、打印(Print)、取消打印(Abort Printing)、回到第一个包(First Packet)、前一个包(Previous)、下一个包(Next)、到达最后一个包(Last Packet)、仪器板(Dashboard)、捕获板(Capture Panel)、包发生器(Packet Generator)、显示主机表(Host Table)、Matrix、History、Protocol

3、Distribution、Global Statistics、Alarm Log、Address Book。二、过滤报文:选择Capture菜单中Capture Filter Setting,单击Profiles选择New,进入如下对话框:在New Profile Name中输入First,以Default为模板选择OK-Done。设置过滤所有目标IP是202.120.224.6的报文,即Any-202.120.224.6开始抓包,同时用IE登陆http:/202.120.224.6,这时会发现窗口中的指针在移动,发现过滤到包后,就可以停止抓包了。选中一个目标IP是202.120.224.6的

4、报文,选择菜单条中的PacketEdit Display Filter,选择Data Pattern,选择Add Pattern,到TCP层选中8080目标端口,用鼠标选择set data,在name中输入TCP。点击OK,确定,然后在Packet中选择Apply Display Filter。以后用proxy规则过滤将只过滤目标IP是202.120.224.6、目标端口是8080的报文。三、设定端口:选择Filter SettingData Pattern,现在你可以随意设置你所需要的过滤条件。现举一例说明:过滤经过bbs(端口2323)的IP包,先选中第一行,用Toggle AND/OR调

5、整成OR,如下图:选择Edit Pattern,在弹出的对话框里设置:Packet 34 2 Hex(十六进制),从顶头开始填写 09 13,因为十进制的2323对应十六进制的0x0913,而IP包使用网络字节顺序,高字节在低地址。起名为beginbbs,单击OK,再次选择Edit Pattern,Packet 36 2 Hex 从顶头开始填写 09 13 起名为endbbs,单击OK。于是最外层的OR下有两个叶子,分别对应两个Pattern。Page四、抓ftp/pop3口令明文:NetXray所谓的高级协议过滤事实上就是端口过滤,用上面介绍的方法指定源端口、目标端口均过滤0x00 0x17

6、(23),就可以达到和指定telnet过滤一样的效果。因为telnet就是23端口,所以如果想捕捉一个非标准telnet的通信,必须自己指定端口过滤。如果是分析telnet协议并还原屏幕显示,只需要抓从server到client的回显数据即可,因为口令不回显,这种过滤规则下抓不到口令明文。用NetXray抓从client到server包,指定过滤PASS关键字。设置方法如下:先指定IP过滤规则,CaptureCapture Filter Setting设定为 any any,以最大可能地捕捉口令。然后增加一个过滤模式,Packet 54 4 Hex 0x50 41 53 53,再增加一个过滤模

7、式,Packet 54 4 Hex 0x70 61 73 73。两者是or模式,因为这种关键字在网络传输中大小写不敏感。剩下的就是等口令来了。注意,不必指定过滤特定高级协议,直接指定过滤IP协议族就可以了,用这种办法ftp/pop3口令是很容易看清楚的。其它的还有用NetXray获得OICQ好友的ip地址等应用,这些都可以从黑客教程中看到,这里就不再详细介绍,当然用好NetXray最重要的是网友们的亲身实践。IPv4就是现行的网际协议(Internet Protocol),是对应于OSI参考模型的第三层的重要协议。它是用来管理客户端和服务器端之间的报文传送的,它为上层提供不可靠、无连接的服务。

8、因为是不可靠的,所以它不能保证数据报会被成功的传送,TCP协议可以保证传输的可靠性;它提供无连接的服务说明数据并不能按顺序到达,这样可以提供更好的路由。Netxray已由笔者在第六期做过简介,现拟用Netxray解析IP协议的头部,通过实例可以更好的学习和掌握IP协议。 1 概述IP头部 版本号当前的IP版本为4,下一代为Ipv6,此处为4。 头长度报文的头部的总长度,接收端通过该域获得报文头部的结束处即数据的起点。它的单位是4字节(32bit),因为该字段长4位,所以最大值为15,即IP数据报头长度最大为60字节。最常见的为20字节没有附加选项的报头。 服务类型此字段在大多数情况下并不使用,

9、它们用来表示报文的重要程度,以便作相应的有限处理。该字段后文会详细解析。 总长度这个域指明该数据报的总长度,包括报头。其单位为字节,所以IP报的最大长度为65535字节。用该字段值减去头部字节数即得数据大小。 标识本字段是一唯一的16比特的值,用于接收端重组相关的分段。故分段的数据报含有相同的标识字段值。 标志此域用于说明该数据报是否分段,关于分段的细节在下文有详细的叙述。 段偏移如果分段,此域说明本片段在原数据报中的偏移量。一旦某数据报的分段全部到达,接收端即可根据每个片断中的偏移量的值按顺序重组。此处需要说明的一点就是有的读者要问关于对部分到达的分段的处理方式。接收端根据同一标识的分段的偏

10、移量来判断收否受到全部的数据。在全部收到这些数据之前,系统先将已收的分段存储起来。如果生存时间(见下面)的值变为零,而所有的片段没有到达,那么,所有已收到的片段也将会被丢弃,否则就进行重组。 生存时间原本的含义为时间(s)计数,生存时间的最大值为255s,其对接收转发的时间期望值为1s,现在的含义已变为跳数,即数据报可经过的最多的路由器数,IP数据报每经过一个路由器,字段的值减一,当字段值变为零时,该数据报就会被丢弃。这样可以保证IP包不会永远的循环于Internet。 协议此域指出发送该数据报的上层协议号。比如,1表示为ICMP协议,2表示为IGMP协议,6表示为TCP协议,17表示为UDP

11、协议。校验和首部检验和字段是根据IP首部计算的检验和码。它不对首部后面的数据进行计算。ICMP,IGMP,UDP和TCP在它们各自的首部中均含有同时覆盖首部和数据检验和码。为了计算一份数据报的IP检验和,首先把检验和字段置为0。然后,对首部中每个16 bit的二进制反码进行求和(整个首部看成是由一串16 bit的字组成),结果存在检验和字段中。当收到一份IP数据报后,同样对首部中每个16 bit的二进制反码进行求和。由于收方在计算过程中包含了发方存在首部中的检验和,因此首部在传输过程中没有发生任何差错时,收方计算的结果应该为全1。如果结果不是全1(即检验和错误),那么IP就丢弃收到的数据报。但

12、是不生成差错报文,由上层去发现丢失的数据报并进行重传。ICMP,IGMP,UDP和TCP都采用相同的检验和算法,尽管TCP和UDP除了本身的首部和数据外,在IP首部中还包含不同的字段。由于路由器经常只修改TTL字段(减1),因此当路由器转发一份报文时可以增加它的检验和,而不需要对IP整个首部进行重新计算。下面分别是源主机的IP地址、目的主机的IP地址、选项字段。目前,这些任选项定义如下:安全和处理限制(用于军事领域)、记录路径(让每个路由器都记下它的IP地址)、时间戳(让每个路由器都记下它的IP地址和时间)、宽松的源站选路(为数据报指定一系列必须经过的IP地址)、严格的源站选路(与宽松的源站选

13、路类似,但是它要求只能经过指定的这些地址,不能经过其它的地址)。这些选项很少被使用,因为并非所有的主机和路由器都支持这些选项。选项字段一直都是以32 bit作为界限,在必要的时候插入值为0的填充字节。这样就保证IP首部始终是32 bit的整数倍(这是首部长度字段所要求的)。 2 实例解析(其中以至少1字节为单位介绍) 如上图所示,第一部分(IP的)显示的是关于IP的版本信息,它的当前版本号为4,并说明其占有4位。第二部分也是4位长,为头部的长度,其单位是32-bit的字,本例中值为5,说明其为无选项的报头。NetXray使用说明总汇NetXray使用说明之(1)1.1.1.1-2.2.2.2-

14、3.3.3.3-4.4.4.4 这是一个ShareHub连接下的局域网 |5.5.5.5 这是一个8080端口上的http/ftp proxy|Internet启动Capture,进入Capture Setting,选择Profiles-New,以Default为模板,起名叫proxy,选择ok-Done,设置过滤所有目标IP是5.5.5.5的报文,即Any-5.5.5.5开始抓包,同时从本机使用http proxy,然后就可以停止抓包。选中一个目标IP是5.5.5.5的报文,按鼠标右键,选择编辑显示过滤,选择数据模式,选择Add Pattern,到TCP层选中8080目标端口,用鼠标选择设置

15、数据,起名目标端口8080。回去选择应用显示过滤。以后用proxy规则过滤将只过滤目标IP是5.5.5.5、目标端口是8080的报文。要是对协议分析熟悉,根本不用写这么多,以后要问NetXray的使用说明,请直奔主题,否则回答起来实在罗嗦。关键是有些人太懒惰,不乐意自己实践。标题:NetXray使用说明之(2)如何指定源端口、目标端口?1. 注意Data Pattern和Address是逻辑与的关系2. 进入Data Pattern设置页比如你想设置这样一个过滤规则,源端口是2323或者目标端口是2323的IP包,先选中第一行,用Toggle AND/OR调整成OR,因为你的逻辑表达式的最外层

16、是 OR3. 选择Add Pattern,在弹出的对话框里设置Packet 34 2 Hex从顶头开始填写 09 13,因为十进制的2323对应十六进制的0x0913,而IP包使用网络字节顺序,高字节在低地址。起名任意,比如源端口2323,确定再次选择Add PatternPacket 36 2 Hex 从顶头开始填写 09 13起名任意,比如目标端口2323,确定于是最外层的OR下有两个叶子,分别对应两个Pattern。4. 还有很多变化,但都和这个基本例子差不多,你的过滤规则可以非常复杂。最外层的OR表示它下面的所有叶子之间都是OR的关系,所以我建议当你企图建立一个非常复杂的规则的时候先写

17、出逻辑表达式再来操作,以免不必要的重复劳动。标题:NetXray使用说明之(3)如何抓ftp/pop3口令明文?NetXray所谓的高级协议过滤事实上就是端口过滤,用(2)中介绍的方法指定源端口目标端口均过滤0x00 0x17,就可以达到和指定telnet过滤一样的效果。NetXray认为telnet就是23端口,所以如果想捕捉一个非标准telnetd的通信,必须自己指定端口过滤。此外Pwin98下services文件的修改不影响NetXray认为telnet就是端口23。每次指定捕捉telnet协议,但显示的时候可能会发现有些包没有标记成telnet,而是tcp,为什么?因为这些标记成tcp

18、的包没有telnet数据区,虽然在完整的物理帧中有数据,但根据IP报头中的 ntohs( ip-tot_len ) ,对于IP报文来说没有telnet数据区。物理帧中为什么有?可能是考虑填充,我不知道是数据链路层从内核返回的时候带上来的填充,还是对端发送的时候就已经填充,在linux下用sock_packet抓包也存在同样的问题,一般情况下recvfrom返回的字节数减去各个报头长度得到数据区长度,但出现填充时就不是这样了,所以处理IP协议族时,一定要用 ntohs( ip-tot_len ) ,我写linuxkiller时才认真注意到这个问题。那么用NetXray时,不要看第三栏,那里是完整

19、的物理帧,有很多干扰信息,应该看第二栏的数据区。如果是分析telnet协议并还原屏幕显示,只需要抓从server到client的回显数据即可,因为口令不回显,这种过滤规则下抓不到口令明文。在linux下编程实现时需要考虑95个可打印字符、汉字以及32个控制字符的显示过滤问题。如果想抓telnet的口令明文,需要抓client到server的数据。Pred写的Sniff监听别人的BBS登录就象看动画,但看不到口令,应该是只抓从server到client的回显数据。nethackii可以抓pop3/ftp/telnet的口令,对于前两者很容易实现,因为有PASS关键字可以鉴别,后者稍微麻烦些,需要

20、重组。值得一提的是foxmail的邮件监视器,简直就是定时发送口令明文,用NetXray抓从client到server包,指定过滤PASS关键字,非常清楚。下面简单说一下这个设置:先指定IP过滤规则,应该只指定 any any,或者干脆不指定IP地址,以最大可能地捕捉口令。然后增加一个过滤模式,Packet 54 4 Hex 0x50 41 53 53再增加一个过滤模式,Packet 54 4 Hex 0x70 61 73 73两者是or模式,后者是因为这种关键字在网络传输中大小写不敏感,比如cuteftp发送的是pass。剩下的就是等口令来了。注意,不必指定过滤特定高级协议,直接指定过滤IP

21、协议族就可以了,用这种办法ftp/pop3口令是很容易看清楚的。因为许多ftp/pop3的口令可以telnet 23,所以.标题:NetXray使用说明之(4)unix/linux下执行clear命令究竟发送了什么字符串到终端才导致清屏效果出现,用NetXray捕捉server到client的回显数据,发现如下字符串:1B 5B 48 1B 5B 4A 可以用fprintf输出这些字符到屏幕上,结果就是导致清屏效果。对于UDP报文的源端口/目标端口过滤基本上和TCP报文的设置一样,不过这次换种方式指定:Protocol 20 2 Hex 源端口Protocol 22 2 Hex 目标端口这些都

22、是在没有使用IP选项的情况下指定,如果使用了IP选项就需要做相应改变。标题:NetXray使用说明之(5)这里的使用说明可以用于sniffer pro 2.6,因为这两个东西实际是一个公司的。虽然很多人告诉我sniffer pro比netxray强大,但是我个人觉得在协议分析方面netxray比sniffer pro要方便,虽然支持的协议少了点,但是在设置过滤规则和应用过滤规则等小操作上,显然sniffer pro没有吸取netxray的精华,这些小操作平时很难遇到,但真正做协议分析指定一些复杂的过滤规则的时候就会碰上。今天我们介绍的是如何抓取RPC报文,下面给出的办法仅仅是种尝试而已。因为R

23、PC Server使用动态端口,所以你无法进行常规的端口过滤设置,如果一定要设置可能需要尝试,具体例子请参看这里给一种不是很科学的办法:1. 指定进行IP过滤,设置Any RPC Server IP2. 指定对TCP以及UDP协议进行过滤,因为RPC Server可能的底层支持协议包括二者。3. 进入Data Pattern设置页,用Toggle AND/OR调整成OR,因为你的逻辑表达式的最外层是 OR4. 选择Add Pattern,在弹出的对话框里设置Protocol 60 8 Hex 00 00 00 00 00 00 00 02起名TCP RPC CALL5. 同4的步骤,依次选择A

24、dd Pattern,在弹出的对话框里设置Protocol 60 4 Hex 00 00 00 01起名TCP RPC REPLYProtocol 32 8 Hex 00 00 00 00 00 00 00 02起名UDP RPC CALLProtocol 32 4 Hex 00 00 00 01起名UDP RPC REPLY这里给的办法仅仅代表一种思路,如果你发现并没有抓住某个特定RPC SERVER的报文,可以自行调整过滤规则。要理解这个过滤规则,需要RPC本身的知识,可以参看。我曾经想设置远程程序号的过滤规则,但发现RPC REPLY报文中没有固定字段对应远程程序号,只好放弃。如果你只想

25、抓RPC CALL报文,可以考虑这个思路。标题:NetXray使用说明之(6)-捕捉oicq message报文NetXray发包前可以在decode状态下编辑,sniffer pro 2.6却不象NetXray那样善解人意,只能进行二进制编辑。sniffer pro的Add Pattern里的TAB键极其混帐,并且这里也不提供decode支持。始终不能理解这些地方。不过破解版的NetXray在decode时有些地方对不准,菜单window也不时失灵。暂略(回头补吧,没时间了)今天讲讲oicq message报文的捕捉。1. 首先设置进行IP/UDP报文过滤,IP/TCP暂时就不必了,因为oi

26、cq message报文多是IP/UDP报文,我还没有看到过IP/TCP,应该是没有的。2. 根据需要在Address/IP Include里设置通信双方的IP,假设我们需要捕获所有与本机oicq.exe通信的oicq message报文,设置成 myIp Any3. 进入Data Pattern设置页,用里的办法指定( ( srcPort = 4000 ) & ( dstPort != 8000 ) )|( ( srcPort != 8000 ) & ( dstPort = 4000 ) )第一条的意思是本机向别人发消息,第二条是别人向本机发消息,之所以排除掉8000,你可以进入oicq c

27、hat room看看此时涉及的端口。那么为什么不指定两头都是4000呢,因为如果过了透明网关之类的,UDP RELAY的时候会改变源端口,一般都不会是4000了。反过来,如果你发现一个入包的源端口不是4000,他/她应该在类似sygate的代理后面。不过此时UDP DATA PIPE已经建立,即使他/她在sygate后面,还是可以利用刚才抓到的IP/PORT和他/她通信,意味着很多事情都可能发生。这里假设都通过oicq.exe通信,如果用自己写的程序与oicq.exe通信,源端口不必非是4000,可以任意指定。4. 算了,还是详细说说条目3中高级过滤规则的指定a. 用Toggle AND/OR

28、把最上层调成ORb. 选中OR,然后Add AND/OR增加两个上去,分别用Toggle AND/OR调成ANDc. 选中第一个AND,然后Add Pattern,选中增加的Pattern,选择Packet 34 2 Hex,从1开始输入 0F A0,就是0x0fa0的意思,srcPort = 4000d. 选中第一个AND,然后Add NOT,选中增加的NOT,用Toggle NOT确认已经调成NOT,选中NOT,然后Add Pattern,选中增加的Pattern,选择Packet 36 2 Hex,从1开始输入 1F 40,就是0x1f40的意思,dstPort != 8000e. 选中

29、第二个AND,重复类似c、d的步骤,分别指定srcPort != 8000以及dstPort = 4000f. 选中最上层的OR,看看summary,是否符合你预想的逻辑表达式,如果不符合,继续调整,直至正确。虽然这里是针对oicq.exe设置高级过滤规则,但这是一个很完整而又略显复杂的设置说明,对是个很好的补充。标题:NetXray使用说明之(小插曲)-分析netants的1975问题设置过滤规则为:myIp - any:1975设置捕获IP/TCP协议,注意不要指定捕获HTTP协议,NetXray是根据端口区分协议的,你指定HTTP协议,就只捕获80端口的报文了。过一段时间1975上的连接自动切断。在本机用netstat -a 或者 netstat -na 看到如下信息:TCP scz:1475 ad2-:1975 ESTABLISHEDTCP 192.168.8.90:1475 216.37.13.140:1975 ESTABLISHED标题:NetXray使用说明之(7)-LanExplorer 3.5下的过滤规则设置作者:小四 主页日期:2000-08-28 20:21-下面是咱们的大放厥词:LanExplorer 3.5,9x/NT/2K下的协议分析软件,7MB,破解如下:安装完成后,用HEXEDIT打

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1