Wireshark 使用总结 [转]

Wireshark 使用总结 [转]

目录

wireshark 使用总结

Wireshark 过滤器写法总结

捕获过滤器

显示过滤器

过滤器具体写法

显示过滤器写法

捕捉过滤器写法

Wireshark 过滤器语法总结

过滤器的区别

捕捉过滤器

显示过滤器

 

  • 过滤器有两种:
    • 一种是显示过滤器,就是主界面上那个,用来在捕获的记录中找到所需要的记录(在已经捕获的数据里查找)

  • 一种是捕获过滤器,用来过滤捕获的封包,以免捕获太多的记录(准备捕获设定条件的数据)。 在Capture -> Capture Filters 中设置.

【表达式规则】

  • 协议过滤
    • 比如TCP,只显示TCP协议。
  • IP 过滤
    • 比如 ip.src ==192.168.1.102 显示源地址为192.168.1.102,
    • ip.dst==192.168.1.102, 目标地址为192.168.1.102
  • 端口过滤
    • tcp.port ==80,  端口为80的
    • tcp.srcport == 80,  只显示TCP协议的源端口为80的。
  • Http模式过滤
    • http.request.method=="GET",   只显示HTTP GET方法的。
  • 逻辑运算符为 AND/ OR

Wireshark 过滤器写法总结

捕获过滤器

  • 捕获过滤器:在抓包之前就设定好过滤条件,然后只抓取符合条件的数据包。

显示过滤器

  • 显示过滤器:在已捕获的数据包集合中设置过滤条件,隐藏不想显示的数据包,只显示符合条件的数据包。

  • 【注意】
    • 这两种过滤器所使用的语法是完全不同的:
      • 捕捉网卡数据的其实并不是Wireshark,而是WinPcap,当然要按WinPcap的规则来
      • 显示过滤器就是Wireshark对已捕捉的数据进行筛选。
  • 使用捕获过滤器的主要原因就是性能:
    • 如果你知道并不需要分析某个类型的流量,那么可以简单地使用捕获过滤器过滤掉它,从而节省那些会被用来捕获这些数据包的处理器资源。
    • 当处理大量数据的时候,使用捕获过滤器是相当好用的。
  • Wireshark拦截通过网卡访问的所有数据,前提是没有设置任何代理。
  • Wireshark不能拦截本地回环访问的请求,即127.0.0.1或者localhost。

过滤器具体写法

显示过滤器写法

  • 过滤值比较符号及表达式之间的组合

【针对ip的过滤】

  • 对源地址进行过滤
ip.src == 192.168.0.1
  • 对目的地址进行过滤
ip.dst == 192.168.0.1
  • 对源地址或者目的地址进行过滤
ip.addr == 192.168.0.1
  • 如果想排除以上的数据包,只需要将其用括号囊括,然后使用 "!" 即可
!(ip.addr == 192.168.0.1)

【针对协议的过滤】

  • 获某种协议的数据包,表达式很简单仅仅需要把协议的名字输入即可
http
  • 注意:是否区分大小写?答:区分,只能为小写
  • 捕获多种协议的数据包
http or telnet
  • 排除某种协议的数据包
not arp   或者   !tcp

【针对端口的过滤(视传输协议而定)】

  • 捕获某一端口的数据包(以tcp协议为例)
tcp.port == 80
  • 捕获多端口的数据包,可以使用and来连接,下面是捕获高于某端口的表达式(以udp协议为例)
udp.port >= 2048

【针对长度和内容的过滤】

  • 针对长度的过虑(这里的长度指定的是数据段的长度)
udp.length < 20   
http.content_length <=30
  • 针对uri 内容的过滤
http.request.uri matches "user"        (请求的uri中包含“user”关键字的)
  • 注意:matches 后的关键字是不区分大小写的!
http.request.uri contains "User"        (请求的uri中包含“user”关键字的)
  • 注意:contains 后的关键字是区分大小写的!

【针对http请求的一些过滤实例】

  • 过滤出请求地址中包含“user”的请求,不包括域名
http.request.uri contains "User"
  • 精确过滤域名
http.host==baidu.com
  • 模糊过滤域名
http.host contains "baidu"
  • 过滤请求的content_type类型
http.content_type =="text/html"
  • 过滤http请求方法
http.request.method=="POST"
  • 过滤tcp端口
tcp.port==80
http && tcp.port==80 or tcp.port==5566
  • 过滤http响应状态码
http.response.code==302
  • 过滤含有指定cookie的http数据包
http.cookie contains "userid"

捕捉过滤器写法

  • 在wireshark的工具栏中点击 捕获 →捕获过滤器,可以看到一些过滤器的写法,如下图:

【比较符号】

与:&&或者and
或:||或者or
非:!或者not
  • 实例:
src or dst portrange 6000-8000 && tcp or ip6

【常用表达式实例】

  • 源地址过滤
src www.baidu.com
  • 目的地址过滤
dst www.baidu.com
  • 目的地址端口过滤
dst post 80
  • 协议过滤
udp

Wireshark 过滤器语法总结

过滤器的区别

  • 捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中。需要在开始捕捉前设置。
  • 显示过滤器(DisplayFilters):在捕捉结果中进行详细查找。他们可以在得到捕捉结果后随意修改。
  • 那么我应该使用哪一种过滤器呢?
  • 两种过滤器的目的是不同的:
    • 捕捉过滤器是数据经过的第一层过滤器,它用于控制捕捉数据的数量,以避免产生过大的日志文件
    • 显示过滤器是一种更为强大(复杂)的过滤器。它允许您在日志文件中迅速准确地找到所需要的记录
    • 两种过滤器使用的语法是完全不同的

捕捉过滤器

语法:ProtocolDirectionHost(s)ValueLogical OperationsOther expression
例子:tcpdst10.1.1.180andtcp dst 10.2.2.2 3128
  • Protocol(协议):
    • 可能的值:ether,fddi,ip,arp, rarp,decnet, lat, sca,moprc,mopdl,tcp and udp.
    • 如果没有特别指明是什么协议,则默认使用所有支持的协议
  • Direction(方向):
    • 可能的值: src, dst,src and dst,src or dst
    • 如果没有特别指明来源或目的地,则默认使用 “src or dst” 作为关键字。
      • 例如,”host 10.2.2.2″与”src or dst host 10.2.2.2″是一样的。
  • Host(s):
    • 可能的值: net, port, host,portrange.
    • 如果没有指定此值,则默认使用”host”关键字。
      • 例如,”src 10.1.1.1″与”src host 10.1.1.1″相同。
  • Logical Operations(逻辑运算):
    • 可能的值:not, and, or.
    • 否(“not”)具有最高的优先级
    • 或(“or”)和与(“and”)具有相同的优先级,运算时从左至右进行
    • 例如,
      • “not tcp port 3128 and tcp port 23″与”(not tcp port 3128) and tcp port 23″相同。
      • “not tcp port 3128 and tcp port 23″与”not (tcp port 3128 and tcp port 23)”不同。
  • 例子:
  • 显示目的TCP端口为3128的封包:
tcp dst port 3128
  • 显示来源IP地址为10.1.1.1的封包:
ip src host 10.1.1.1
  • 显示目的或来源IP地址为10.1.2.3的封包:
host 10.1.2.3
  • 显示来源为UDP或TCP,并且端口号在2000至2500范围内的封包:
src portrange 2000-2500
  • 显示除了icmp以外的所有封包。(icmp通常被ping工具使用):
not imcp
  • 显示来源IP地址为10.7.2.12,但目的地不是10.200.0.0/16的封包:
src host 10.7.2.12 and not dst net 10.200.0.0/16
  • 显示来源IP为10.4.1.12或者来源网络为10.6.0.0/16,目的地TCP端口号在200至10000之间,并且目的位于网络 10.0.0.0/8内的所有封包:
(src host 10.4.1.12 or src net 10.6.0.0/16) and tcp dst portrange 200-10000 and dst net 10.0.0.0/8

【注意事项】

  • 当使用关键字作为值时,需使用反斜杠“\”
    • “ether proto \ip” (与关键字”ip”相同).
    • 这样写将会以IP协议作为目标。
  • “ip proto \icmp” (与关键字”icmp”相同).
    • 这样写将会以ping工具常用的icmp作为目标。
  • 可以在”ip”或”ether”后面使用”multicast”及”broadcast”关键字。
    • 当您想排除广播请求时,”no broadcast”就会非常有用。
  • Protocol(协议):
    • 您可以使用大量位于OSI模型第2至7层的协议。点击”Expression…”按钮后,您可以看到它们。
    • 比如:IP,TCP,DNS,SSH
  • String1, String2 (可选项):
    • 协议的子类。
    • 点击相关父类旁的”+”号,然后选择其子类。

【Comparison operators (比较运算符)】

英文写法:C语言写法:含义:
eq==等于
ne!=不等于
gt>大于
lt<小于
ge>=大于等于
le<=小于等于

【Logical expressions(逻辑运算符)】

英文写法:C语言写法:含义:
and&&逻辑与
or||逻辑或
xor^^逻辑异或
not!逻辑非

显示过滤器

语法:Protocol.String 1.String 2Comparison operatorValueLogical  OperationsOther   expression
例子:ftp passive ip==10.2.3.4xoricmp.type
  • 例子:
  • 显示SNMP或DNS或ICMP封包:
snmp || dns || icmp
  • 显示来源或目的IP地址为10.1.1.1的封包:
ip.addr == 10.1.1.1
  • 显示来源不为10.1.2.3或者目的不为10.4.5.6的封包:
    • 换句话说,显示的封包将会为:
    • 来源IP:除了10.1.2.3以外任意;目的IP:任意
    • 以及
    • 来源IP:任意;目的IP:除了10.4.5.6以外任意
ip.src != 10.1.2.3 or ip.dst != 10.4.5.6
  • 显示来源不为10.1.2.3并且目的IP不为10.4.5.6的封包:
    • 换句话说,显示的封包将会为:
    • 来源IP:除了10.1.2.3以外任意;同时须满足,目的IP:除了10.4.5.6以外任意
ip.src != 10.1.2.3 and ip.dst != 10.4.5.6
  • 显示来源或目的TCP端口号为25的封包:
tcp.port == 25
  • 显示目的TCP端口号为25的封包:
tcp.dstport == 25	
  • 显示包含TCP标志的封包:
tcp.flags
  • 显示包含TCP SYN标志的封包:
tcp.flags.syn == 0×02	
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Wireshark 是一个开源的网络协议分析工具,它可以用于捕获和分析网络流量。以下是一些使用 Wireshark 的基本步骤: 1. 下载和安装:首先,你需要从 Wireshark 官方网站(https://www.wireshark.org/)下载并安装适合你操作系统的版本。 2. 打开 Wireshark:安装完成后,打开 Wireshark 应用程序。 3. 选择网络接口:在 Wireshark 主界面的上方,可以看到一个接口列表。选择你想要捕获流量的网络接口,例如无线网卡或以太网卡。 4. 开始捕获:点击“开始捕获”按钮即可开始捕获流量。你可以选择设置捕获过滤器来过滤特定的流量类型或目标。 5. 分析捕获的数据:Wireshark 会以实时模式显示捕获的数据包。你可以通过点击每个数据包来查看其详细信息,包括源和目标地址、协议类型、载荷等。 6. 应用过滤器:Wireshark 提供了强大的过滤功能,可以帮助你仅显示感兴趣的数据包。你可以使用过滤表达式或预设过滤器来筛选数据。 7. 分析协议:Wireshark 可以解析和显示多种协议,包括 TCP、UDP、HTTP、DNS 等。通过查看协议分析,你可以了解网络通信中的具体细节和问题。 8. 导出和保存数据:如果你想保存捕获的数据供以后分析使用,可以将数据导出为 pcap 文件格式。 以上是使用 Wireshark 的基本步骤,你可以根据自己的需求和兴趣进一步探索 Wireshark 的高级功能和特性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值