千锋教育网络安全零基础视频教程-黑客攻防/Web安全/渗透测试/代码审计/信息安

先学习arp断网是如何实现的
PC在一个局域网中,通信首先要有IP地址和mac地址,PC1在连接PC2时,会先查看自己的ARP缓存表,我们可以用arp-a
命令查看arp缓存表,缓存表里存着大量MAC地址和ip地址的映射,Pc1要访问PC2,会先查看缓存表是否有pc2对应的mac地址,如果没有,就发出一个广播包,发给交换机,交换机给每个端口发送广播包,PC2收到广播包后发出应答包“我是10.9.136.55”,发送给pc1,PC1会把这个ip,mac地址写入arp缓存表。
交换机也有一个端口和mac映射表,PC1要发送一个数据给PC2,会告诉交换机一个MAC地址,交换机通过查找端口号和MAC地址映射表,找到数据包要发送到的端口
正常情况下PC1发送给PC2的广播包其他机器是不会应答的,网关是互联网的出口,如果PC想要访问外网,还需要配置网关,通过route print和ipconfig命令都可以查看网关,网关也可以理解为1台PC,有他的ip和MAC地址,接下来就是介绍arpspoof了,本来PC1不能和网关通信,所以将网关的IP和mac地址映射到arp缓存表,PC1需要发送广播包询问谁是网关,而此时PC3说他是网关,如果PC3不对数据进行转发,就会造成ARP断网攻击,而arpspoof实现的就是这个效果
arpspoof -i eth0 -t 目标主机ip -r 网关地址
eth0为我的kali网卡,与目标主机在同一网段,查看受害者机器的网关ARP信息,发现网关MAC地址已经变为攻击者kali机器的MAC地址,ARP断网攻击成功,但是要注意的是,arp断网攻击一旦开始网络即会中断,因此黑客常使用arp欺骗攻击
arp欺骗攻击通过修改/proc/sys/net/ipv4/ip_forward参数,默认是0,不进行转发,进行ip流量转发,不会出现断网现象。修改命令为:
echo 1>/proc/sys//net/ipv4/ip_forward
这时候,可以利用driftnet等工具实现监控
如何防御arp断网攻击
1、静态ARP绑定(-s 表示静态 -d表示动态)
arp -s 192.168.201.2 00-50-56-fa-b0-42
arp -s 192.168.201.136 00-0C-29-6C-3F-27
arp -a 查看ARP缓存表(适用于WIN7系统)
netsh interface ipv4 show interfaces
我的虚拟机的上网网卡是本地连接,找到id
netsh -c "i i" add ne 11 网关 网关mac地址
netsh -c "i i" delete ne 11
2、使用ARP防火墙
3、使用可防御ARP攻击的核心交换机,绑定端口-MAC-IP