wireshark常用的过滤命令(协议分析利器,你值得拥有。)

Wireshark (三) wireshark分析HTTP协议 Wireshark 是一款强大的网络协议分析工具,它可以捕获网络中传输的数据包,并提供了丰富的功能来分析这些数据包。可以针对 HTTP 协议,Wireshark 能够深入理解客户端和服务器之间的通信过程,包括请求和响应的详细内容。 阅读详情
AI摘要

本文详细介绍了Wireshark的高级过滤规则,包括IP、端口、协议、MAC、包长度、HTTP模式、TCP参数、过滤内容等,提供丰富的过滤选项帮助用户精确筛选网络数据。

  1. 过滤源ip、目的ip。在wireshark的过滤规则框Filter中输入过滤条件。如查找目的地址为192.168.101.8的包,ip.dst==192.168.101.8;查找源地址为ip.src==1.1.1.1;

  2. 端口过滤。如过滤80端口,在Filter中输入,tcp.port==80,这条规则是把源端口和目的端口为80的都过滤出来。使用tcp.dstport==80只过滤目的端口为80的,tcp.srcport==80只过滤源端口为80的包;

  3. 协议过滤比较简单,直接在Filter框中直接输入协议名即可,如过滤HTTP的协议;

  4. http模式过滤。如过滤get包,http.request.method=="GET",过滤post包,http.request.method=="POST";

  5. 连接符and的使用。过滤两种条件时,使用and连接,如过滤ip为192.168.101.8并且为http协议的,ip.src==192.168.101.8 and http。 

  6. 更为详细的说明。
    过 滤 IP,如来源IP或者目标IP等于某个IP
    例子:
    ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107
    或者
    ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP

    2. 过滤 端 口

    例子:
    tcp.port eq 80 // 不管端口是来源的还是目标的都显示
    tcp.port == 80
    tcp.port eq 2722
    tcp.port eq 80 or udp.port eq 80
    tcp.dstport == 80 // 只显tcp协议的目标端口80
    tcp.srcport == 80 // 只显tcp协议的来源端口80

    udp.port eq 15000

    过滤 端口范围
    tcp.port >= 1 and tcp.port <= 80

    3. 过 滤 协议

    例子:
    tcp
    udp
    arp
    icmp
    http
    smtp
    ftp
    dns
    msnms
    ip
    ssl
    oicq
    bootp
    等 等

    排除arp包,如!arp 或者 not arp

    4. 过 滤 MAC

    太以网头 过滤
    eth.dst == A0:00:00:04:C5:84 // 过滤 目 标mac
    eth.src eq A0:00:00:04:C5:84 // 过 滤 来源mac
    eth.dst==A0:00:00:04:C5:84
    eth.dst==A0-00-00-04-C5-84
    eth.addr eq A0:00:00:04:C5:84 // 过滤 来 源MAC和目标MAC都等于A0:00:00:04:C5:84的

    less than 小于 < lt
    小于等于 le

    等 于 eq

    大于 gt
    大于等于 ge

    不等 ne


    5.包长度 过 滤

    例子:
    udp.length == 26 这个长度是指udp本身固定长度8加上udp下面那块数据包之和
    tcp.len >= 7  指的是ip数据包(tcp下面那块数据),不包括tcp本身
    ip.len == 94 除了以太网头固定长度14,其它都算是ip.len,即从ip本身到最后
    frame.len == 119 整个数据包长度,从eth开始到最后

    eth ---> ip or arp ---> tcp or udp ---> da

    ta

    6.http 模式 过滤

    例子:
    http.request.method == "GET"
    http.request.method == "POST"
    http.request.uri == "/img/logo-edu.gif"
    http contains "GET"
    http contains "HTTP/1."

    // GET包
    http.request.method == "GET" && http contains "Host: "
    http.request.method == "GET" && http contains "User-Agent: "
    // POST包
    http.request.method == "POST" && http contains "Host: "
    http.request.method == "POST" && http contains "User-Agent: "
    // 响应包
    http contains "HTTP/1.1 200 OK" && http contains "Content-Type: "
    http contains "HTTP/1.0 200 OK" && http contains "Content-Type: "
    一 定包含如下
    Content-Type:


    7.TCP参数 过 滤

    tcp.flags 显示包含TCP标志的封包。
    tcp.flags.syn == 0x02    显示包含TCP SYN标志的封包。
    tcp.window_size == 0 && tcp.flags.reset != 1

    8. 过滤 内容


    tcp[20] 表示从20开始,取1个字符
    tcp[20:]表示从20开始,取1个字符以上
    tcp[20:8]表示从20开始,取8个字符
    tcp[offset,n]

    udp[8:3]==81:60:03 // 偏移8个bytes,再取3个数,是否与==后面的数据相等?
    udp[8:1]==32  如果我猜的没有错的话,应该是udp[offset:截取个数]=nValue
    eth.addr[0:3]==00:06:5B

    例 子:
    判断upd下面那块数据包前三个是否等于0x20 0x21 0x22
    我们都知道udp固定长度为8
    udp[8:3]==20:21:22

    判 断tcp那块数据包前三个是否等于0x20 0x21 0x22
    tcp一般情况下,长度为20,但也有不是20的时候
    tcp[8:3]==20:21:22
    如 果想得到最准确的,应该先知道tcp长度

    matches(匹配)和contains(包含某字符串)语法
    ip.src==192.168.1.107 and udp[8:5] matches "\\x02\\x12\\x21\\x00\\x22"
    ip.src==192.168.1.107 and udp contains 02:12:21:00:22
    ip.src==192.168.1.107 and tcp contains "GET"
    udp contains 7c:7c:7d:7d 匹配payload中含有0x7c7c7d7d的UDP数据包,不一定是从第一字节匹配。

    例子:
    得到本地qq登陆数据包(判断条 件是第一个包==0x02,第四和第五个包等于0x00x22,最后一个包等于0x03)
    0x02 xx xx 0x00 0x22 ... 0x03
    正确
    oicq and udp[8:] matches "^\\x02[\\x00-\\xff][\\x00-\\xff]\\x00\\x22[\\x00-\\xff]+\\x03$"
    oicq and udp[8:] matches "^\\x02[\\x00-\\xff]{2}\\x00\\x22[\\x00-\\xff]+\\x03$" // 登陆包
    oicq and (udp[8:] matches "^\\x02[\\x00-\\xff]{2}\\x03$" or tcp[8:] matches "^\\x02[\\x00-\\xff]{2}\\x03$")
    oicq and (udp[8:] matches "^\\x02[\\x00-\\xff]{2}\\x00\\x22[\\x00-\\xff]+\\x03$" or tcp[20:] matches "^\\x02[\\x00-\\xff]{2}\\x00\\x22[\\x00-\\xff]+\\x03$")

    不 单单是00:22才有QQ号码,其它的包也有,要满足下面条件(tcp也有,但没有做):
    oicq and udp[8:] matches "^\\x02[\\x00-\\xff]+\\x03$" and !(udp[11:2]==00:00) and !(udp[11:2]==00:80)
    oicq and udp[8:] matches "^\\x02[\\x00-\\xff]+\\x03$" and !(udp[11:2]==00:00) and !(udp[15:4]==00:00:00:00)
    说明:
    udp[15:4]==00:00:00:00 表示QQ号码为空
    udp[11:2]==00:00 表示命令编号为00:00
    udp[11:2]==00:80 表示命令编号为00:80
    当命令编号为00:80时,QQ号码为 00:00:00:00

    得到msn登陆成功账号(判断条件是"USR 7 OK ",即前三个等于USR,再通过两个0x20,就到OK,OK后面是一个字符0x20,后面就是mail了)
    USR xx OK mail@hotmail.com
    正确
    msnms and tcp and ip.addr==192.168.1.107 and tcp[20:] matches "^USR\\x20[\\x30-\\x39]+\\x20OK\\x20[\\x00-\\xff]+"

    9.dns 模式 过滤


    10.DHCP

    以 寻找伪造DHCP服务器为例,介绍 Wireshark 的用法。在显 示 过滤 器中加入 过 滤 规则,
    显示所有非来自DHCP服务器并且bootp.type==0x02(Offer/Ack)的信息:
    bootp.type==0x02 and not ip.src==192.168.1.1

    11.msn

    msnms && tcp[23:1] == 20 // 第四个是0x20的msn数据包
    msnms && tcp[20:1] >= 41 && tcp[20:1] <= 5A && tcp[21:1] >= 41 && tcp[21:1] <= 5A && tcp[22:1] >= 41 && tcp[22:1] <= 5A
    msnms && tcp[20:3]=="USR" // 找到命令编码是USR的数据包
    msnms && tcp[20:3]=="MSG" // 找到命令编码是MSG的数据包
    tcp.port == 1863 || tcp.port == 80

    如何判断数据包是含 有命令编码的MSN数据包?
    1)端口为1863或者80,如:tcp.port == 1863 || tcp.port == 80
    2) 数据这段前三个是大写字母,如:
    tcp[20:1] >= 41 && tcp[20:1] <= 5A && tcp[21:1] >= 41 && tcp[21:1] <= 5A && tcp[22:1] >= 41 && tcp[22:1] <= 5A
    3)第四个为0x20,如:tcp[23:1] == 20
    4)msn是属于TCP协议的,如 tcp

Wireshark过滤命令实战指南:从捕获到显示的精准网络分析 网络协议分析是网络运维、安全排查和应用调试的核心技能,它通过解析数据包来洞察网络通信的底层原理。Wireshark作为主流的抓包工具,其强大的过滤功能是实现高效分析的关键。理解捕获过滤与显示过滤的区别至关重要:捕获过滤基于BPF语法,在数据包进入前进行筛选,能有效节省系统资源,适用于高流量环境;显示过滤则作用于已捕获的数据,语法更接近自然语言,支持对协议字段进行灵活、复杂的查询,是进行探索性分析和深度故障排查的利器。掌握IP寻址、协议类型、内容搜索及TCP状态等核心过滤命令,能够快速定位网络问题、分析应用性 阅读详情

相关推荐

Wireshark高效抓包与分析实战:从捕获过滤到协议解析

网络协议分析是网络工程师和安全分析师的核心技能,它通过捕获和解析网络数据包来洞察通信过程。其原理在于对网络流量的实时监控与深度解码,能够精准定位性能瓶颈、排查故障及检测安全威胁。掌握高效的抓包与分析技术,对于保障网络稳定性、优化应用性能至关重要。在实际应用中,无论是分析网页加载缓慢、排查TCP连接异常,还是进行安全审计,都离不开对数据包的精准捕获与智能过滤。本文聚焦于Wireshark这一主流工具,深入讲解如何通过捕获过滤器(BPF语法)和显示过滤器实现“外科手术式”流量捕获,并结合TLS解密、统计图表及t

weixin_33841503的博客 319

Wireshark 抓包过滤命令汇总

通过合理使用 Wireshark 的过滤命令,您可以将注意力集中在感兴趣的数据包上,从而更加高效地进行网络数据包分析。本文介绍了一些常用的过滤命令,希望能够帮助您在使用 Wireshark 进行网络分析时取得更好的效果。无论是解决网络问题还是检测安全威胁,Wireshark 都将是您强大的助手。

Java老兵的后端进阶与AI前沿探索之路。 7265

Wireshark私藏版:网络协议分析与故障排查的绿色便携利器

网络协议分析是网络工程师和运维人员诊断故障、优化性能的核心技能。其原理在于捕获并解析网络数据包,还原通信过程,从而定位问题根源。这项技术的价值在于能够透视网络黑盒,精准分析延迟、丢包、安全威胁等复杂场景。无论是排查HTTP/2、QUIC等现代协议交互问题,还是分析TLS 1.3加密握手过程,都离不开强大的抓包分析工具。本文分享的Wireshark私藏版,正是基于v4.4.7稳定版本深度定制,集成了**Npcap抓包驱动**的优化配置和一套高效的**着色规则**,实现了开箱即用的绿色便携体验。它通过预置常用过

weixin_34342905的博客 397

wireshark常用过滤命令

wireshark常用过滤命令

教Linux的李老师 1万+

深入探索 Wireshark——网络封包分析的利器

通过深入学习和熟练使用 Wireshark 的各项功能,您将能够更好地理解和掌控网络通信,成为网络领域的高手。Wireshark 是一款免费开源的网络协议分析工具,它可以捕获网络中的数据包,并以详细且易于理解的方式展示其内容。每个数据包都包含了丰富的信息,如源地址、目的地址、协议类型、数据包长度等。Wireshark 以分层的方式展示数据包的内容,从链路层到应用层,清晰地呈现每个协议头的详细信息。提供了丰富的统计信息,如数据包数量、字节数、协议分布等,帮助用户快速了解网络通信的概况。

2301_77160226的博客 1583

Wireshark网络协议分析从入门到实战:抓包、过滤与协议解析全攻略

网络协议分析是网络工程、运维和安全领域的核心技能,它通过捕获和解析数据包来透视网络通信的底层细节。其基本原理是利用网卡混杂模式或镜像端口,获取流经网络接口的原始数据帧,再依据协议规范进行解码和重组。这项技术的核心价值在于能够精准定位网络故障、分析应用性能、进行安全审计以及深入学习网络协议栈。在实际应用场景中,无论是排查TCP连接问题、分析HTTP/HTTPS交互、诊断DNS解析,还是深入专项协议如SMB文件共享或GB28181视频监控流,协议分析工具都不可或缺。本文将以最流行的开源网络协议分析器Wiresh

weixin_34241036的博客 423

玩转网络抓包利器:Wireshark常用协议分析讲解

Wireshark是一个开源的网络协议分析工具,它能够捕获和分析网络数据包,并以用户友好的方式呈现这些数据包的内容。Wireshark 被广泛应用于网络故障排查、安全审计、教育及软件开发等领域。

ztK63LrD的博客 3551

Wireshark跨界分析船舶AIS协议:从网络抓包到海事数据洞察

网络协议分析是理解数据通信的基础,其核心在于捕获、解码和解析数据包以洞察信息交换的原理。Wireshark作为业界标准的网络封包分析工具,通过其强大的协议解析和过滤能力,能够深入揭示各类通信协议的技术细节与数据交互模式。这一技术价值不仅体现在传统网络运维与安全分析中,更可拓展至物联网、工业控制等垂直领域的专用协议分析。在船舶自动识别系统(AIS)这一典型海事通信场景中,AIS数据通过VHF无线电广播,经接收设备转换后形成网络数据流。利用Wireshark对AIS协议进行深度解析,可实现船舶动态监控、航行安全

an4455的博客 822

Wireshark抓包工具:网络分析的利器

Wireshark抓包工具:网络分析的利器 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在网络技术日新月异的今天,网络故障排查、协议开发和安全审计等任务变得越来越复杂。为了应对这些挑战,Wireshark应运而生,成为了一款功能强大的网络协议分析软件。Wireshark不仅广泛应用于网络工程师、开发者及安全分析师的工作中,还为学术研究和教学提供了宝贵的工具。 本项目...

gitblog_09731的博客 884

Wireshark网络协议分析从入门到实战:抓包、过滤与故障排查指南

网络协议分析是理解互联网通信、诊断网络问题的基础技术。其核心原理在于捕获和解析网络中传输的数据包,从而透视从物理层到应用层的完整通信过程。掌握这项技术对于网络工程师、运维人员和安全研究员具有重要价值,能够高效定位网络延迟、连接故障和安全威胁。在实际应用场景中,无论是分析TCP三次握手异常、解密TLS流量,还是排查服务器性能瓶颈,都需要借助专业的抓包工具。Wireshark作为业界领先的开源网络协议分析器,凭借其强大的图形化界面和深度协议解析能力,成为完成这些任务的利器。例如,通过配置wireshark us

weixin_34112181的博客 359

Wireshark CTF流量分析实战:从协议过滤到Flag提取的完整狩猎指南

网络流量分析是网络安全与数字取证领域的核心技术,它通过捕获和解析网络数据包,揭示通信行为、识别异常模式并提取关键信息。其原理基于对TCP/IP协议栈的深度解析,理解数据包封装、协议交互及负载构成。这项技术的核心价值在于能够从海量、混杂的网络流量中,精准定位安全威胁、发现隐蔽信道或还原攻击链,是进行安全监控、事件响应和CTF竞赛解题的关键技能。在应用场景上,它广泛用于恶意软件分析、数据泄露调查、网络性能诊断以及CTF竞赛中的Misc和Web题目破解。本文聚焦于CTF场景,系统讲解如何运用Wireshark的显

445

《Wireshark:网络数据分析师的利器,应对故障、安全与性能挑战》

在当今复杂多变的网络环境中,Wireshark 作为一款功能强大的网络协议分析工具,展现出了无可替代的价值。从数据包的精准捕获到深入解析,从灵活多样的过滤筛选到全面丰富的统计分析,再到在网络故障排查、安全检测和性能优化等实际场景中的成功应用,Wireshark 为网络专业人员提供了全方位、深层次洞察网络运行状况的能力。通过对 Wireshark 的深入学习和实践,网络管理员能够迅速定位并解决网络故障,保障网络的稳定运行;安全专家能够及时发现并应对网络攻击,守护网络的安全防线;

chendong52329的博客 1888

Wireshark网络协议分析从入门到实战:安装配置、抓包过滤与排错指南

网络协议是计算机通信的基石,它定义了数据在网络中传输的格式、顺序和规则。理解协议的工作原理,是诊断网络故障、优化应用性能和安全分析的基础。通过协议分析工具,工程师可以透视数据包的每一层封装,从物理帧到应用层载荷,精准定位问题根源。这种技术对于保障服务稳定性、提升传输效率和防御网络攻击具有重要价值,广泛应用于运维监控、软件开发和安全审计等场景。本文以Wireshark这一核心工具为例,结合TCP重传和HTTPS解密等热词,详解如何从数据海洋中捕获、过滤并深度解析网络流量,快速解决网页加载缓慢、连接失败等典型问

weixin_34341229的博客 484

Wireshark 完全指南:从入门到精通的网络分析利器

Wireshark 是一款开源、跨平台的网络数据包分析工具,被誉为 “网络医生”。它能实时捕获和分析网络流量,解码数百种协议,帮助用户排查网络故障、分析协议交互、检测安全威胁。无论是网络工程师调试链路问题,还是安全分析师追踪攻击流量,Wireshark 都是不可或缺的核心工具。

YongCheng_Liang的博客 1335

Wireshark常用过滤使用方法

Wireshark常用过滤使用方法 过滤源ip、目的ip。 在wireshark的过滤规则框Filter中输入过滤条件。如查找目的地址为192.168.101.8的包,ip.dst192.168.101.8;查找源地址为ip.src1.1.1.1 端口过滤。 如过滤80端口,在Filter中输入,tcp.port80,这条规则是把源端口和目的端口为80的都过滤出来。使用tcp.dstport80只过滤目的端口为80的,tcp.srcport==80只过滤源端口为80的包 协议过滤 比较简单,直接在Filte

文公子的博客 2543

Wireshark 抓包过滤命令大全,不会抓包的网工不是好网工!

你好,这里是网络技术联盟站,我是瑞哥。Wireshark 是一款开源软件,最早由 Gerald Combs 在 1998 年创建,原名 Ethereal。2006 年,由于商标问题,Ethereal 更名为 Wireshark。作为一个网络协议分析器,Wireshark 能够捕获网络接口上的数据包,并提供详细的解码和分析功能。Wireshark 支持多种操作系统,包括 Windows、macOS 和 Linux。

网络技术联盟站 5007

wireshark--流量分析利器

Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP 作为接口,直接与网卡进行数据报文交换。混杂模式:混杂模式就是接收所有经过网卡的数据包,包括不是发给本机的包,即不验证MAC 地址。(一般来说,混杂模式不会影响网卡的正常工作,多在网络监听工具上使用.)普通模式下网卡 只接收发给本机的包 (包括广播包)传递给上层程序,其它的包一律丢弃。

金灰的博客 1186

LabVIEW QMH模板实战:从创建到错误处理的完整指南

本文提供LabVIEW QMH模板从创建到错误处理的完整实战指南。详细解析了队列消息处理器(QMH)作为LabVIEW核心设计模式如何实现任务解耦与异步通信,涵盖事件处理循环、消息处理循环的搭建、用户事件创建、队列引用管理、消息优先级控制以及健壮的错误处理机制,帮助开发者构建稳定、可维护的复杂应用程序。

white的博客 725
上一篇: python3 非阻塞IO模型实现服务端(备忘记录说明)
下一篇: jupyter常用快捷键(记录更新中)
Malloc_New
博客等级 码龄11年 0粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值