zoukankan      html  css  js  c++  java
  • wireshark抓包手册

    下载地址

    为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。wireshark能获取HTTP、HTTPS但是不能解密HTTPS,如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark。过滤栏语法帮助的话可以查看wireshark帮助菜单。

    一、界面介绍

     注释:src:本机   dst:目标

     1、选择菜单栏上捕获 -> 选项,勾选WLAN网卡(这里需要根据各自电脑网卡使用情况选择,简单的办法可以看使用的IP对应的网卡),点击开始,启动抓包。

    二、过滤语法

    (这边只列举几种,其余可在帮助手册里查到)

    比较运算符

    也可以将字段与值进行比较。比较运算符可以通过类似英语的缩写或类似C的符号来表示:

    eq 或 ==   
    ne 或 !=   
    gt 或 >    
    lt 或 <    
    ge 或 >=  
    le 或 <=  

    搜索和匹配运算符

     contains      
     matches或~ 

    “contains”运算符允许过滤器搜索以字符串(带引号或不带引号)形式表示的字符序列,或以字节数组形式表示的字节,或以C样式字符常量形式表示的单个字符。例如,要在捕获中搜索给定的HTTP URL,可以使用以下过滤器:

       http contains "https://www.wireshark.org"

    不能在原字段(例如数字或IP地址)上使用“contains”运算符。

    “ matches”或“〜”运算符允许过滤器应用于指定的Perl兼容正则表达式(PCRE)。“匹配”运算符仅针对协议和具有文本字符串表示形式的协议字段实现。默认情况下,匹配项不区分大小写。例如,要搜索给定的WAP WSP用户代理:

    wsp.user_agent matches "cldc"

    可以使用以下命令强制区分大小写

    wsp.user_agent matches "(?-i)cldc"

    这是PCRE (? option )构造的一个示例。(?-i)执行区分大小写的模式匹配,也可以指定其他选项。

    以太网地址和字节数组由十六进制数字表示。十六进制数字可以用冒号,句号或连字符分隔:

    eth.dst eq ff:ff:ff:ff:ff:ff
        aim.data == 0.1.0.d
        fddi.src == aa-aa-aa-aa-aa-aa
        echo.data == 7a

    IPv4地址可以用点分十进制表示法或使用主机名表示:

     ip.dst eq www.mit.edu
     ip.src == 192.168.1.1

    可以使用与数字相同的逻辑关系来比较IPv4地址:eq,ne,gt,ge,lt和le。IPv4地址按主机顺序存储,因此在显示过滤器中使用IPv4地址时,您不必担心它的字节顺序。

    无类域间路由(CIDR)表示法可用于测试IPv4地址是否在某个子网中。例如,此显示过滤器将找到129.111 B类网络中的所有数据包:

     ip.addr == 129.111.0.0/16

    请记住,斜杠后的数字表示用来表示网络位数。CIDR表示法也可以与主机名一起使用,例如在此示例中,发现与“ sneezy”位于同一C类网络上的IP地址:

     ip.addr eq sneezy/24

    切片运算符

    如果字段是文本字符串或字节数组,则可以获取字段的一部分。例如,您可以像下面这样过滤以太网地址(前三个字节)的供应商部分:

        eth.src[0:3] == 00:00:83

    另一个示例是:

        http.content_type[0:4] == "text"

    只需使用成员运算符就可以检查字段是否与一组值匹配。例如,您可以使用以下过滤器在常见的HTTP / HTTPS端口上找到流量:

        tcp.port in {80 443 8080}

    要使用HEAD或GET方法查找HTTP请求:

        http.request.method in {"HEAD" "GET"}

    值集还可以包含范围:

        tcp.port in {443 4430..4434}
        ip.addr in {10.0.0.5 .. 10.0.0.9 192.168.1.1..192.168.1.9}

    类型转换

    如果字段是文本字符串或字节数组,则可以用最方便的方式表示它。

    因此,例如,以下过滤器是等效的:

        http.request.method == "GET"
        http.request.method == 47.45.54

    范围也可以用以下两种方式表示:

        frame[60:2] gt 50.51
        frame[60:2] gt "PQ"

    逻辑表达式

    可以使用逻辑表达式组合测试。这些也可以用类似于C的语法或类似于英语的缩写来表达:

        and     &&   
        or      ||   
        not     !    

    表达式也可以用括号分组。以下是所有有效的显示过滤器表达式

      tcp.port == 80 and ip.src == 192.168.2.1
      not llc
      http and frame[100-199] contains "wireshark"
      (ipx.src.net == 0xbad && ipx.src.node == 0.0.0.0.0.1) || ip

    三、过滤器设置

     wireshar工具中有两种过滤方式

    (1)抓包过滤器(在抓取数据包前设置),点击 捕获-->捕获过滤器

    (2)显示过滤器

     用于在抓取数据包后设置过滤条件进行过滤数据包。在捕获时未设置捕获规则直接通过网卡进行抓取所有数据包,在过滤器栏里直接输入过滤条件。

    (3)wireshark抓包获取访问指定服务端数据包

    1.启动wireshark抓包,打开浏览器输入www.baidu.com。

    2.使用ping www.baidu.com获取IP。

    3.输入过滤条件获取待分析数据包列表 ip.addr == 180.101.49.11

     

  • 相关阅读:
    把redhat5.4-linux2.6.18内核升级到2.6.24 vmware虚拟机中
    webdeploy 使用总结(二)
    System.Web.UI.Page 详解(转)
    Dapper常用方法总结
    webdeploy 使用总结(一)
    Log4Net 详解(转)
    C# 日志工具汇总(转)
    Global.asax 详解(转)
    Transfer与Redirect区别(转)
    web.config配置节system.webServer的子元素详细介绍
  • 原文地址:https://www.cnblogs.com/xujint/p/13182964.html
Copyright © 2011-2022 走看看