python:什么是ARP欺骗
断网攻击分为很多种,比如DOS,SYN泛洪,ARP欺骗等等。我以最有趣的ARP欺骗为例,简单介绍一下。
工具/原料
python与scapy
电脑
ARP欺骗介绍:
1、ARP欺骗——主机型欺骗。
2、主机型欺骗:在同一个网关下,欺骗者不断地向一个主机(图中PC 1)发送“我是网关”的ARP数据包,导致PC1抛弃了之前真丬涪斟享正的网关的MAC地址,转而相信欺骗者,将欺骗者发送的MAC设置为网关地址。自此,PC1想要向外界发送数据请求时,将所有请求都发给了欺骗者,无法从网关连接到外界网络,断网成功。
3、ARP欺骗——网关型欺骗。
4、网关蕞瞀洒疸型欺骗:在同一个网关下,欺骗者不断地向网关发送“我是PC1”的ARP数据包,过高的频率遮盖了真正的PC1 的ARP数据包,修改MAC缓存中PC 1的MAC地址为欺骗者的MAC地址,霸烹钟爷PC 1虽然可以发送给网关数据包,但是无法接收到回应,断网成功。
python库:scapy
1、python第三方库:scapyscapy是由python开发的网络监控工具,对于python有着天然的api,通过python接口编写一些代码,可以完成对手机的断网攻击。
python代码实现:
1、由于楫默礤鲼目前的路由器都具有较强的应对ARP攻击的防火墙,网关型欺骗基本无法实现,成功案例只有主机型欺骗。其实只要知道原理,代码仅需岑芑建浆寥寥几行。from scapy.all import *def Arpsoof(ip):srloop(ARP(psrc='网关IP,hwsrc="ff:ff:ff:ff:ff:ff",pdst=ip,op=2))Arpsoof('PC1的IP')#srloop:意为循环发送。#ff:ff:ff:ff:ff:ff通常代表default,无。
2、不断发送ARP数据包。
3、可以看到,手机虽然显示连接着wifi,但是却无法上网了。
4、也许奏效的防护方法:手机在wifi设置中将IP设置为静态IP,手机便会固定此时网关的MAC值,任你发送欺骗数据包,手机也不会更改(与不同型号品牌的手机有关)。