Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。
这篇文章教大家WireShark抓包及常用协议分析
以下有视频版还有文字版
不知道怎么操作的请看文字版的,里面详细的步骤。
关注公众号侠盗男爵回复【kali系统】
视频版↓:
网络安全/kali/黑客/web安全/渗透测试/-3-5个月网络安全全套课程-小白入门到精通!_哔哩哔哩_bilibili
文字版↓:
年底了号主把我自己用到所有技术“做过的实战项目-内网实战靶场环境-渗透工具”还有很多渗透思维图谱!
WireShark的应用
网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协议除错,普通使用者使用Wireshark来学习网络协议的相关知识。当然,有的人也会“居心叵测”的用它来寻找一些敏感信息……
WireShark 快速分析数据包技巧
(1) 确定Wireshark的物理位置。如果没有一个正确的位置,启动Wireshark后会花费很长的时间捕获一些与自己无关的数据。
(2) 选择捕获接口。一般都是选择连接到Internet网络的接口,这样才可以捕获到与网络相关的数据。否则,捕获到的其它数据对自己也没有任何帮助。
(3) 使用捕获过滤器。通过设置捕获过滤器,可以避免产生过大的捕获数据。这样用户在分析数据时,也不会受其它数据干扰。而且,还可以为用户节约大量的时间。
(4) 使用显示过滤器。通常使用捕获过滤器过滤后的数据,往往还是很复杂。为了使过滤的数据包再更细致,此时使用显示过滤器进行过滤。
(5) 使用着色规则。通常使用显示过滤器过滤后的数据,都是有用的数据包。如果想更加突出的显示某个会话,可以使用着色规则高亮显示。
(6) 构建图表。如果用户想要更明显的看出一个网络中数据的变化情况,使用图表的形式可以很方便的展现数据分布情况。
(7) 重组数据。当传输较大的图片或文件时,需要将信息分布在多个数据包中。这时候就需要使用重组数据的方法来抓取完整的数据。Wireshark的重组功能,可以重组一个会话中不同数据包的信息,或者是重组一个完整的图片或文件。
本节课主要分析以下几种协议类型。
ARP协议
ICMP协议
TCP协议
UDP协议
DNS协议
HTTP协议
使用WireShark进行抓包
启动WireShark
选择我们的网卡
双击网卡之后就会自动进行抓包
混杂模式介绍
1、混杂模式概述:混杂模式就是接收所有经过网卡的数据包,包括不是发给本机的包,即不验证MAC地址。普通模式下网卡只接收发给本机的包(包括广播包)传递给上层程序,其它的包一律丢弃。
一般来说,混杂模式不会影响网卡的正常工作,多在网络监听工具上使用。
2、关闭和开启混杂模式方法
关闭和开启混杂模式前,需要停止当前抓包。如下,停止捕获。
在程序的工具栏中点击“ 捕获 ”---》“ 选项 ”
在选项设置界面中的“ 输出 ”设置栏的左下方勾选“ 在所有接口上使用混杂模式 ”
这样就开启了。默认就是开启混杂模式。
WireShark的过滤器使用
我们开启混淆模式来做一下感受,我们再次捕获---在所有接口上使用混杂模式就可以直接进行抓包
下面我们打开浏览器访问以下百度。
访问完成后点击停止抓包即可,我们不需要抓太多的数据包。
我们可以看到有很多数据包但是我们怎么才能找到对应的数据包类型呢?
这里就是我们的过滤器,我们可以根据自己的条件筛选自己想要的数据包。
例1:使用过滤器筛选TCP的数据包
注意:筛选条件我们都使用小写就好了,大写的话会不识别。
例2:使用过滤器筛选arp的数据包
例3:使用过滤器筛选udp的数据包
我们使用过滤器输入“udp”以筛选出udp报文。但是为什么输入udp之后出现那么多种协议呢?原因就是oicq以及dns都是基于udp的传输层之上的协议
扩展:客户端向DNS服务器查询域名,一般返回的内容都不超过512字节,用UDP传输即可。不用经过三次握手,这样DNS服务器负载更低,响应更快。理论上说,客户端也可以指定向DNS服务器查询时用TCP,但事实上,很多DNS服务器进行配置的时候,仅支持UDP查询包。
例4:使用过滤器筛选http的数据包
例5:使用过滤器筛选dns的数据包
其实我们不仅可以对协议类型进行筛选,我们还有跟多的筛选条件,比如源地址目的地址等等。。。
例6:筛选源地址是192.168.1.53或目的地址是192.168.1.1
在终端ping 192.168.1.1
然后修改筛选器条件为:
ip.src_host == 192.168.1.53 or ip.dst_host == 192.168.1.1
这个判断条件是什么意思呢?
ip.src_host == 192.168.1.53 表示源IP地址
ip.dst_host == 192.168.1.1 表示目的地址
我们中间用or进行了拼接,表示或 当然我们也可以使用and表示与,or表示满足左右其中一个条件就会显示符合条件的数据包,and表示左右2个条件都满足才会显示。
or
and
我们可以很直观的看到结果的不同。 更多技术干货请扫描下方二维码