尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Wireshark:数据包分析、过滤与标记技巧详解

Wireshark:数据包分析、过滤与标记技巧详解 1分析数据包Wireshark允许你对符合一定条件的数据包进行标记或者打印数据包以供参考。1.1保存和导出捕获文件如果想找到符合特定条件的数据包可以使用CtrlF快捷键打开Wireshark的搜索框提供了三种搜索方式。显示过滤器Display filter允许你通过输入表达式进行筛选只找出满足该表达式的数据包。十六进制值Hex Value使用你输入的十六进制数对数据包进行搜索。字符串String使用你所输入的字符串对数据包进行搜索。可以在搜索上设置是否区分大小写和其他的格式。1.2标记数据包在找到符合搜索条件的数据包之后可以根据需要进行标记。被标记的数据包会以黑底白字显示。如果想标记一个数据包可以使用快捷键CtrlM如果想取消标记再按一次CtrlM组合键。在一次捕获中你想标记多少个数据包都可以如果想要在标记的数据包之间前后切换那么分别按ShiftCtrlN和ShiftCtrlB组合键即可。2设定时间显示格式和相对参考2.1时间显示格式Wireshark所捕获的每一个数据包都会由操作系统给予一个时间戳。Wireshark可以显示这个数据被捕获时的绝对时间戳也可以是与上一个被捕获的数据包或是捕获开始及结束相关的相对时间戳。时间相关的选项可以在视图菜单中找到可以让你根据你的需要设置时间的精度。时间表示格式选项可以让你根据时间显示方式调整不同的设置。包含了日期和时间UTC日期和时间自UNIX纪元起的秒数自第一个包起的秒数默认自上一个包起的秒数等。格式选项允许你选择不同的格式而精度选项允许你将精度设定为自动或者手动比如秒毫秒微秒等。从多个设备之间比较包数据一定要确保这些设备之间的时间是同步的。特别是当你做取证分析和检查问题时可以使用网络时间协议NTP来确保网络设备的时间是同步的。2.2数据包的相对时间参考数据包的相对时间参考允许你以一个数据包作为基准而之后的数据包都以此计算相对时间戳。当检查在捕获文件之外的某个点触发的一系列连续事件时这个功能会十分有用。如果希望将某个数据包设定为时间参考可以点击作为相对参考的数据包使用快捷键CtrlT。取消设置再次使用CtrlT快捷键设置完成后数据包的Time列会显示为_REF_。只有当捕获的时间格式设定为与捕获开始相对的时间时设定数据包时间参考才有用处。使用其他设定都不会生成有用的结果。2.3时间偏移有时可能会遇到来自不同源的包数据它们之间的时间是不同步的。Wireshark提供了一项时间偏移的功能通过把包的时间戳整体偏移调整来减轻在分析中可能遇到的麻烦。要对一个或多个包的时间戳进行偏移调整可以使用快捷键CtrlShiftT打开偏移窗口可以设定一个时间区间来对所有包的时间进行调整或对一个包设置时间戳。3设定捕获选项Wireshark在捕获Capture-选项Options中提供了三个标签页输入输出和选项。3.1输入标签页主要目的就是显示所有可以抓包的硬件接口和有关这些接口的基本信息。在输入标签页区域可以直接双击来修改接口的大多数设置。3.2输出标签页输出标签页允许你把所抓的流量包存成一个文件。可以使管理捕获流量包的存储方式更具灵活性。可以选择把流量包都存成一个文件文件集或使用环状缓冲来控制创建文件的个数。使用此功能可以在文件文本框内输入一个完整的绝对路径和名字也可以通过浏览Browse按钮来选择一个目录并给文件起名。当捕获大流量或进行长时间转包时可以使用文件集合文件集合就是按照特定的条件组成的多个文件的分组。要保存成文件集合需要单击**Create a new file automatically…**选项。Wireshark使用多个不同的基于时间或文件大小的触发器来管理保存为文件集合。要开启其中的一个触发器可以选中该触发器用小箭头按钮调节比率大小并选择单位。使用ring buffer环状缓冲允许你指定一个特定的文件数量一旦超过此数量Wireshark就会用新数据覆盖最老的数据。一旦最后的文件被写满了则第一个文件就会被覆盖。先进先出FIFO。3.3选项标签页1显示选项Display部分用来控制捕获的数据包如何进行显示。Update list of packets in real-time实时更新数据包列表。Automatically scroll during live capture在当前捕获中进行自动滚动。Show capture information during live capture实时捕获期间显示捕获信息。2名称解析选项允许你在捕获中启用自动的数据链路层网络层和传输层的名称解析。3停止捕获选项允许你在满足一定的触发条件时停止正在进行的捕获。可以使用文件大小时间间隔或数据包的数目作为触发条件。4过滤器Wireshark提供了两种主要的过滤器。捕获过滤器当进行数据包捕获时只有那些满足给定的包含/排除表达式的数据包会被捕获。显示过滤器该过滤器根据指定的表达式用于一个已捕获的数据包集合它将隐藏不想显示的数据包或者只显示那些需要的数据包。4.1捕获过滤器捕获过滤器用于进行数据包捕获的实际场合使用它的主要原因是性能。如果你并不需要分析某个类型的流量则可以简单地使用捕获过滤器过滤掉它从而节省那些会被用来捕获这些数据包的处理器资源。当处理大量数据时创建自定义的捕获过滤器是相当好用的它可以让你专注于那些与你手头事情有关的数据包从而加速分析过程。假设你正在解决一个运行于xxx端口网络服务的问题如果你正在分析的那台机器在许多端口运行了各种不同的网络服务那么找到并分析只运行于xxx端口的流量本身可能就具有一定的工作量。那么你可以通过捕获对话框达到目的步骤如下选择捕获Capture-选项Options按钮打开捕获接口对话框。选择你想进行数据包捕获的设备然后在最右列选中捕获过滤器。单击该列以输入一个表达式来应用捕获过滤器。如我希望过滤器只显示出8894端口的出站和入站流量。如图。当设置好过滤器之后单击Start开始捕获。当收集到足够多的样本之后你应该只能看见端口8894的流量。1捕获过滤器的BPF语法捕获过滤器应用于libpcap/WinPcap并使用Berkeley Packet FilterBPF语法。主要因为大部分数据包嗅探软件都依赖于使用BPF的libpcap/Winpcap库。使用BPF语法创建的过滤器被称为expression表达式并且每个表达式包含一个或多个primitices原语。每个原语包含一个或多个qualifiers限定词然后跟着一个ID名字或数字。如下表BPF限定词。限定词说明例子Type指出名字或数字所代表的意义host,net,portDir指明传输方向是前往还是来自名字或数字srcdstProto限定所要匹配的协议Ether,ip,tcp,udp,http,ftp可以使用3种逻辑运算符对原语进行组合从而创建更高级的表达式连接运算符 与 选择运算符 或 ||否定运算符 非 如下面表达式只对源地址是192.168.0.10和源端口或目标端口是80的流量进行捕获。src host 192.168.0.10 port 802主机名和地址过滤器可以根据设备的MAC地址IPv4地址IPv6地址或DNS主机名配置过滤规则。创建使用host限定词的过滤器捕获IPv4地址相关的流量。如下host 192.168.0.11创建使用host限定词的过滤器捕获IPv6地址相关的流量。如下host 2001:db8:85a3:8a2e:370:7334创建使用host限定词的过滤器捕获基于设备主机名相关的流量。如下:host ym-pc考虑到设备的IP地址可能会发生变化则可以通过加入ether协议限定词对它的MAC地址进行过滤。如下ether host 00-1a-a0-52-e2-a0传输方向限定词通常会和上面的例子演示的过滤器一起使用来捕获流向或者流出某台主机的流量。如想捕获来自某台主机的流量则可以加入src限定词。src host 192.168.0.11如果只想捕获发往192.168.0.11的流量则可以使用dst限定词。dst host 192.168.0.11如果在一个原语中没有指定一种类型限定符host,net或porthost限定词将作为默认选择及就是。dst host 192.168.0.11 等价于 dst 192.168.0.113端口过滤器基于每个数据包的端口进行过滤端口过滤通常被用来过滤使用已知端口的服务和应用。如只对8080端口进行流量捕获。port 8080如想捕获除8080端口外的所有端口的流量。!port 8080端口过滤器可以和传输方向限定符一起使用。如希望只捕获访问标准HTTP80端口的Web服务器则可以使用dst限定符。dst port 804协议过滤器协议过滤器允许你基于特定协议进行数据包过滤。这通常被用于那些非应用层的不能简单地使用特定端口进行定义的协议。如果你只想看一看ICMP流量则可以使用如下过滤器。icmp如果你想看除了IPv6之外的所有流量则可使用如下过滤器。!ip65协议域过滤器BPF语法提供了一项强大的功能就是可以通过检查协议头中的每一个字节来创建基于那些数据的特殊过滤器。举例假设我们想要基于ICMP过滤器的类型域进行过滤而类型域位于数据包的最开头也就是偏移量为0的位置那么我们可以通过在协议限定符后输入由方括号括起的字节偏移量在这个例子中就是icmp[0]来指定我们想在一个数据包内进行检查的位置。这样将返回一个1字节的整型值用于比较。如果只想要得到代表目标不可达类型3信息的ICMP数据包则我们可在过滤器表达式中令其等于3如下icmp[0]3如果只想要检查代表echo请求类型8或echo回复类型0的ICMP数据包则可以使用带OR运算符的两个原语icmp[0]8||icmp[0]0上面的过滤器虽然很好用但是它们只能基于数据包头部的1个字节进行过滤。当然也可以在方括号中偏移值的后面以冒号分割加上一个字节长度来指定你希望返回给过滤器表达式的数据长度。如假设我们要创建一个过滤器该过滤器捕获所有ICMP目标——不可访问主机不可达的数据包类型3代码1.这些是1字节的字段它们与偏移量为0的数据包头部相邻。为此我们创建了一个过滤器它检查从数据包头部的偏移量0处开始的2字节数据并于十六进制值0301类型3代码1进行比较如下。icmp[0:2]0x03016捕获过滤器表达式样例常见捕获过滤器过滤器说明tcp[13]3232设置了URG位的TCP数据包tcp[13]1616设置了ACK位的TCP数据包tcp[13]88设置了PSH位的TCP数据包tcp[13]44设置了RST位的TCP数据包tcp[13]22设置了SYN位的TCP数据包tcp[13]11设置了FIN位的TCP数据包tcp[13]18TCP SYN-ACK数据包ether host 00:00:00:00:00:00替换为你的MAC流入或流出你MAC地址的流量!ether host 00:00:00:00:00:00替换为你的MAC不流入或流出你MAC地址的流量broadcast仅广播流量icmpICMP流量icmp[0:2]ICMP目标不可达主机不可达ip仅IPv4流量ip6仅IPv6流量udp仅UDP流量4.2显示过滤器显示过滤器应用于捕获文件用来告诉Wireshark只显示那些符合过滤条件的数据包。显示过滤器比捕获过滤器更加常用因为它可以让你对数据包进行过滤却并不省略掉捕获文件中的其他数据。有时你可能会需要使用显示过滤器来清理过滤文件中不相关的广播流量但是那些ARP广播之后可能会有用所以最好是将它们暂时过滤掉而不是删除它们。如果想过滤掉捕获窗口中所有的ARP数据包将鼠标移动到Packet List面板上方的Filter文本框中然后输入**!arp**就可以从Packet List面板中去掉ARP数据包了如下图如果想要删除过滤器可点击X按钮如果想要保存过滤器则可单击****按钮。应用过滤器有两种方法一种是向上面的例子一样直接输入合适的语法表达式另一种是使用显示过滤器对话框简单方法来选择构建。1过滤器表达式对话框简单方法如果想打开这个对话框则可以先在分析对话框中单击Display Filter Expression按钮。单击一个协议前面的****符号展开所有与这个协议有关可作为条件的域找到你要在过滤器中使用的那一项单击选中。或使用搜索。如ip.src。选择一个你想要在选中条件域和条件值之间建立的关系如等于大于和小于等。通过一个和你选中条件域相关的条件值来创建过滤器表达式。你可以自己定义一个值也可以从Wireshark预定义的值中选择一个。当你完成所有上述步骤时单击ok就可以看到你的过滤器表达式的文本表示。2过滤器表达式语法结构高级方法过滤器表达式的比较操作符操作符说明等于不等于大于小于大于等于小于等于过滤器表达式的逻辑操作符操作符说明and两个条件需同时满足or其中一个条件被满足xor有且仅有一个条件被满足not没有条件被满足如创建一个只显示192.168.0.1这个IP地址相关数据包的过滤器。ip.addr 192.168.0.1如只显示192.168.0.1和192.168.0.2的数据包。ip.addr 192.168.0.1 or 192.168.0.23显示过滤器表达式实例过滤器说明!tcp.port 3389排除RDP流量tcp.flags.syn1具有SYN标识位的TCP数据包tcp.flags.rst1具有RST标识位的TCP数据包!arp排除ARP流量http所有HTTP流量tcp.port23smtp4.3保存过滤器规则想要保存一个自定义的捕获过滤器规则可以按照如下步骤进行。选择捕获Capture-捕获过滤器Capture Filters-打开捕获过滤器窗口。在对话框的左边单击按钮创建一个新的过滤器。在Filter Name框中给你的过滤器起一个名字。在Filter Expression框中输入实际的过滤器表达式。单击ok按钮。保存自定义的显示过滤器规则。在主窗口的过滤条栏里输入你的过滤表达式然后点击左侧按钮单击保存此过滤器选项。弹出一个有着之前保存过的所有显示过滤器列表的对话框。最后点击ok。像目前比较火热的开发岗位实属网络安全毕竟国家网络安全法也出台了网络安全等级保护2.0等合规要求也出来了。网络安全对于大部分政企单位来说已经从[可选项]变成了[必选项]。在以前很多政企单位在进行 IT 部门及岗位划分时只有研发和运维部门安全人员直接归属到基础运维部而现在越来越多单位为了满足国家安全法律法规的要求必须成立独立的网络安全部门拉拢各方安全人才、组建 SRC安全响应中心为自己的产品、应用、数据保卫护航。根据国家发布的《网络安全人才实战能力白皮书》数据显示目前中国网络安全人才供应严重匮乏每年高校安全专业培养人才仅有3万余人而网络安全岗位缺口在2027年将达327万缺口高达95%。了解网络安全首先要搞清楚下面这些前提网络安全到底包含哪些技术是否需要会编程网络安全行业有哪些职业方向“我”该如何选择网络安全的职业发展和成长路线是什么如果你是准备学习网络安全黑客或者正在学习下面这些你应该能用得上①网络安全学习路线②20份渗透测试电子书③安全攻防357页笔记④50份安全攻防面试指南⑤安全红队渗透工具包⑥网络安全必备书籍⑦100个漏洞实战案例⑧安全大厂内部视频资源⑨历年CTF夺旗赛题解析一、网络安全黑客学习路线网络安全黑客学习路线形成网络安全领域所有的知识点汇总它的用处就在于你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。二、网络安全教程视频我们在看视频学习的时候不能光动眼动脑不动手比较科学的学习方法是在理解之后运用它们这时候练手项目就很适合了。三、网络安全CTF实战案例光学理论是没用的要学会跟着一起敲要动手实操才能将自己的所学运用到实际当中去这里带来的是CTFSRC资料HW资料毕竟实战是检验真理的唯一标准嘛~四、网络安全面试题最后我们所有的作为都是为就业服务的所以关键的临门一脚就是咱们的面试题内容所以面试题板块是咱们不可或缺的部分这里我给大家准备的就是我在面试期间准备的资料。网安其实不难难的是坚持和相信自己我的经验是既然已经选定网安你就要相信它相信它能成为你日后进阶的高效渠道这样自己才会更有信念去学习才能在碰到困难的时候坚持下去。机会属于有准备的人这是一个实力的时代。人和人之间的差距不在于智商而在于如何利用业余时间只要你想学习什么时候开始都不晚不要担心这担心那你只需努力剩下的交给时间这份完整版的网络安全学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
返回列表