背景知识
本次嗅探试验所使用到的工具有两个,ettercap和driftnet。 ettercap是一款现有流行的网络抓包软件,他利用计算机在局域网内进行通信的ARP协议的缺陷进行攻击,在目标与服务器之间充当中间人,嗅探两者之间的数据流量,从中窃取用户的数据资料。
ettercap的介绍
ettercap有两种运行方式,UNIFIED和BRIDGED。UNIFIED的方式是以中间人方式嗅探,基本原理是同时欺骗主机A和B,将自己充当一个中间人的角色,数据在A和B之间传输时会通过C,C就可以对数据进行分析,从而完成嗅探。BRIDGED方式是在双网卡情况下,嗅探两块网卡之间的数据包。
ettercap的sniffing工作方式划分为五种:
1)IPBASED:在基于IP地址的sniffing方式下,ettercap将根据源IP-PORT和目的IP-PORT来捕获数据包;
2)MACBASED:在基于MAC地址的方式下,ettercap将根据源MAC和目的MAC来捕获数据包(在捕获通过网关的数据包时,该方式很有用);
3)ARPBASED:在基于Arp欺骗的方式下,ettercap利用Arp欺骗在交换局域网内监听两个主机之间的通信(全双工);
4)SMARTARP:在SMARTARP方式下,ettercap利用Arp欺骗,监听交换网上某台主机与所有已知的其他主机(存在于主机表中的主机)之间的通信(全双工);
5)PUBLICARP:在PUBLICARP 方式下,ettercap利用Arp欺骗,监听交换网上某台主机与所有其它主机之间的通信(半双工)。此方式以广播方式发送Arp响应,但是如果 ettercap已经拥有了完整的主机地址表(或在ettercap启动时已经对LAN上的主机进行了扫描),ettercap会自动选取 SMARTARP方式,而且Arp响应会发送给被监听主机之外的所有主机,以避免在Windows主机上出现IP地址冲突的消息。
在操作ettercap时,常使用-M参数,即选择中间人攻击模式,有如下几种攻击方式:
1)基于Arp毒化的中间人攻击:Arp毒化的原理可简单理解为伪造MAC地址与IP的对应关系,导致数据包由中间人截取再转手发出。Arp毒化有双向(remote)和单向(oneway)两种方式。双向方式将对两个目标的Arp缓存都进行毒化,对两者之间的通信进行监听。而单向方式只会监听从第一个目标到第二个目标的单向通信内容。一般会选择使用双向欺骗的方式来获取所有的数据包进行嗅探分析。
如:#ettercap -M arp:remote /192.168.1.102//
对应的含义是:表示对192.168.1.102的所有端口的通信进行嗅探,包括其发出的数据包和收到的数据包。
2)icmp欺骗:icmp欺骗即基于重定向(redirect)的路由欺骗技术。其基本原理是欺骗其他的主机,将自身伪装为最近的路由,因此其他主机会将数据包发送过来,然后作为中间人的攻击者再重新将其转发到真正的路由器上。于是我们便可以对这些数据包进行监听。当然,icmp欺骗不适用于交换机的环境,若本机在交换机的环境下则最好选择arp毒化的方式来进行攻击。icmp欺骗方式的参数是真实路由器的MAC和IP,参数形式为(MAC/IP)。
!
ettercap参数及常用操作
-l 显示可用网卡接口设备
-i 选择接口
-t 协议选择,tcp/udp/all,默认为all
-p 不进行毒化攻击,用于嗅探本地数据包
-L 载入过滤器文件
-V text 将数据包以文本形式显示在屏幕上
-L filename 把所有的数据包保存下来(保存后的文件只能用etterlog显示)
driftnet的介绍
driftnet是一款用于抓取指定接口数据流上面图片的软件,并且把嗅探到的图片显示在Linux下的一个窗口当中。
driftnet命令的使用语法:driftnet [options] [filter code]
主要参数:
-b 捕获到新的图片时发出嘟嘟声
-i interface 选择监听接口
-f file 读取一个指定pcap数据包中的图片
-p 不让所监听的接口使用混杂模式
-a 后台模式:将捕获的图片保存到目录中(不会显示在屏幕上)
-m number 指定保存图片数的数目
-d directory 指定保存图片的路径
-x prefix 定保存图片的前缀名
局域网断网
在终端输入命令先ping 出你要想断网的ip
fping --asg 192.168.4.1/24(我的)
然后 输入命令 arpspoof -i eth0 -t 192.168.4.159 192.168.4.4
192.168.4.159 是攻击的目标ip 192.168.4.4 是攻击者的网关
局域网获取图片
首先先打开一个终端 输入
makdir ls 创建一个文件 ,driftnet -i eth0 -b -a -d /root/ls 接绝对路径
然后另外开启一个终端输入 ettercap -i eth0 -Tq -M arp:remote /// ///
这是对局域网的所有ip进行嗅探