在上一篇博文中,主要讲解了wireshark的界面,以及如何抓包和过滤所需要的包。这篇博文主要讲解一下如何分析捕获的数据包。

回顾上一篇的内容:

抓取封包

启动wireshark,在接口列表中选择网卡接口名,然后点击开始,则在此接口上抓包。菜单:Capture -> Options 可以配置高级属性,但是现在我们先不管。

选择一个接口,然后点击工具栏的"Start",就可以看到捕获的封包。Wireshark默认会捕获该接口所有发送和接收的封包。

如果要停止捕获,点击工具栏的"Stop"(红色的小方块),即可。如果不停止,一直会不断的抓取数据包,可能导致我们的内存吃紧。

过滤封包

默认情况下,Wireshark会捕获大量的封包,以至于我们无法找到所需要的封包。这时就要用到wireshark过滤器。wireshark提供两种类型的过滤器,一种是捕获过滤器,一种是显示过滤器。

最基本的方式就是使用窗口顶端的显示过滤器,输入过滤表达式(或者点击Expression按钮,然后选择一个过滤表达式)并点击输入框后的"Apply"或者按下回车。

同样,我们也可以点击菜单中的Analyze -> Display Filters来自定义我们的过滤条件。

另一个很有趣的事情是,在封包列表窗口,选择一个封包然后右键,会出现follow TCP stream或follow UDP stream(SSL我是没见过)可选,然后follow进去。

解释一下:Follow Stream是什么意思呢?也就是会话记录,服务器和客户端之间的全部会话记录。

新手上路通常都会疑问,这么多请求我应该follow哪个封包?实际看哪个都是一样。follow进入就是一个历史页面,进入了再慢慢找你需要的数据。你会发现显示过滤表达式被自动生成,wireshark仅显示构成此会话的所有封包。

这里还有一个更好玩的,如何构造显示过滤表达式。

假设我要捕获所有以首部Flags标志为ACK的封包,怎么办呢?

TCP/IP协议栈(DOD模型)

wireshark-以太网帧示例

wireshark是严格遵循OSI模型规范的。我们知道以太网是实现在数据链路层和物理层的。


IP数据报

wireshark-IP数据报示例


TCP报文段

wireshark-TCP报文段示例

我们可以很清晰的看到,wireshark中的首部数据与OSI模型中各协议的首部格式是相对应的。所以,利用wireshark来学习网络,那是非常直观有效的。

wireshark 实战演练

实验一:网络中明码传输的危险性

通过明码传输的protocol和工具相当多,典型的就是telnet,ftp,http。我们拿telnet做这次实验。假设我以telnet方式登录到我的linux服务器,然后通过wireshark抓包,以抓取账号和密码信息。

1、首先启动wireshark,并处于Capture状态。然后通过telnet远程登录我们的linux服务器。

进入登录界面后,输入账号和密码登入系统。

2、接下来停止wireshark的截取封包的操作,执行快捷方式的"Stop"即可。

不过,捕获的信息非常多,这个时候可以利用Display Filter功能,过滤显示的内容,如下图所示,点击Expression,然后选择过滤表达式。这里,我们选择TELNET即可。

表达式确定之后,选择"Apply",就可以过滤出只包含TELNET的封包

来,我们查看一下整个telnet会话的所有记录, wireshark可以记录会话记录(就像我们聊QQ时,"QQ聊天记录"一样),任意找到一个telnet封包,右键找到"Follow TCP Stream",wireshark就会返回整个会话记录。

OK, 我们看到以下这些数据信息,红色的部分是我们发送出去的DATA,蓝色的部分是我们接收到的DATA。 , 告诉我, 你看到了什么

为了更准确的看清楚,我们再次仅筛选出我们发送出去的DATA。或者仅接收到的DATA。

从这里,我们可以确切的抓到账号和密码信息。login:wireshark  Password:123456,除了这些,我们还可以更进一步知道别人在看什么网站,或是私人文件,隐私将毫无保障。

注:为了避免这些情况,防止有心人监测到重要信息,可以使用SSH,SSL,TSL,HTTPS等加密协议对重要数据进行加密,然后再到网络上传输,如果被人截取下来,看到的内容也是被加密的。

实验二:HTTP Protocol

目的:通过观察HTTP协议,练习如何过滤出自己需要的数据,并能够清楚的知道TCP/IP实际的运作方式。

这里,我们采用"(Capture Filter)捕获过滤",菜单栏 Capture -> Options

跟我们相关设定的有如下部分,Use promiscuous mode on all interfaces, Capture Filter, 其实我们需要设定的仅仅是Captrue Filter

Capture Filter使用libpcap filter语言,详细的语法可以参考tcpdump的man页面( http://www.tcpdump.org/tcpdump_man.html )

我们这里不需要使用这么复杂的过滤表达式,直接用wireshark已经建立好的常用功能HTTP TCP port(80)即可。首先点击"Capture Filter"按钮,然后选择HTTP TCP port(80), OK之后选择"Start"开始捕获封包。

这里以浏览器访问www.baidu.com首页为例, 来看看访问一个网页会发生什么?

回到wireshark,看到已经抓取了很多封包。OK,前面我们已经交代了TCP/IP协议栈,这里就不再累述。

看下面这幅图中,红色的框框,这就是TCP在做三次握手,建立连接。

接下来这一行,就是Client向server作出request。

我们可以在封包详细信息列表框中,针对于每一层查看,更清楚的了解每一层的运作模式,同理也可以使用Follow TCP Stream

https://community.emc.com/message/818739#818739

http://openmaniak.com/cn/wireshark_use.php

http://blog.shaolin.tw/2008/03/wireshark.html

http://buzai.me/post-107.html

http://man.lupaworld.com/content/network/wireshark/Introduction.html#whatis

转载于:https://blog.51cto.com/skypegnu1/1540728

学习Wireshark之二:数据包分析相关推荐

  1. Wireshark数据包分析——Teardrop泪滴攻击

    本文仅做数据包学习使用! 一.泪滴攻击原理 Teardrop攻击是一种拒绝服务攻击,是一种针对IP协议的攻击方法,顾名思义,Teardrop攻击是一种令人落泪的攻击手段,可见其破坏威力很强大.它利用发 ...

  2. 《Wireshark数据包分析实战(第2版)》目录—导读

    版权声明 Wireshark数据包分析实战(第2版) Copyright © 2011 by Chris Sanders. Title of English-language original:Pra ...

  3. Wireshark数据包分析——Slammer蠕虫攻击

    本文仅做数据包学习使用! 一.Slammer蠕虫概述 SQL Slammer (2003年) Slammer 是一款DDOS恶意程序, 透过一种全新的传染途径, 采取分布式阻断服务攻击感染服务器, 它 ...

  4. Wireshark数据包分析(一)——使用入门

    Wireshark简介: Wireshark是一款最流行和强大的开源数据包抓包与分析工具,没有之一.在SecTools安全社区里颇受欢迎,曾一度超越Metasploit.Nessus.Aircrack ...

  5. [网络安全课程实验]:WireShark数据包分析

    目录 实验:WireShark数据包分析 一.实验目的 二.实验环境 三.实验内容与实验要求 四.实验过程与分析 TCP三次握手 第一次握手 第二次握手 第三次握手 UDP 五.实验结果总结 实验:W ...

  6. 【工具篇】07. DNS 域名解析 ❀ 数据包分析工具 Wireshark

    [简介]DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机 ...

  7. wireshark 十六进制 查看_Wireshark数据包分析(一)——使用入门

    Wireshark简介: Wireshark是一款最流行和强大的开源数据包抓包与分析工具,没有之一.在SecTools安全社区里颇受欢迎,曾一度超越Metasploit.Nessus.Aircrack ...

  8. Wireshark数据包分析之DHCP协议包解读

    *此篇博客仅作为个人笔记和学习参考 DHCP协议包格式 DHCP报文类型 DHCP Discover.DHCP Offer.DHCP Request.DHCP ACK.DHCP NAK.DHCP Re ...

  9. WireShark数据包分析数据封装

    WireShark数据包分析数据封装 数据封装(Data Encapsulation)是指将协议数据单元(PDU)封装在一组协议头和尾中的过程.在OSI七层参考模型中,每层主要负责与其它机器上的对等层 ...

  10. Wireshark数据包分析(详细解析)

    wireshark数据包分析 Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用Win ...

最新文章

  1. 独家 | 5个步骤开启你的数据科学职业生涯!(附链接)
  2. 两幅相同大小图像的相似程度的两个评价指标-PSNR和SSIM
  3. 进程中dll模块的隐藏
  4. iphone 保存到沙盒中的图片的读取
  5. centos mysql.tar.gz_centos7.2 mysql tar.gz 搭建 (亲测成功)
  6. 在d3中使用2D.js获取图形间的交点
  7. css中英文混排 标点,浅析css中英文混排时行高不一样的原因及其解决方法
  8. 1.1 STL 概述
  9. HDU-1540 Tunnel Warfare 线段树最大连续区间 或 STL巧解
  10. 翘首以盼Windows 8
  11. Gitee 管理UE4项目
  12. php鼠标指针,在windows中鼠标指针呈四箭头时一般表示什么
  13. 《AI·未来》 ---- 读书笔记
  14. kvm使用virsh iface-bridge ens33 br0命令建立桥接网卡br0报错error:Failed to start bridge interface br0
  15. 苹果 python蚂蚁森林自动收能量_蚂蚁森林自动收能量的最新脚本
  16. 计算机课拔线头检讨书,电脑显示器上出现检测信号线应该怎么解决?
  17. g suite_什么是G Suite?
  18. 计算机网络ip地址分类及含义
  19. 高大上的调音台,一秒变成调音师!
  20. 2018年全国多校算法寒假训练营练习比赛(第五场)题解 F The Biggest Water Problem

热门文章

  1. paip.discuz x2.5 用户及积分账户的接口attilax总结
  2. GDPR法律条款解读及应对指南(全面版)
  3. “阿里云开放平台俱乐部”首站启航
  4. 【数学建模】基于matlab改进量子行为的粒子群算法机组燃烧控制系统建模【含Matlab源码 1609期】
  5. 【人脸识别】基于matlab ksvd字典学习人脸表情识别【含Matlab源码 460期】
  6. 安全模式 提权_WEB安全第八章实战篇01 提权安全狗服务器
  7. 如何识别媒体偏见_面部识别技术存在偏见:为什么我们不应该盲目相信新技术
  8. 二重指针、二维数组及二者如何进行赋值
  9. 如何查询远程计算机的名称,如何解析远程计算机名称以获取它在java中的IP地址...
  10. h5 右下角浮动按钮_Flutter 浮动按钮-FloatingActionButton的使用