wireshark的使用详解

         ~~~~~~~~         因为想要面对一个新的开始,一个人必须有梦想、有希望、有对未来的憧憬。如果没有这些,就不叫新的开始,而叫逃亡。 ​​​​
                                                                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                 ————玛丽亚·杜埃尼亚斯

前言

对于我们刚开始接触wireshark来说,看见它把所有数据包都拦截下来觉得强无敌,但往往面对一大堆的数据却又不知所措。一是界面,一堆窗口,什么作用什么区别看不懂;二是捕获,显示过滤器什么的表示看不出有什么规律。今天在此介绍下子,方便今后运用。wireshark是一个非常好用的免费的抓包工具,它使用winpcap作为接口,直接与网卡进行数据报文的交换。

wireshark的使用

wireshark的安装就不介绍了,跟windows程序一样默认下一步,路径自定义。下载地址:https://www.wireshark.org/#download
本次所用为kali自带的wireshark

拦截本地回环数据

这里需要注意的是,本机访问本机的回环数据是不经过网卡的,自然也就不能被捕获了。比如我们在本机访问搭建在本机上的web服务,有要抓取这个回环数据包加以分析的需求,在windows下就需要添加一条路由,让其通过网关进行转发。而在linux中则不用,因为linux中网卡菜单中有lo选项。
在这里插入图片描述

添加路由操作如下:

a、首先查看自己的网关信息
b、用命令:`route add <your_IP> mask 255.255.255.255 <gateway_IP> metric 1`添加路由条目
c、route print 查看是否添加成功
d、route delete <your_ip>  删除路由

界面说明介绍

首先这是打开的第一个界面
在这里插入图片描述
选择网卡后进入拦截界面。这里1号窗口表示wireshark捕获到的所有数据包的列表,注意最后一列info是组织说明列,不一定是该数据包中的原始内容;2号窗口是1号窗口中选定的数据包的分层协议展示;3号窗口表示1号窗口中选定的数据包的原始数据,其中左侧十六进制表示,右侧ascii码表示。在2号窗口选中某层,3号窗口对应位置会高亮。
在这里插入图片描述
停止抓包后,我们可以选择抓取到的数据包。选择文件——另存为——选择存储路径,然后保存为.pcap格式的文件,双击就可以直接用wireshark打开了。
在这里插入图片描述

对数据包的过滤

数据包的过滤是wireshark一个非常实用的功能,通常我们会抓取到经过网卡的所有的数据包,然而这里面有很对都是无用的数据包,所以我们就要对其进行过滤。数据包的过滤可以分为抓取时过滤和抓取后过滤。这两种过滤的语法不同。
抓取时过滤
通过点击捕获——捕获过滤器,里面是wireshark默认的一些捕获过滤器,我们可以参照其语法,自己在左下角添加或删除捕获过滤器。
在这里插入图片描述
在我们想抓取时对数据包进行过滤,就选择——捕获——选项,然后选择抓取的网卡,下面再选择过滤器。设置好后就可以开始抓包。
在这里插入图片描述
抓取后的过滤

一般情况下,我们都是抓取完数据后进行过滤的,在上方输入相应的语法,对数据包进行筛选。
在这里插入图片描述
过滤的语法
初次相识,都会被这个过滤的语法搞懵逼。这里总结一下格式:
一条基本的表达式由过滤项、过滤关系、过滤值组成。
而其中难点就在于过滤项,过滤项模式为:协议+.+协议字段
比如:ip.addr==192.168.10.10 其中ip为协议,addr为协议字段,==为过滤关系,192.168.10.10为过滤值。
以下给出以下语法参考:

过滤地址
ip.addr==192.168.10.10  或  ip.addr eq 192.168.10.10  #过滤地址
ip.src==192.168.10.10     #过滤源地址
ip.dst==192.168.10.10     #过滤目的地址
过滤协议,直接输入协议名
icmp
http
过滤协议和端口
tcp.port==80
tcp.srcport==80
tcp.dstport==80
过滤http协议的请求方式
http.request.method=="GET"
http.request.method=="POST"
http.request.url contains admin   #url中包含admin的
http.request.code==404    #http请求状态码的
连接符
&&
||
and
or
通过连接符可以把上面的命令连接在一起,比如:
ip.src==192.168.10.10 and http.request.method=="POST"

着色规则

另外我们捕获的数据包都会呈现出不同的颜色,那么我们怎么知道代表什么意思呢?可以通过视图——着色规则来查看
在这里插入图片描述

数据包的大致结构

第一行:数据包整体概述,
第二行:链路层详细信息,主要的是双方的mac地址
第三行:网络层详细信息,主要的是双方的IP地址
第四行:传输层的详细信息,主要的是双方的端口号。
第五行:域名系统相关信息
在这里插入图片描述

数据流的追踪

我们的一个完整的数据流一般都是由很多个包组成的,所以当我们想查看某条数据包对于的数据流的话。可以选中数据,右键选择追踪流。里面就会有tcp流、udp流、ssl流、http流。数据包属于哪种流就选择对应的流。
在这里插入图片描述
当我们选择了追踪流时,会弹出该流的完整的数据流还有这个数据流中包含的数据包,顶部的过滤器就是该流的过滤规则。
在这里插入图片描述

专家信息说明

专家信息可以对数据包中特定的状态进行警告说明,在分析——专家信息。

错误(errors)
警告(Warnings)
标记(notes)
对话(chats)

在这里插入图片描述

数据包的统计分析

在统计一栏中,可以对抓取的数据包进一步的分析。比如数据包的属性、已解析的地址、协议分级等。这里就不一一罗列。
在这里插入图片描述

数据包分析小技巧

大量404请求——>    目录扫描
大量 select....from 关键字请求——>  SQL注入
连续一个ip的多端口请求或多个ip的几个相同端口请求——>     端口扫描
黑客爆破账户和密码,则是post请求   http.request.method==POST
黑客修改文件,  ip.addr==219.239.105.18 and http.request.url matches "edit|upload|modify"  
如果是用菜刀连接的包,则是post请求  ip.addr==219.239.105.18  and  http.request.method==POST
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值