本文章仅供参考和学习!
欢迎交流~
目录
一、实验题目:网络嗅探实验
二、实验内容:
1.监听实验
2.Arp欺骗
3.基于Arp攻击下的欺骗与嗅探
三、环境准备:
1.攻击主机A: kali 虚拟机(192.168.112.130)
2.被攻击主机B:Windows10×64 虚拟机(IP:192.168.112.136)
3.网关:192.168.112.2
注:A和B需要在同一网段下,并且可以相互ping通
四、实验步骤:
1.监听实验
2.Arp欺骗
2.1 查看Kali的IP是否正确:
2.2 查看Windows 10的IP是否正确:
2.3 用nmap查看当前网段的活跃主机:
命令:nmap -sF 192.168.112.0/24
2.4 检查被攻击主机是否可以正常上网:
2.5 利用Arpspoof进行欺骗攻击(主机A作为网关主机欺骗):
2.6 被攻击主机B网络中断:
在主机B用arp -a查看一下是否欺骗成功
可以看到,网关和被攻击的mac地址相同,欺骗成功。
2.7 kali终端停止攻击后,再次查看主机B的arp表:
此时网关的mac地址已经恢复正常
3.基于Arp攻击下的欺骗与嗅探
3.1 linux的ip转发:
Linux默认不支持IP转发,因此需要通过修改配置文件的方法开启IP转发
命令:
cd /proc/sys/net/ipv4
ls
cat ip_forward
#显示结果为0
echo 1 > ip_forward
cat ip_forward
#显示结果为1,修改成功
3.2 对网关和目标主机B的欺骗:
使用arpspoof进行双向欺骗
命令:arpspoof -i eth0 -t 192.168.112.136 -r 192.168.112.2
3.3 利用driftnet进程监控:
重新打开一个命令终端,输入命令:driftnet -i eth0
跳出来的drift窗口会显示本机正在浏览的图片,如下图:
在主机B上浏览图片后:
3.4 使用ettercap工具获取密码:
3.4.1 打开新的终端,输入ettercap -G 启动工具
3.4.2 点击Sniff -> unified sniffing,选择要抓包的网卡,默认是自己的网卡eth0,点击确定
3.4.3 然后单击Hosts -> Scan for host,待扫描完成后点击Host list,此时可以看到ettercap-NG已经扫描的主机列表
3.4.4 选择攻击目标,点击windows server的ip地址,点击Add to Target 1 ,然后选择网关的ip地址,点击Add to Target 2
3.4.5 明确目标攻击方式:点击Mitm -> arp poisoning -> Sniff remote connections -> 确定
3.4.6 开始监听:start -> Start sniffing
3.4.7 工具就会抓取主机B的数据包和主机C返回的数据包,点击View--Connections可以看到所有截获的包,分析http post请求可以判断账号密码信息。
3.5 urlsnarf:获取受害者的http请求
命令:urlsnarf -i eth0
3.6 wireshark抓包:
在终端输入wireshark即可打开wireshark,选择eth0(默认)网卡即可开始抓包
五、实验总结:
1.关于Arp欺骗:
在ARP缓存表机制存在一个缺陷,就是当请求主机收到ARP应答包后,不会去验证自己是否向对方主机发送过ARP请求包,就直接把这个返回包中的IP地址与MAC地址的对应关系保存进ARP缓存表中,如果原有相同IP对应关系,原有的则会被替换。
2.防止Arp欺骗的方法:
(1)在主机绑定网关MAC与IP地址为静态(默认为动态),命令:arp -s 网关IP 网关MAC
(2)在网关绑定主机MAC与IP地址
(3)使用ARP防火墙