wireshark如何对指定ip进行嗅探

可能你会好奇,为什么可以嗅探到别人上网的数据呢?今天我就带大家一起用kali linux中的wireshark软件(kali默认安装,ubuntu使用apt安装,CentOS使用yum安装,其余自行至官网下载并安装)进行一次嗅探。

1.Arp转发流量

客户端浏览网页时,会先广播一个Arp请求询问服务器的MAC地址,收到请求的计算机会查找自己的Arp缓存,如果找到了,就回应请求。
打个比方,Bob想和Alice对话,但他们被关在了一个漆黑的屋子里,周围还有其他人。这个时候,Bob大声问道,“Alice在哪儿?”Alice听到后回答Bob,“我在这儿!”于是BobAlice碰面了。
可是如果心术不正的Jerry想要知道BobAlice的谈话内容,他就伪装成Alice回复Bob的请求,Bob误认为JerryAlice,和他开始交谈。为了不让Bob发现自己的真实身份,他又把Bob说的话告诉Alice,把Alice说的话告诉Bob,于是他成功地嗅探到BobAlice的谈话内容

2.Arp断网攻击与欺骗

根据1中的类比,如果Jerry不把Bob的话告诉Alice,那么Bob就处于断网状态,称为断网攻击,因为Bob根本联系不到Jerry。如果JerryBob的话告诉了Alice,那么Jerry就像中间人一样,Bob就被Jerry欺骗了。根据这个原理,制作了一款工具叫Arpspoof,安装和wireshark一样,下面是arpspoof的用法。
arspoof -i 网卡 -t 受害者ip 目标ip
网卡就是连入局域网的网卡,必须是同一局域网内的计算机才能攻击。
受害者ip就是你要攻击的对象,阻止它与目标ip的连接。
对于linux,一般是禁止ip转发的,即Jerry不能把Bob的话告诉Alice,如果要开启转发,执行echo 1 >/proc/sys/net/ipv4/ip_forward,禁止把1改成0即可
假设目标ip是192.168.3.52,网关是192.168.3.1,我的网卡是eth0,那么我欺骗的命令是

echo 1 >/proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 192.168.3.52 192.168.3.1 >/dev/null 2>&1 &
arpspoof -i eth0 -t 192.168.3.1 192.168.3.52 >/dev/null 2>&1 &

由于arpspoof产生大量Arp输出,这里禁用输出流和错误流并让它后台运行

3.攻击前的准备工作——侦查

使用命令ifconfig获取自己的网卡,找到有自己ip地址的那一段(不是127.0.0.1,是内网的地址),第一个单词就是网卡名,一般是ethxwlanx
一般来说,网关就是把自己ip最后一位改成1(ip在上一步操作中一起获得)
nmap获取对方的ip,这里需要对对方电脑较为熟悉,实在不行直接到对方电脑上去查
nmap -sV 192.168.3.*
192.168.3是自己ip的前三位,视实际情况而定,如果是10.xxx.xxx.xxx,那么用
nmap -sV 10.*.*.*
可能会等待一段时间,查询结束后会显示网段中存活主机,并显示MAC地址,有一些可以识别出网卡产商
根据提供的信息慢慢找,如果不行也可以用-O参数来判断系统
nmap -O ip

4.开始嗅探——wireshark的使用

如果你已经成功获取对方的ip并且成功的进行arp欺骗,那么就可以进行接下来的步骤了。
打开 wiresharkkali的位置如下图所示,可以用命令wireshark打开
wireshark如何对指定ip进行嗅探_第1张图片
Sniffing & Spoofing(嗅探与欺骗)中就有wireshark,界面大致如下
wireshark如何对指定ip进行嗅探_第2张图片
双击你的网卡名(我的是eth0),会进入如下界面(默认直接开始嗅探,所以会出现很多包)
wireshark如何对指定ip进行嗅探_第3张图片
No.是包的编号,Time是从开始抓包起的时间,Source是指发送者ipDestination就是接收者ipProtocol就是传输协议(例如arptcpudphttphttp2http2https),Length是指包的长度,Info就是一些相关的信息
点击Statistics-->Capture File Properties(统计–>抓包属性),可以查看抓包的统计数据
但是包这么多,我怎么找到我想要看的包呢?使用Filter
例如ip.addr == 192.168.3.52,就是保留192.168.3.52的包,它作为发送者或接受者均可
ip.src指发送者,ip.dst指接受者
单独的协议名控制协议类型,如tcphttp
使用andor进行逻辑运算,运算优先级为

优先级 运算 备注
1 () 小括号
2 . 从属运算
3 not 取非运算
4 ==,<,>,<=,>= 比较运算
5 and,or 逻辑运算(从左至右)

例如ip.addr == 192.168.3.52 and tcp就是保留192.168.3.52建立的tcp连接
ip.addr == 192.168.3.52 and (http or http2)就是192.168.3.52浏览的网页
如果你输入的Filter语法正确,输入框会呈绿色,否则呈红色
wireshark如何对指定ip进行嗅探_第4张图片
wireshark如何对指定ip进行嗅探_第5张图片
注意,请不要用localhost(报错)和127.0.0.1得不到任何包,所有ip地址都是内网通用的ip
抓到包并过滤后,中间一栏和下面一栏就是关于包的信息

你可能感兴趣的:(嗅探)