Mac使用WireShark和Ettercap抓同一局域网设备数据包

0 前言

因mac无法开启共享wifi热点,所以,mac使用wireshark抓手机的数据包比较麻烦需进行arp欺骗和中间人攻击之后,才能抓取手机数据包。

本文使用Ettercap进行arp欺骗和中间人攻击过程,主要参考同一局域网环境下的arp欺骗和中间人攻击(mac)

1 本机环境

macOS High Sierra 10.13.3

2 工具准备

WireShark

https://www.wireshark.org/#download

Ettercap

$ brew install ettercap –with-gtk+

(需科学上网,并且安装过程略慢,需耐心等待。另外,需要安装–with-gtk+版本,不然无法打开Ettercap GUI页面。)

Nmap(网络探测工具和安全/端口扫描器)

$ brew install nmap

gunzip (解压wireshark抓包内容的gzip部分)

wireshark-http-gunzip

3 操作步骤

3.1 使用nmap工具查看同一局域网环境下的个设备IP和名称

nmap -sP 192.168.18.0/24

(其中192.168.18为当前mac所在网段,可通过ifconfig查看mac所连网络ip地址,获取所在网段)

结果如下:

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第1张图片
nmap扫描结果

其中matrix.modouwifi.com是路由器,ip为 192.168.18.1deMBP.modouwifi.com是当前mac,ip为 192.168.18.245chuangmi-plug-m1是小米智能插座,ip为192.168.18.162MiNote3-xiaomishouji是小米note3手机(抓包对象),ip为192.168.18.218
(手机一直在使用网络,比如,看视频,才比较容易被nmap扫描到。写这篇文章的时候,一开始死活扫描不到手机ip,后来发现手机看视频的时候,就能扫到 = =)

3.2 使用Ettercap进行arp欺骗与回话劫持

使用以下命令启动Ettercap GUI

sudo ettercap -G

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第2张图片
Ettercap GUI 界面.png

嗅探无线网卡 ---> 单击第一个 Unfied sniffing...

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第3张图片
嗅探无线网卡1 .png

en0是mac的无线网卡,所连无线网和被抓包手机在同一局域网

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第4张图片
嗅探无线网卡2.png

遍历局域网内的设备列表

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第5张图片
遍历局域网内的设备列表1 .png
Mac使用WireShark和Ettercap抓同一局域网设备数据包_第6张图片
遍历局域网内的设备列表2.png

如果没有没有扫描到目标设备,通过Scan for hosts重新扫描

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第7张图片
重新扫描1.png

再次扫描,扫描到ip为192.168.18.218的目标设备,ip为192.168.18.1的路由器

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第8张图片
重新扫描2.png

将目标的设备ipAdd to Target 1,把网关加入Add to Target 2,启动arp欺骗

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第9张图片
目标设备 Add to Target 1

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第10张图片
网关 Add to Target 2

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第11张图片
启动arp欺骗1.png

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第12张图片
启动arp欺骗1.png

此时,被侵入的目标设备会认为我们是网关,而网关(路由器)会认为我们是被侵入的目标设备,我们扮演了一个中间人的角色。而Ettercap会自动将包转发给正确的目标,在目标看来我们仿佛并不存在。因为ARP的原理,欺骗的有效性并不能保证100%,大家可以多试几次。使用WireShark可以抓到包,即代表成功。

3.3 使用WireShark抓包
3.3.1 wireshark设置为混杂模式

开启混杂模式

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第13张图片
wireshark设置
Mac使用WireShark和Ettercap抓同一局域网设备数据包_第14张图片
开启混杂模式
3.3.2 开始抓包

抓包en0无线网卡

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第15张图片
选择抓包无线网卡

输入ip.src == 192.168.18.218过滤目标设备ip地址

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第16张图片
过滤目标设备ip地址.png

追踪TCP流

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第17张图片
追踪TCP流

因为部分抓到包的内容通过gzip压缩过,所以看到的数据部分是乱码,需要进行解压缩处理

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第18张图片
TCP流内容.png
3.4 使用gunzip解压wireshark数据包的gzip内容

选择原始数据将TCP抓包内容保存为本地文件test.zip

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第19张图片
保存抓包数据到本地1

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第20张图片
保存抓包数据到本地2

下载wireshark-http-gunzip 中的http-gunzip.rb ruby文件到本地

Mac使用WireShark和Ettercap抓同一局域网设备数据包_第21张图片
http-gunzip.rb

定位到 http-gunzip.rb ruby文件所在目录,输入 ruby http-gunzip.rb < dump 查看gzip压缩内容
Mac使用WireShark和Ettercap抓同一局域网设备数据包_第22张图片
解压gzip内容

4 总结

综上,整个流程为:

  • 使用nmap扫描同一局域网设备ip和名称,获取目标设备ip和服务器ip。
  • 使用Ettercap完成arp欺骗和中间人攻击。
  • 使用WireShark抓包。
  • 如果抓包到的数据有进行gzip压缩,使用gunzip进行解压缩。

5 号外

根据同一局域网环境下的arp欺骗和中间人攻击(mac) 内容,可以使用Driftnet自动抓取图片。(这个比较有意思 -> . ->)
但是,port官网已经没有Driftnet包了,所以需到Driftnet的 GitHub上,自己下载源码进行编译,如何编译可以参考MacOS10.12利用ettercap+driftnet实现arp嗅探。

参考

同一局域网环境下的arp欺骗和中间人攻击(mac)
wireshark如何扑捉无线局域网数据
MacOS10.12利用ettercap+driftnet实现arp嗅探

你可能感兴趣的:(Mac使用WireShark和Ettercap抓同一局域网设备数据包)