精华内容
下载资源
问答
  • Wireshark 分析ping报文

    万次阅读 多人点赞 2016-10-30 00:57:47
    wireshark 分析ping报文使用ping命令来获取wwww.baidu.com网站的ICPM报文,其结果如下图:可以看到,我们生成了8个报文(4个请求报文和4个应答报文),下面我们来分析第一个报文,首先,请求报文如下:对于该报文的...

    wireshark 分析ping报文

    使用ping命令来获取wwww.baidu.com网站的ICPM报文,其结果如下图:

    这里写图片描述

    可以看到,我们生成了8个报文(4个请求报文和4个应答报文),下面我们来分析第一个报文,首先,请求报文如下:

    这里写图片描述

    对于该报文的整个描述如下:

    这里写图片描述

    这个请求报文共74字节,其中:

    前14个字节是以太网报文的一部分(由于网卡不会将其整个以太网帧格式数据提供出来,因此Wireshark只能捕捉到一部分以太网的数据),分别为本机的MAC地址和路由器的MAC地址:

    这里写图片描述

    由上图可知,其MAC地址的第一字节的最后两个bit位:IG位(individual/group,第7个bit位)为0表示这是一个单播MAC地址(unicast MAC address),LG位(local/global,第8个bit位)为0表示这是一个厂家出厂默认的MAC地址,为1时表示这是用户自己设置的MAC地址。

    紧接着源MAC地址和目标MAC地址的是以太网封装的数据格式类型,这里的值为0x0800,表示就接下来的数据是IPV4报文的数据。

    接下来的20个字节为IP报文:

    这里写图片描述

    这里写图片描述

    关于ip报文的格式如下:

    这里写图片描述

    其中,ip报文中的第一个字节为01000101,前1/2个字节(即0100)表示版本号(为4),接下来的1/2字节为5,表示报文长度为5(此值表示长度为5个32位的位数,即5*32/8=20个字节),关于版本和头部字节长度的解释如下:

    Version

    Version: Identifies the version of IP used to generate the datagram.For IPv4, this is of course the number 4. The purpose of this field is to ensure compatibility between devices that may be running different versions of IP. In general, a device running an older version of IP will reject datagrams created by newer implementations, under the assumption that the older version may not be able to interpret the newer datagram correctly.

    Internet Header Length (IHL)

    Internet Header Length (IHL): Specifies the length of the IP header,in 32-bit words. This includes the length of any options fields and padding. The normal value of this field when no options are used is 5 (5 32-bit words = 5*4 = 20 bytes). Contrast to the longer Total Length field below.

    再往下,ip报文的第二个字节为服务类型(Type of Service ,TOS)其值为00000000,服务类型字段声明了数据报被网络系统传输时可以被怎样处理。可以全为0,若全为0则表示一般服务。该字段并没有如初始定义被广泛使用,大部分主机会忽略这个字段。关于该字段的解释如下:

    Type Of Service (TOS)

    Type Of Service (TOS): A field designed to carry information to provide quality of service features, such as prioritized delivery, for IP datagrams. It was never widely used as originally defined, and its meaning has been subsequently redefined for use by a technique called Differentiated Services (DS). See below for more information.

    第三,四个字节为003c,表示总长度为60字节,即整个数据报的长度,最大长度为65535字节。关于其解释:

    Total Length (TL)

    Total Length (TL): Specifies the total length of the IP datagram, in bytes. Since this field is 16 bits wide, the maximum length of an IP datagram is 65,535 bytes, though most are much smaller.

    第5,6字节为0x4506,用来唯一地标识主机发送的每一份数据报。IP软件在存储器中维持一个计数器,每产生一个数据段,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,因为IP是无连接服务,数据报不存在按序接收的问题,当数据报由于长度,超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后各数据报片最后能正确的重装成为原来的数据报。关于其解释:

    Identification

    Identification: This field contains a 16-bit value that is common to each of the fragments belonging to a particular message; for datagrams originally sent unfragmented it is still filled in, so it can be used if the datagram must be fragmented by a router during delivery. This field is used by the recipient to reassemble messages without accidentally mixing fragments from different messages. This is needed because fragments may arrive from multiple messages mixed together, since IP datagrams can be received out of order from any device. See the discussion of IP message fragmentation.

    第7字节为0x00,目前只有前3位有意义,其解释:

    这里写图片描述

    第8字节为片偏移,其值为0,片偏移指出较长的分组在分片后,某片在原分组的相对位置。关于片偏移的解释:

    Fragment Offset

    Fragment Offset: When fragmentation of a message occurs, this field specifies the offset, or position, in the overall message where the data in this fragment goes. It is specified in units of 8 bytes (64 bits). The first fragment has an offset of 0. Again, see the discussion of fragmentation for a description of how the field is used.

    第9个字节值为128,表示生存期,用来设置数据报最多可以经过的路由器数。关于其解释:

    Time To Live (TTL)

    Time To Live (TTL): Short version: Specifies how long the datagram is allowed to “live” on the network, in terms of router hops. Each router decrements the value of the TTL field (reduces it by one) prior to transmitting it. If the TTL field drops to zero, the datagram is assumed to have taken too long a route and is discarded.

    第10个字节为0x01,表示IP层所封装的上层协议类型,如ICMP(1)、IGMP(2) 、TCP(6)、UDP(17)。解释如下:

    这里写图片描述

    第11,12个字段为0xe351,表示头部校验和,其根据头部中每个16比特进行二进制反码求和。其解释如下:

    Header Checksum

    Header Checksum: A checksum computed over the header to provide basic protection against corruption in transmission. This is not the more complex CRC code typically used by data link layer technologies such as Ethernet; it’s just a 16-bit checksum. It is calculated by dividing the header bytes into words (a word is two bytes) and then adding them together. The data is not checksummed, only the header. At each hop the device receiving the datagram does the same checksum calculation and on a mismatch, discards the datagram as damaged.

    下面来讲解校验和的计算,其计算是将校验和的16bit位置0,将整个IP头部字段按照16bit位来相加,如果有进位,则将其进位放在16bit位的最小位,最后将加的结果取反即为校验和,其规则与下面的类似:

    4500 -> 0100010100000000
    003c -> 0000000000111100
    453C -> 0100010100111100 /// First result

    453C -> 0100010100111100 // First result plus next 16-bit word.
    1c46 -> 0001110001000110
    6182 -> 0110000110000010 // Second result.

    6182 -> 0110000110000010 // Second result plus next 16-bit word.
    4000 -> 0100000000000000
    A182 -> 1010000110000010 // Third result.

    A182 -> 1010000110000010 // Third result plus next 16-bit word.
    4006 -> 0100000000000110
    E188 -> 1110000110001000 // Fourth result.

    E188 -> 1110000110001000 // Fourth result plus next 16-bit word.
    AC10 -> 1010110000010000
    18D98 -> 11000110110011000 // One odd bit (carry), add that odd bit to the result as we need to keep the checksum in 16 bits.

    18D98 -> 11000110110011000(注意这里的进位规则)
    8D99 -> 1000110110011001 // Fifth result

    8D99 -> 1000110110011001 // Fifth result plus next 16-bit word.
    0A63 -> 0000101001100011
    97FC -> 1001011111111100 // Sixth result

    97FC -> 1001011111111100 // Sixth result plus next 16-bit word.
    AC10 -> 1010110000010000
    1440C -> 10100010000001100 // Again a carry, so we add it (as done before)

    1440C -> 10100010000001100
    440D -> 0100010000001101 // This is seventh result

    440D -> 0100010000001101 //Seventh result plus next 16-bit word
    0A0C -> 0000101000001100
    4E19 -> 0100111000011001 // Final result.

    最后取反即可,我们可按照这个规则来计算校验和(上例展示了校验和的计算技巧,这里就没有针对本报文做演示计算过程了)。

    接下来的13,14,15,16和17,18,19,20字节分别表示源IP地址(c0 a8 01 08,192.168.1.8)和目标IP地址(77 4b d9 6d,119.75.217.109),解释如下:

    Source Address&Destination Address

    Source Address: The 32-bit IP address of the originator of the datagram. Note that even though intermediate devices such as routers may handle the datagram, they do not normally put their address into this field—it is always the device that originally sent the datagram.

    Destination Address: The 32-bit IP address of the intended recipient of the datagram. Again, even though devices such as routers may be the intermediate targets of the datagram, this field is always for the ultimate destination.

    以上为IP报文头部的20个字节的解释,下面便是IP报文的数据段了,也就是ICMP报文了,如下:

    这里写图片描述

    这里写图片描述

    其中第一个字节08表示类型,其表示Echo Request,关于该字段的解释:

    Type

    Type: Identifies the ICMP message type. For ICMPv6, values from 0 to 127 are error messages and values 128 to 255 are informational messages. Common values for this field are given in the table in the topic on ICMP message classes and types.

    第二个字节为0,表示Code,关于其解释:

    Code

    Code: Identifies the “subtype” of message within each ICMP message Type value. Thus, up to 256 “subtypes” can be defined for each message type. Values for this field are shown in the individual ICMP message type topics.

    接下来的第3,4字节(0x4d56)表示检验和,其解释如下:

    Checksum: 16-bit checksum field that is calculated in a manner similar to the IP header checksum in IPv4. It provides error detection coverage for the entire ICMP message. Note that in ICMPv6, a pseudo-header of IPv6 header fields is prepended for checksum calculation; this is similar to the way this is done in TCP.

    接下来的第5,6字节(0x0001)和第7,8字节(0x0005)分别表示标识码和序列码。

    接着后面的32字节我们发送的数据,可以看到其数据为abcdefghijklmnopqrstuvwabcdefghi。

    返回报文同理可分析。

    *注:本文的引用部分来自*The TCP/IP Guide: A Comprehensive, Illustrated Internet Protocols Reference by Charles M. Kozierok

    展开全文
  • 测试中,经常需要对比不同场景下的报文的差异,比如AP1对某款STA有兼容性问题,而AP2对该款STA没这种问题,此时就需要对关联过程的报文进行对比分析。由于802.11报文中涉及的字段比较多,如果人眼逐个对比,不仅效率...

    一、背景

    测试中,经常需要对比不同场景下的报文的差异,比如AP1对某款STA有兼容性问题,而AP2对该款STA没这种问题,此时就需要对关联过程的报文进行对比分析。由于802.11报文中涉及的字段比较多,如果人眼逐个对比,不仅效率低,而且容易出错。
    本文就简单说明下具体的报文对比方法。

    二、具体操作

    一般操作顺序
    1、右键——>全部展开(在wireshak展示报文字段内容部分,实际上这一步不执行也可以,但最后3导出的操作要跟着调整);
    2、文件——>导出分组解析结果——>为纯文本;
    3、根据需要,选下Packet Range,填上文件名*.txt即可(如果步骤1没有展开,则需要Packet Format——>Packet Details(All Expanded));

    1-3步可以将wireshak报文导出为纯文本,和wireshark全部展开之后看到的效果完全一样。
    

    4、按1-3执行,获取待对比的报文,此时,可以使用code compare等工具merge一下即可。

    三、总结

    小技巧,有时可解决大问题。

    展开全文
  • 本文基于Wireshark抓取https报文分析POST报文 首先,抓取报文前,需要对Wireshark配置TLS通讯密钥,否则抓取不到,因为信息加密了,具体步骤可参考: ... Wireshark抓包结果如下 Frame 是wireshark自己定义的 ...

    本文基于Wireshark抓取https报文, 分析POST报文

    首先,抓取报文前,需要对Wireshark配置TLS通讯密钥,否则抓取不到,因为信息加密了,具体步骤可参考:

    https://blog.csdn.net/Enderman_xiaohei/article/details/99441895

    Wireshark抓包结果如下

    Frame 是wireshark自己定义的

    Ethernet II, 数据链路层, 以太网

    Internet Protocol, 网络层, IP层

    Transmission Control Protocol, TCP层

    [6 Reassembled TCP Segments]  TCP层接收到上层的数据后拆包

    Transport Layer Security     TLS层,加密层

    [2 Reassembled TLS segments]        这个是加密握手信息, 需要在WireShark配置密钥文件才能捕获到,这里的密钥是随机生成的

    Hypertext Transfer Protocol       HTTP层

    Line-based text data: text/plain   #数据# POST请求数据

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • 一、什么是HTTPS: HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道... 它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。 H...

    一、什么是HTTPS:

    HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。 它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。

    HTTPS实际上应用了Netscape的安 全全套接字层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使 用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X。509数字认证,如果需要的话用户可以确认发送者是谁。

    二、HTTPS和HTTP的区别:

    https协议需要到ca申请证书,一般免费证书很少,需要交费。http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议 http和https使用的是完全不同的连接方式用的端口也不一样:前者是80,后者是443。

    http的连接很简单,是无状态的 HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议 要比http协议安全。

    三、比较操作步骤:

    ***https传输中抓包***

        1.开启wireshark并配置受监听的网卡,点击捕获->选项


     

        2.选择正在使用的网卡,点击开始。


     

        3.电脑中开启浏览器或其他应用的时候都会有流量产生,有流量产生就会被wireshark捕捉到,下图为刚刚开启wireshark后的捕捉状态,会抓到各种各样的流量,稍后我们会进行过滤操作。


     

        4.浏览器中输入带有https的网址,让wireshrk可以抓到包。


     

        5.再次返回到wireshark页面,然后在应用显示过滤器一栏中输入过滤语句,本例中输入ip.dst == 192.168.12.93,即指定wireshark只列出目标地址是192.168.12.93的流量。


     

        6. 选择任意协议为TLSv1的流量后右击选择追踪流->TCP流,发现数据均为加密,根本看不懂。接下来看看没有加密的HTTP传输是什么样子的。


     

    ***http传输中抓包***

        1. 前三步与https传输中抓包是同样的操作,我们只需要在浏览器中输入一个是HTTP请求的连接即可,以简书的登录地址为例


     

        2.wireshark抓包分析后的效果,注意看下图箭头所指的流量均给出了请求的具体资源地址,而https传输的时候只提示为“Application Data”


     

        3. 接下来继续看,选择资源为POST /sessions HTTP/1.1的流量选择追踪流->TCP流,可以清晰的看到用户的登录名以及登录密码均可以被嗅探了。


     

    最后发现,简书的登录操作中密码竟然没有进行加密处理就传输了...

    转载于:https://www.cnblogs.com/tdcqma/p/5714578.html

    展开全文
  • MIB Browser& Wireshark   Table View 1. Address : 172.16.72.134 (将我所在主机的IP添加到172.16.72.134 的SNMP中) 2. OID: .1.3.6.1.2.2.1 (或点击ifTable) 3. Operations : Table View 4. Go.. 结果:...
  • FTP数据报文分析 从数据6号帧中我们可以看到“USER administrator”,这个是用户名;从数据9号帧中我们可以看到“PASS Admin.123”,这个是密码; FTP数据重组 数据重组步骤一:选中TCP流进行过滤 数据重组步骤二:出去...
  • 实验2 使用Wireshark嗅探器分析网络协议 实验日期 实验目的 掌握嗅探器工具Wireshark的下载和安装方法 掌握Wireshark的简单使用方法了解抓包结果分析方法 掌握封装这一操作的具体含义以及TCP/IP体系结构的分层了解...
  • MSTP模拟实验搭建及测试报告、Wireshark抓包分析,内附:拓扑结构、环境配置、测试结果截图、MSTP报文等,用于学习交流。
  • 实验 2 使用 Wireshark 嗅探器分析网络协议 实验日期 实验目的 1 掌握嗅探器工具 Wireshark 的下载和安装方法 2 掌握 Wireshark 的简单使用方法了解抓包结果分析方法 3 掌握封装这一操作的具体含义以及 TCP/IP ...
  • 0. 安装Wireshark,但是默认情况下,Wireshark无法捕获127.0.0.1的报文 解决方案:安装npcap,替换默认的winpacp,重新启动Wireshark,就可以看到一个名字中含有Loopback的接口,针对它来抓包就行了 1. 用telnet...
  • HTTP报文抓包分析

    2019-06-03 23:15:21
    使用wireshark在使用浏览网页时进行抓包,其中HTTP请求报文如下: 二、具体分析 对HTTP报文进行分析: GET /success.txt HTTP/1.1 HTTP请求行,请求方式GET / 请求路径 success.txt / HTTP协议版本:HTTP/1.1...
  • 1. 对以太网帧、ip数据报、TCP报文...设置wireshark的过滤条件为”ip.addr == 202.119.224.202”,得到下面结果: 双击第一条,得到详细信息: 从上往下,依次对应tcp/ip五层模型中的数据链路层、网络层和传输层。1.1
  • wireshark抓包分析之链路层与网络层从ping开始链路层之以太网封装ip首部开启ping程序,开始抓包由一个ping的结果引出来的两个协议ARP ICMPARP:地址解析协议原理抓包结果ICMP:Internet控制报文协议抓包结果总结 ...
  • wireshark抓包来分析TCP三次握手和四次挥手 建议首先了解三次握手和四次挥手的过程再分析网络包信息:计算机网络传输层—TCP连接的建立和终止(详解三次握手四次...第一次握手报文分析: 也就是说,第一个包中SYN位
  • 使用libpcap分析网络报文

    千次阅读 2011-09-29 10:22:34
    最近要对tcpdump抓到的报文进行分析,开始的时候用wireshark的命令行工具tshark把分析结果保存成文本文件然后再用正则表达式匹配需要的字段,这样好处是不用自己分析协议,只要抓取需要的字段就行了,缺点是相当地...
  • wireshark过滤

    2015-11-22 15:22:16
    Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。 过滤器的区别  捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中。需要在开始捕捉前设置。  显示过滤器(DisplayFilt
  • 加深对网络协议的理解通常可以通过观察协议的运行和不断调试协议来大大加深,具体而言,就是观察两个协议实体之间交换的报文序列,深入了解协议操作的细节,执行某些动作,然后观察这些动作产生的结果。这可以在仿真...
  • 掌握并熟悉Wireshark的基本操作,了解网络协议实体间的交互以及报文交换。 分析协议
  • 如果有人问,在车载以太网测试中,遇到最头痛的问题是什么,那我肯定会说:是TCP/IP测试结果分析。庞大的测试条目,浇灭我的激情,穿插的Upper Tester报文,消磨我的斗志。不过自从用了这款基于Wireshark的Upper ...
  • 对DHCP服务器回应报文的抓包实验探究 ...对于DHCP的回复报文到底是广播还是单播的方式回复,这在之前的几次用wireshark抓包实验中都得到了验证,结果是既有单播也有广播,那么我们不妨先假定DHCP的回复方式是广播。
  • 一、安装 ethereal 软件 使用wireshark 二、捕捉数据包,验证数据帧、IP 数据报、TCP 数据段的报文格式...四、捕捉 ping 过程中的 ICMP 报文分析结果各参数的意义。 1.ping baidu.com以获得ICMP报文 2.筛选报文 3
  • 如果有人问,在车载以太网测试中,遇到最头痛的问题是什么,那我肯定会说:是TCP/IP测试结果分析。庞大的测试条目,浇灭我的激情,穿插的Upper Tester报文,消磨我的斗志。不过自从用了这款基于Wireshark的Upper ...
  • 一、实验目的 (1) 熟悉 ethereal 的使用 (2) 验证各种协议数据包格式 ...(4) 捕捉 ping 过程中的 ICMP 报文分析结果各参数的意义。 (5) 捕捉 tracert 过程中的 ICMP 报文,分析跟踪的路由器
  • 目录 实验目的 实验内容 实验过程 对ICMP 报文进行具体分析 ...实验结果 ... 分析Ethernet V2标准规定的MAC层帧结构,了解IEEE802.3标准规定的MAC...1.在PC机上运行WireShark截获报文,在显示过滤器中输入ip.addr==(...
  • TLS1.3抓包分析(1)——ClientHello

    千次阅读 2019-03-12 19:02:20
    抓包使用的是WireShark2.6.7,抓包内容为https://tls13.crypto.mozilla.org/(Mozilla的TLS1.3测试页面),浏览器为chrome(需开启TLS1.3),这里我先给出抓包结果: 本次从握手的第一步开始分析,即ClientHello,...
  • TLSv1.2协议 首先明确TLS的作用三个作用 (1)身份认证 通过证书认证来确认对方的身份,防止中间人攻击 (2)数据私密性 ...下面是使用wireshark抓包的结果,其中1-4是握手阶段,5是指握手后双方使用...
  • 如果是在Linux服务器,我则会用tcpdump抓下包,然后用wireshark分析。 关于网络抓包 只要我们进行网络请求,自然会有数据包的产生,通过抓取数据包,可以知道请求的数据是什么,响应回来的结果又是什么。 ...

空空如也

空空如也

1 2
收藏数 31
精华内容 12
关键字:

wireshark报文分析结果