あなたのクイックスタートとWiresharkのパケットキャプチャ

序文

キャプチャについておそらくChromeブラウザは、ネットワークパネルが付属して、我々は通常(F12は、ブラウザ上にポップアップ表示されます)を使用します。人々の大半はフィドラー、フィドラーは非常に良いキャプチャツールで使用もあります。しかし、それだけでHTTPとHTTPSの両方の分析をキャプチャすることができます。あなたが(例えば、TCP 3ウェイハンドシェイクなど)のレベルのプロトコル解析を低くしたい場合は、私たちのツールのWiresharkを使用する必要が今日、同じことは、特殊な高速なハードウェア・ソフトウェアで、オープンソースとフリー中国の言語パックが付属しています。

インストールと基本的な使い方

Wiresharkのオープンソース住所:https://github.com/wireshark/wireshark
Wiresharkのダウンロード:https://www.wireshark.org/download、その歴史のバージョンがあります。今日はずっとそれへのインストール大法「次」のデフォルトに、最新バージョン3.2.0をインストールします。デフォルトをインストールしたら中国語版です。

スタートキャプチャ

表示フィルタ


あなたは、単に彼らが分析するために欲しいものを見つけることができない、非常に迅速にジャンプ内容の最初の部分があります。ここでは、我々が見たいものだけを表示するように表示フィルタを使用することができます。
表示フィルタに入力しhttp.request.method == "GET"、その後、Chromeブラウザを使用してアクセスhttp://fanyi-pro.baidu.com/indexを(HTTPが故意にウェブサイトを探して)

GETリクエストをフィルタリングすることに加えて、使用するディスプレイフィルタは、次のとおりです。

  • TCP、UDPのみ表示UDPを表す前者のみ表示TCPを示しています。また!TCP、TCPは、ディスプレイのほかに表していることができます。また、TCPまたはUDPすることができ、TCPは、ディスプレイとUDPを表します。
  • ip.src == 192.168.1.120と208.101.60.87 == ip.dst、ip.srcはクライアントIP(送信元アドレスIP)ことを示し、ip.dstは、そのサーバのIP(宛先アドレスIP)を示し、
  • tcp.port == 80 || udp.srcport == 80 ,tcp.port 表示tcp的端口为80,udp.srcport表示udp源端口为80。||表示或者和or等效,&&和and等效。(还有tcp.srcport、tcp.dstport等等)

捕获过滤器

显示过滤器是指捕获了所有经过网卡的封包,然后在显示的时候进行过滤显示。明显,如果流量过大会导致捕获的内容过多,筛选变得卡顿。所以,我们可以在捕获阶段的时候就过滤掉无用的流量。

  • udp、tcp 前者表示只显示tcp,后者表示只显示udp。也可以!tcp,表示显示除了tcp之外的。还可以tcp or udp,表示显示tcp和udp。
  • host 192.168.1.110 ,表示只捕获ip地址为192.168.1.110的封包(这里的语法和显示过滤器不一样,请注意)
  • dst port 80 or port 443、not port 53,表达端口的过滤(这里的语法和显示过滤器不一样,请注意)

着色规则

我们看到第一部分内容,封包列表有各种不同的背景色。其不同颜色代表不同意义。淡蓝色代码udp协议,红字黑底代表有问题的封包。更多具体规则可 识图->着色规则

TCP/IP四层协议


下面的动图是各层对应的数据

从上面的动图我们可以发现,应用层到传输层再到网络层到以太网层,其对应的数据包也在对应的往前移。
我们可以想象一下,应用层数据往上传递,每经过一层就包上一个新得信封。等数据送到目的主机,然后每往下一层就拆一个信封,最后拆到应用层也就是最开始得数据了。

TCP三次握手

对于三次握手我想很多人只听过没见过,那么今天我们就来见见。
三次握手是过程: 1、客户端发送同步SYN标志位和序列号Seq(a) 2、服务器回复SYNACK、Seq(b)、Ack(a+1)3、客户端回复SYN、Seq(a+1)、Ack(b+1)

那么在Wireshark中怎么观察呢。我们还是以http://fanyi-pro.baidu.com/地址为例。首先打开Chrome输入地址,F12打开浏览器的Network面板,刷新页面在面板中找到服务器IP。 打开Wireshark开始抓包,并在显示过滤器只显示IP地址对应的数据。


TCP四次挥手

除了三次握手,还有对应的四次挥手。不知道是不是我网络不好,“挥手”的时候老是出现重传错误干扰(就是前面说的那种红字黑底封包)。下面是我本地环境自己写代码的抓包效果。
与握手不同是挥手是发送FIN标志位断开连接,其他都差不多。

Wireshark抓包如下

UDP协议

Wireshark除了可以抓包TCP同样也可以对UDP进行抓包。

其实这个抓取的是BACnet报文,而这个BACnetIP正是基于UDP的一个协议。

ModBusTcp协议

结束

授人以鱼不如授人以渔。Wireshark不仅可以对我们常见的HTTP、HTTPS、TCP等协议进行抓包分析,还能对工业上的BACnet、ModBus、S7Communication和其他PLC协议进行报文抓包分析。如这位大佬就通过抓包破解了西门子PLC没有公开的协议。
希望有兴趣的朋友可以一起来完善IoTClient组件

参考

おすすめ

転載: www.cnblogs.com/zhaopei/p/12152139.html